TheThingsNetwork / lorawan-stack

The Things Stack, an Open Source LoRaWAN Network Server
https://www.thethingsindustries.com/stack/
Apache License 2.0
990 stars 309 forks source link

Filter events in the live data view #7342

Open KrishnaIyer opened 1 month ago

KrishnaIyer commented 1 month ago

Summary

Filter events in the live data view. This replaces https://github.com/TheThingsNetwork/lorawan-stack/issues/2231

Current Situation

We have a Verbose stream option that filters out additional events such as storing uplinks (as.packages.storage.up.store).

Screenshot 2024-10-14 at 15 18 57

Why do we need this? Who uses it, and when?

A useful option would be to filter on specific event types based on the context. Users can use this to only look for certain events (ex: Join Requests) and this can be very useful for debugging.

The Live data panel of a gateway and application overview can potentially have high volume of events from multiple end devices. The Live data panel of individual end devices will have relatively fewer events since that view already gets a list of events filtered by the end device IDs.

Proposed Implementation

For the Live data panel of a gateway and an application, provide the following options to filter.

  1. Message based a. Join requests (*.join.*) b. Upstream data (*.up.*) c. Downstream data (*.down.*)
  2. End device based: Filter per end device identifier.

In the future we can also consider filtering over JoinEUI or Device Address but that requires parsing the Data field. Let's keep this simple for now.

Contributing

Validation

Code of Conduct