We have a lot of events that originate on instances of Ignition Edge, and we populate some of these with additional context into database tables. Right now we do this on the main gateway using scripts and tag change events, but in cases of disconnect between the edge and the main gateway, the events are not captured by the tag change events. There is an option to set MQTT engine to fully process the events as we backfill from sparkplug B, but for several reasons this is not a good option for us. Are there any other mechanism we can use to have an event sourced at the edge, with some form of delivery guarantee from edge to a central database? Like an SQL bridge module extension for capturing events in Edge instances, with store and forward?
You would have to roll your own cache in a persistent script variable, and forward with system.util.sendRequest()
to the central gateway. Non-trivial, but you could use this topic for inspiration: