Just created a very simple
AWS integration that collect Greengrass
Nucleus telemetry data as
CloudWatch metrics.
This integration will deploy a Lambda function connect to IoT Core
MQTT topic where
NucleusEmitter component send telemetry data:
{
"mqttTopic": "greengrass/MyDeviceName",
"telemetryPublishIntervalMs": 300000
}
The deployed
Lambda function put metrics data to CloudWatch using
AWS NodeJS SDK:
cloudWatch.putMetricData({
Namespace: METRIC_NAMESPACE,
MetricData: [{
MetricName: event.N,
Unit: event.U,
Timestamp: event.TS / 1000,
Dimensions: [{
Name: 'CoreDevice',
Value: CORE_DEVICE
}],
Value: event.V
}]
})
Once this integration is installed it will be possible to add metrics widgets into a
dashboard and/or
creating alarms in order to monitor
Greengrass Core devices health.
Repository:
daaru00/greengrass-nucleus-telemetry-data-collector