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 collection of telemetry data from multiple devices and the storage and analysis of the data. You can also create applications 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 AWS public cloud integration to discover and collect metrics against the AWS service.
External reference
Setup
To set up the 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.
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.
Supported metrics
IOT job metrics
| OpsRamp Metric | AWS Metric | Metric Display Name | Unit | Aggregation Type | Description |
|---|---|---|---|---|---|
| aws_iot_CanceledJobExecutionCount | CanceledJobExecutionCount | Canceled Job Execution Count | Count | Average | The number of job executions whose status has changed to CANCELED within a time period that is determined by CloudWatch. |
| aws_iot_CanceledJobExecutionTotalCount | CanceledJobExecutionTotalCount | Canceled Job Execution Total Count | Count | Average | The total number of job executions whose status is CANCELED for the given job. |
| aws_iot_ClientErrorCount | ClientErrorCount | Client Error Count | Count | Average | The number of client errors generated while executing the job. |
| aws_iot_FailedJobExecutionCount | FailedJobExecutionCount | Failed Job Execution Count | Count | Average | The number of job executions whose status has changed to FAILED within a time period that is determined by CloudWatch. |
| aws_iot_FailedJobExecutionTotalCount | FailedJobExecutionTotalCount | Failed Job Execution Total Count | Count | Average | The total number of job executions whose status is FAILED for the given job. |
| aws_iot_InProgressJobExecutionCount | InProgressJobExecutionCount | In Progress Job Execution Count | Count | Average | The number of job executions whose status has changed to IN_PROGRESS within a time period that is determined by CloudWatch. |
| aws_iot_InProgressJobExecutionTotalCount | InProgressJobExecutionTotalCount | In Progress Job Execution Total Count | Count | Average | The total number of job executions whose status is IN_PROGRESS for the given job. |
| aws_iot_RejectedJobExecutionTotalCount | RejectedJobExecutionTotalCount | Rejected Job Execution Total Count | Count | Average | The total number of job executions whose status is REJECTED for the given job. |
| aws_iot_RemovedJobExecutionTotalCount | RemovedJobExecutionTotalCount | Removed Job Execution Total Count | Count | Average | The total number of job executions whose status is REMOVED for the given job. |
| aws_iot_QueuedJobExecutionCount | QueuedJobExecutionCount | Queued Job Execution Count | Count | Average | The number of job executions whose status has changed to QUEUED within a time period that is determined by CloudWatch. |
| aws_iot_QueuedJobExecutionTotalCount | QueuedJobExecutionTotalCount | Queued Job Execution Total Count | Count | Average | The total number of job executions whose status is QUEUED for the given job. |
| aws_iot_RejectedJobExecutionCount | RejectedJobExecutionCount | Rejected Job Execution Count | Count | Average | The number of job executions whose status has changed to REJECTED within a time period that is determined by CloudWatch. |
| aws_iot_RemovedJobExecutionCount | RemovedJobExecutionCount | Removed Job Execution Count | Count | Average | The number of job executions whose status has changed to REMOVED within a time period that is determined by CloudWatch. |
| aws_iot_ServerErrorCount | ServerErrorCount | Server Error Count | Count | Average | The number of server errors generated while executing the job. |
| aws_iot_SuccededJobExecutionCount | SuccededJobExecutionCount | Succeded Job Execution Count | Count | Average | The number of job executions whose status has changed to SUCCESS within a time period that is determined by CloudWatch. |
| aws_iot_SuccededJobExecutionTotalCount | SuccededJobExecutionTotalCount | Succeded Job Execution Total Count | Count | Average | The total number of job executions whose status is SUCCESS for the given job. |
IOT rule metrics
| OpsRamp Metric | AWS Metric | Metric Display Name | Unit | Aggregation Type | Description |
|---|---|---|---|---|---|
| aws_iot_ParseError | ParseError | Parse Error | Count | Average | The number of JSON parse errors that occurred in messages published on a topic on which a rule is listening. |
| aws_iot_RuleExecutionThrottled | RuleExecutionThrottled | Rule Execution Throttled | Count | Average | The number of messages throttled by the rules engine because of malicious behavior or because the number of messages exceeds the rules engine's throttle limit. |
| aws_iot_RuleNotFound | RuleNotFound | Rule Not Found | None | Average | The rule to be triggered could not be found. |
| aws_iot_RulesExecuted | RulesExecuted | Rules Executed | Count | Average | The number of AWS IoT rules executed. |
| aws_iot_TopicMatch | TopicMatch | Topic Match | Count | Average | The number of incoming messages published on a topic on which a rule is listening. |
Note: You can view below metrics on cloud provider and not on IOT resources.
| OpsRamp Metric | AWS Metric | Metric Display Name | Unit | Aggregation Type | Description |
|---|---|---|---|---|---|
| aws_iot_PublishIn_Success | PublishIn.Success | Publish in Success | None | AVERAGE | The number of publish requests successfully processed by the message broker. |
| aws_iot_PublishOut_Success | PublishOut.Success | Publish Out Success | None | AVERAGE | The number of publish requests successfully made by the message broker. |
| aws_iot_Subscribe_Success | Subscribe.Success | Subscribe Success | None | AVERAGE | The number of subscribe requests that were successfully processed by the message broker. |
| aws_iot_Ping_Success | Ping.Success | Ping Success | None | AVERAGE | The number of ping messages received by the message broker. |
| aws_iot_Connect_Success | Connect.Success | Connect Success | None | AVERAGE | The number of successful connections to the message broker. |
| aws_iot_GetThingShadow_Accepted | GetThingShadow.Accepted | Get Thing Shadow Accepted | None | AVERAGE | The number of GetThingShadow requests processed successfully. |
| aws_iot_UpdateThingShadow_Accepted | UpdateThingShadow.Accepted | Update Thing Shadow Accepted | None | AVERAGE | The number of UpdateThingShadow requests processed successfully. |
| aws_iot_DeleteThingShadow_Accepted | DeleteThingShadow.Accepted | Delete ThingShadow Accepted | None | AVERAGE | The number of DeleteThingShadow requests processed successfully. |
| aws_iot_RulesExecuted | RulesExecuted | Rules Executed | None | AVERAGE | The number of AWS IoT rules executed. |