AWS IoT provides secure, bi-directional communication between internet-connected devices, such as:

  • Sensors
  • Actuators
  • Embedded micro-controllers
  • Smart appliances
  • AWS Cloud

This enables the collect of telemetry data from multiple devices and the storage and analyzation of the data. You can also create applications can be created to enable user to control these devices from their phones or tablets.

Rules engine

The Rules engine provides message processing and integration with other AWS services. A SQL-based language is available to:

  • Select data from message payloads.
  • Process and send the data to other services (for example, Amazon S3, Amazon DynamoDB, and AWS Lambda).

The message broker can be used to republish messages to other subscribers.

Jobs service

The Jobs service defines a set of remote operations that are sent to and executed on one or more devices connected to AWS IoT.

For example, you can define a job that instructs a set of devices to download and install application or firmware updates, reboot, rotate certificates, or do remote troubleshooting operations.

To create a job, specify a description of the remote operations to be performed and a list of targets that should do them. The targets can be individual devices, groups or both.

Use the OpsRamp AWS public cloud integration to discover and collect metrics against the AWS service.

Setup

To set up the OpsRamp AWS integration and discover the AWS service, go to AWS Integration Discovery Profile and select IOT Rule for Rule and IOT JOB for Job services.

Metrics

IOT job metrics

OpsRamp MetricMetric Display NameUnitAggregation Type
aws_iot_ServerError

Number of server errors generated while executing the job.
Server ErrorNoneAverage
aws_iot_ClientError

Number of client errors generated while executing the job.
Client ErrorNoneAverage
aws_iot_QueuedJobExecutionTotalCount

Total number of job executions whose status is QUEUED for the given job.
Queued Job Execution Total CountNoneAverage
aws_iot_InProgressJobExecutionTotalCount

Total number of job executions whose status is IN_PROGRESS for the given job.
In Progress Job Execution Total CountNoneAverage
aws_iot_FailedJobExecutionTotalCount

Total number of job executions whose status is FAILED for the given job.
Failed Job Execution Total CountNoneAverage
aws_iot_SuccededJobExecutionTotalCount

Total number of job executions whose status is SUCCESS for the given job.
Succeded Job Execution Total CountNoneAverage
aws_iot_CanceledJobExecutionTotalCount

Total number of job executions whose status is CANCELED for the given job.
Canceled Job Execution Total CountNoneAverage
aws_iot_RejectedJobExecutionTotalCount

Total number of job executions whose status is REJECTED for the given job.
Rejected Job Execution Total CountNoneAverage
aws_iot_RemovedJobExecutionTotalCount

Total number of job executions whose status is REMOVED for the given job.
Removed Job Execution Total CountNoneAverage
aws_iot_QueuedJobExecutionCount

Number of job executions whose status has changed to QUEUED within a time period that is determined by CloudWatch.
Queued Job Execution CountNoneAverage
aws_iot_InProgressJobExecutionCount

Number of job executions whose status has changed to IN_PROGRESS within a time period that is determined by CloudWatch.
In Progress Job Execution CountNoneAverage
aws_iot_FailedJobExecutionCount

Number of job executions whose status has changed to FAILED within a time period that is determined by CloudWatch.
Failed JobExecution CountNoneAverage
aws_iot_SuccededJobExecutionCount

Number of job executions whose status has changed to SUCCESS within a time period that is determined by CloudWatch.
Succeded Job Execution CountNoneAverage
aws_iot_CanceledJobExecutionCount

Number of job executions whose status has changed to CANCELED within a time period that is determined by CloudWatch.
Canceled Job Execution CountNoneAverage
aws_iot_RejectedJobExecutionCount

Number of job executions whose status has changed to REJECTED within a time period that is determined by CloudWatch.
Rejected Job Execution CountNoneAverage
aws_iot_RemovedJobExecutionCount

Number of job executions whose status has changed to REMOVED within a time period that is determined by CloudWatch.
Removed Job Execution CountNoneAverage

IOT rule metrics

OpsRamp MetricMetric Display NameUnitAggregation Type
aws_iot_TopicMatch

Number of incoming messages published on a topic on which a rule is listening.
Topic MatchNoneAverage
aws_iot_ParseError

Number of JSON parse errors that occurred in messages published on a topic on which a rule is listening.
Parse ErrorNoneAverage
aws_iot_RuleNotFound

Number of JSON parse errors that occurred in messages published on a topic on which a rule is listening.
Rule Not FoundNoneAverage
aws_iot_RuleMessageThrottled

Number of messages throttled by the rules engine because of malicious behavior or because Number of messages exceeds the rules engines throttle limit.
Rule Message ThrottledNoneAverage

Event support

CloudTrail event support

  • Supported (Rule: CreateTopicRule, DeleteTopicRule and Job: CreateJob, DeleteJob)
  • Configurable in OpsRamp AWS Integration Discovery Profile.

CloudWatch alarm support

  • Supported (Rule and Job)
  • Configurable in OpsRamp AWS Integration Discovery Profile.

External reference