Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Q: Why am I seeing "Connection Lost: Connection lost, attempting to reconnect" errors coming from the GoogleMqttIngestService in my Ignition logs every ~15 minutes?

Example:

GoogleMqttIngestService         14May2019 13:08:01              Connection Lost: Connection lost, attempting to reconnect

No Format
INFO   | jvm 1    | 2019/02/06 00:30:33 | E [c.c.i.g.c.GoogleMqttIngestService] [00:30:33]: Connection Lost: Connection lost, attempting to reconnect
INFO   | jvm 1    | 2019/02/06 00:30:33 | org.eclipse.paho.client.mqttv3.MqttException: Connection

...

 lost
INFO   | jvm 1    | 2019/02/06 00:30:33 |     at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:164)

...


INFO   | jvm 1    | 2019/02/06 00:30:33 |     at java.lang.Thread.run(Thread.java:748)

...


INFO   | jvm 1    | 2019/02/06 00:30:33 | Caused by: java.io.EOFException:

...

 null
INFO   | jvm 1    | 2019/02/06 00:30:33 |     at java.io.DataInputStream.readByte(DataInputStream.java:267)

...


INFO   | jvm 1    | 2019/02/06 00:30:33 |     at org.eclipse.paho.client.mqttv3.internal.wire.MqttInputStream.readMqttWireMessage(MqttInputStream.java:92)

...


INFO   | jvm 1    | 2019/02/06 00:30:33 |     at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:116)

...


INFO   | jvm 1    | 2019/02/06 00:30:33 |     ... 1 common frames omitted
  • A: Google automatically closes our injector connection after 15 minutes. This is expected behavior. We automatically reestablish the connection to the Google Cloud and resume pushing messages. 

...

  • Q: What do each of the MQTT Modules do in simple terms?
  • A: The MQTT modules for Ignition each have very specific functions.  The very high level overview of each is listed below.  For more detailed information see this page.
    • MQTT Distributor - A MQTT v3.1.1 compliant MQTT Server.
    • MQTT Engine - A module which acts as a MQTT to Ignition Tag Bridge.  This module listens for and captures incoming MQTT messages and creates/updates Ignition tags based on those messages.  In addition it listens for tag writes in Ignition and converts those to MQTT messages to send/update data and I/O on the remote MQTT devices.  This module can be thought of as a tool to receive and visualize MQTT data in Ignition.
    • MQTT Transmission - An Ignition Tag to MQTT Bridge.  This module listens for tag change events in Ignition and converts those to outgoing Sparkplug MQTT messages.  In addition, it listens for incoming MQTT messages and updates tag values based on those incoming messages.  This module can be thought of as a tool to MQTT enable Ignition Tag providers and push that data to an MQTT Server and MQTT Engine.

...