AWS EC2
Overview
Amazon EC2 (Elastic Compute Cloud) is a web service provided by Amazon Web Services (AWS) that enables organizations to easily provision and manage virtual servers in the cloud. With EC2, developers and businesses can quickly scale compute resources based on demand and only pay for the capacity they use.

Prerequisites
You can check the list of prerequisites required for AWS EC2 here. These are the same for any other AWS service that you need to monitor using AIOps. Move to the section Adding AWS resources for Monitoring on the above link to view the prerequisites for AWS resource monitoring.
List of Supported KPIs
| Metrics | Description | Type |
|---|---|---|
| aws.ec2.status.check.failed | 1 if one of the status checks failed | Count |
| aws.ec2.status.check.failed.instance | 0 if the instance has passed the EC2 instance status check. | Count |
| aws.ec2.network.packets | Total Number of bytes received on all network interfaces by the instance. | Bytes |
| aws.ec2.status.check.failed.system | 0 if the instance has passed the EC2 system status check. | Count |
| aws.ec2.cpu.percent | Average percentage of allocated EC2 compute units that are currently in use on the instance. | Average |
| aws.ec2.cpu.credit.usage | Number of CPU credits consumed. | Count |
| aws.ec2.cpu.surplus.credit.balance | The number of surplus credits that have been spent by an unlimited instance when its CPUCreditBalance value is zero. | Count |
| aws.ec2.cpu.surplus.credit.charged | The number of spent surplus credits that are not paid down by earned CPU credits, and which thus incur an additional charge. | Count |
| aws.ec2.cpu.credit.balance | Number of CPU credits that an instance has accumulated. | Average |
| aws.ec2.disk.io.read.ops.per.sec | Completed read operations from all ephemeral disks available to the instance. | Operation |
| aws.ec2.disk.io.write.ops.per.sec | Completed write operations to all ephemeral disks available to the instance. | Operation |
| aws.ec2.disk.io.read.bytes.per.sec | Bytes read from all ephemeral disks available to the instance. | Bytes |
| aws.ec2.disk.io.write.bytes.per.sec | Bytes written to all ephemeral disks available to the instance. | Bytes |
| aws.ec2.network.in.bytes.per.sec | Average number of bytes received on all network interfaces by the instance. | Average |
| aws.ec2.network.out.bytes.per.sec | Average number of bytes sent out on all network interfaces by the instance. | Average |
| aws.ec2.network.in.packets | Number of packets received on all network interfaces by the instance | Count |
| aws.ec2.network.out.packets | Number of packets sent out on all network interfaces by the instance | Count |
EBS Volumes
| Metric | Description | Type |
|---|---|---|
| aws.ec2.volume | Identifier of an EBS volume attached to the instance. | String |
| aws.ec2.volume.id | Unique ID of the EBS volume. | String |
| aws.ec2.volume.state | Current state of the EBS volume. | String |
| aws.ec2.volume.type | EBS volume type, for example gp3, io2, or st1. | String |
| aws.ec2.volume.capacity.bytes | Total storage capacity of the EBS volume. | Bytes |
| aws.ec2.volume.iops | Provisioned IOPS for the EBS volume. | Count/sec |
| aws.ec2.volume.bytes.per.seconds | Provisioned throughput for the EBS volume. | Bytes/sec |
| aws.ec2.volume.snapshot.id | ID of the snapshot from which this volume was created. | String |
| aws.ec2.volume.availability.zone | Availability zone in which the volume resides. | String |
| aws.ec2.volume.creation.time | Timestamp when the EBS volume was created. | Timestamp |
| aws.ec2.volume.read.latency.ms | Average read latency of the EBS volume in milliseconds. | ms |
| aws.ec2.volume.write.latency.ms | Average write latency of the EBS volume in milliseconds. | ms |
| aws.ec2.volume.queue.length | Number of I/O requests waiting to be processed by the volume. | Count |
| aws.ec2.volume.read.bytes.per.sec | Read throughput of the EBS volume. | Bytes/sec |
| aws.ec2.volume.write.bytes.per.sec | Write throughput of the EBS volume. | Bytes/sec |
| aws.ec2.volume.read.ops.per.sec | Read I/O operations per second on the EBS volume. | Count/sec |
| aws.ec2.volume.write.ops.per.sec | Write I/O operations per second on the EBS volume. | Count/sec |
| aws.ec2.volume.burst.balance | Remaining burst balance percentage for burstable EBS volumes. | Percent |
| aws.ec2.volume.read.bytes | Total bytes read from the EBS volume. | Bytes |
| aws.ec2.volume.write.bytes | Total bytes written to the EBS volume. | Bytes |
| aws.ec2.volume.idle.time.seconds | Total seconds the EBS volume was idle during the measurement period. | Seconds |
VPC
| Metric | Description | Type |
|---|---|---|
| aws.ec2.vpc | Identifier of the VPC associated with the instance. | String |
| aws.ec2.vpc.id | Unique ID of the VPC. | String |
| aws.ec2.vpc.state | Current state of the VPC. | String |
| aws.ec2.vpc.ipv4.cidr | IPv4 CIDR block assigned to the VPC. | String |
| aws.ec2.vpc.ipv6.cidr | IPv6 CIDR block assigned to the VPC. | String |
| aws.ec2.vpc.default | Indicates whether this is the default VPC for the account. | Boolean |
Subnets
| Metric | Description | Type |
|---|---|---|
| aws.ec2.subnet | Identifier of the subnet. | String |
| aws.ec2.subnet.id | Unique ID of the subnet. | String |
| aws.ec2.subnet.state | Current state of the subnet. | String |
| aws.ec2.subnet.vpc.id | ID of the VPC this subnet belongs to. | String |
| aws.ec2.subnet.ipv4.cidr | IPv4 CIDR block assigned to the subnet. | String |
| aws.ec2.subnet.availability.zone | Availability zone in which the subnet resides. | String |
| aws.ec2.subnet.route.table | ID of the route table associated with the subnet. | String |
| aws.ec2.subnet.network.acl.id | ID of the network ACL associated with the subnet. | String |
Route Tables
| Metric | Description | Type |
|---|---|---|
| aws.ec2.route.table | Identifier of the route table. | String |
| aws.ec2.route.table.id | Unique ID of the route table. | String |
| aws.ec2.route.table.vpc.id | ID of the VPC this route table belongs to. | String |
| aws.ec2.route.table.main | Indicates whether this is the main route table for the VPC. | Boolean |
| aws.ec2.route.table.subnet.associations | Number of subnets explicitly associated with this route table. | Count |
| aws.ec2.route.table.edge.associations | Number of edge associations for this route table. | Count |
Internet Gateways
| Metric | Description | Type |
|---|---|---|
| aws.ec2.internet.gateway | Identifier of the internet gateway. | String |
| aws.ec2.internet.gateway.id | Unique ID of the internet gateway. | String |
| aws.ec2.internet.gateway.state | Current attachment state of the internet gateway. | String |
| aws.ec2.internet.gateway.vpc.id | ID of the VPC to which this internet gateway is attached. | String |
NAT Gateways
| Metric | Description | Type |
|---|---|---|
| aws.ec2.nat.gateway | Identifier of the NAT gateway. | String |
| aws.ec2.nat.gateway.id | Unique ID of the NAT gateway. | String |
| aws.ec2.nat.gateway.state | Current state of the NAT gateway. | String |
| aws.ec2.nat.gateway.connectivity.type | Connectivity type of the NAT gateway — public or private. | String |
| aws.ec2.nat.gateway.route.table.id | ID of the route table associated with the NAT gateway. | String |
| aws.ec2.nat.gateway.availability.zone | Availability zone in which the NAT gateway resides. | String |
| aws.ec2.nat.gateway.associated.public.ipv4.addresses | Public IPv4 addresses associated with the NAT gateway. | String |
| aws.ec2.nat.gateway.private.ipv4.address | Private IPv4 address assigned to the NAT gateway. | String |
Security Groups
| Metric | Description | Type |
|---|---|---|
| aws.ec2.security.group | Identifier of the security group. | String |
| aws.ec2.security.group.id | Unique ID of the security group. | String |
| aws.ec2.security.group.vpc.id | ID of the VPC this security group belongs to. | String |
| aws.ec2.security.group.description | Description of the security group. | String |
| aws.ec2.security.group.inbound.rules | Number of inbound rules defined in this security group. | Count |
| aws.ec2.security.group.outbound.rules | Number of outbound rules defined in this security group. | Count |