Logging
Log handlers
In order to enable logging, application needs to instantiate at least one log handler. If necessary, several different log handlers can be instantiated at the same time.
// EXAMPLE - enabling multiple log handlers
SerialLogHandler logHandler1;
Serial1LogHandler logHandler2(57600); // Baud rate
void setup() {
Log.info("This is info message"); // Processed by all handlers
}
void loop() {
}
The library provides the following log handlers:
SerialLogHandler
- Additional community-supported log handlers can be found further below.
This handler uses primary serial over USB interface for the logging output (Serial).
SerialLogHandler(LogLevel level, const Filters &filters)
Parameters:
- level : default logging level (default value is
LOG_LEVEL_INFO
) - filters : category filters (not specified by default)
Serial1LogHandler
This handler uses the device's TX and RX pins for the logging output (Serial1).
Serial1LogHandler(LogLevel level, const Filters &filters)
Serial1LogHandler(int baud, LogLevel level, const Filters &filters)
Parameters:
- level : default logging level (default value is
LOG_LEVEL_INFO
) - filters : category filters (not specified by default)
- baud : baud rate (default value is 9600)
Community log handlers
The log handlers below are written by the community and are not considered "Official" Particle-supported log handlers. If you have any issues with them please raise an issue in the forums or, ideally, in the online repo for the handler.
- Bluetooth LE (BLE) Logging
- RemoteLogRK (syslog/Papertrail, event, multicast UDP, TCP server)
- Papertrail Log Handler
- Web Log Handler