What is Spotflow?

Introducing the observability platform for embedded devices

Spotflow is an observability platform designed specifically for embedded devices. It provides comprehensive support for log collection and analysis with first-class integration for Zephyr RTOS and Nordic nRF Connect SDK. We strive to provide an all-in-one observability solution for embedded devices. Visit our roadmap to see what we are working on next.

Components

Devices send telemetry to Spotflow MQTT broker. The telemetry is stored in a database and analysed so it can be later viewed in the web app.

Spotflow consists of two main components:

  • Device Module: A lightweight library that you can integrate into your Zephyr or Nordic nRF Connect SDK device firmware. It automatically collects logs and core dumps and sends them to Spotflow's telemetry backend.
  • Cloud Platform: System that receives, processes, and stores telemetry data from your devices. It provides a web interface for monitoring and analyzing your device fleet's behavior.
    • MQTT Broker: A message broker that receives telemetry data from your devices.
    • Event Storage: A storage system build around a highly optimized columnar data store.
    • Event Processors: A set of services that extract useful information from the telemetry data.
    • Web App: A web interface that allows you to view and analyze the events collected from your embedded devices.
Log detail.
All telemetry from the devices can be easily queried in the web app.

Why choose Spotflow?

We are building Spotflow with the goal of minimal friction for setting up while providing deep insights into your embedded devices. To name a few of the key features:

  • Minimal setup: Integrating your device with Spotflow requires just a few lines of code. Then our device module will automatically collect all the necessary telemetry.
  • Works when internet connection is not available: Our device module buffers logs within volatile memory, ensuring that logs are collected even when the device is offline. Once the device is back online, it will automatically send the buffered logs to Spotflow.
  • Optimized transport format: We use a custom transport format based on CBOR. This format is designed to have minimal overhead, ensuring that logs are transmitted efficiently over the network.
  • Fine-tunable to work on resource-constrained devices: You can configure the sizes of the log buffers, allowing you to optimize memory usage based on your device's capabilities.
  • Rich querying capabilities: Our web interface provides powerful querying, allowing you to filter and search logs based on their contents and metadata like device id, timestamp, and more.

Supported platforms

Zephyr, nRF SDK and MQTT integration to Spotflow diagram.

Spotflow currently aims to provide best-in-class experience for Zephyr RTOS and Nordic nRF Connect SDK. With these platforms, the integration is as simple as adding a few lines of code to your device's firmware. Then you can use the standard logging macros to log messages, which will be automatically collected and sent to Spotflow.

Other devices can be integrated using the MQTT protocol. This approach provides the biggest flexibility, allowing you to send logs from any device that supports MQTT.

Learn how to connect your device

See the quickstart guides below to learn how to connect your specific device to Spotflow.

How is this guide?