This project is part of the Jumper Insights framework. Visit https://www.jumper.io/insights/ for more information.
Jumper µLogger is a lightweight and extensible logging and analytics tool designed with embedded development in mind, with a tiny footprint.
Currently we support nRF52 logging with a GATT service out of the box. Samples and further documentation available here.
µLogger is made for logging in embedded software, RTOS or bare-metal firmware. µLogger should be used for logging structured data such as battery level, radio events, interrupts, etc. µLogger should not be used for logging arbitrary data such as customized strings.
Event types and data structures can be easily defined in the "ulogger_events.h" file. Here is an example:
#define ULOGGER_BATTERY_EVENT 3
typedef struct {
uint8_t level;
} battery_state_event_data_t;
-
Define your events in the "ulogger_events.h" file (Check it out for examples)
-
API for logging events:
uLoggerErrorCode ulogger_log (void *ulogger, LogLevel level, EventType event_type, void *log_data, size_t data_length)
-
example:
-
You can log simple events with no data:
ULOGGER_LOG(&ulogger, ULOGGER_INFO, DEVICE_STARTED_EVENT);
-
Or you can log more complex events such as:
battery_level.level = 91; ulogger_log(&ulogger, ULOGGER_INFO, ULOGGER_BATTERY_EVENT, &battery_level, 1);
-
Check out our porting guide
Feel free to open issues and send us your pull requests.
We are happy to help! Feel free to contact us about any issue and give us your feedback at [email protected]