Differentiating Messages from aws.greengrass.telemetry.NucleusEmitter in a multi-core deployment

0

We have multiple greengrass core devices that each have their own deploment. In each deployment, the 'aws.greengrass.telemetry.NucleusEmitter' is configured as follows: { "reset": [], "merge": { "pubSubPublish": "false", "mqttTopic": "<IOT-THING-NAME>", "telemetryPublishIntervalMs": <interval> } } .

This allows us to distinguish between the different MQTT messages returned by the edge devices as they each arrive on a different topic. If we were to place all gg cores under the same deployment, is there a way of distinguishing between the messages that will be published on that topic ? Our requirement is to identify individual gg core devices that have memory/component issues, using the 'aws.greengrass.telemetry.NucleusEmitter' component, while having all devices under one deployment.

preguntada hace 2 años329 visualizaciones
2 Respuestas
1
Respuesta aceptada

Nucleus 2.6 will support interpolation in component configuration (currently it is only supported in the component recipe Lifecycle section). That will enable you to use the {iot:thingName} variable in the mqttTopic config. Unfortunately, this hasn't been released yet and I can't share a release date. But once that happens, this will definitely be the easiest way.

https://docs.aws.amazon.com/greengrass/v2/developerguide/component-recipe-reference.html#recipe-variables

In the interim, you can either create individual Thing deployments containing only the aws.greengrass.telemetry.NucleusEmitter component. Or, you can write your own custom bridge component that forwards messages from $local/greengrass/telemetry to an MQTT topic of your choice. This component can read Nucleus ThingName information from environment variables.

AWS
respondido hace 2 años
profile picture
EXPERTO
revisado hace 4 días
0

This does not appear to be working yet as far as I can tell. I have a deployment that includes the NucleusEmitter component, as well as Nucleus 2.6.0. I have the configuration for mqttTopic set to device/{iot:ThingName}/telemetry. However using the MQTT test client subscribed to device/+/#, I can see that the thing name is not being interpolated.

respondido hace 2 años

No has iniciado sesión. Iniciar sesión para publicar una respuesta.

Una buena respuesta responde claramente a la pregunta, proporciona comentarios constructivos y fomenta el crecimiento profesional en la persona que hace la pregunta.

Pautas para responder preguntas