Amazon ECS Container Insights metrics - Amazon CloudWatch

Amazon ECS Container Insights metrics

The following table lists the metrics and dimensions that Container Insights collects for Amazon ECS. These metrics are in the ECS/ContainerInsights namespace. For more information, see Metrics.

If you do not see any Container Insights metrics in your console, be sure that you have completed the setup of Container Insights. Metrics do not appear before Container Insights has been set up completely. For more information, see Setting up Container Insights.

The following metrics are available when you complete the steps in Setting up Container Insights on Amazon ECS.

Metric name Dimensions Description

ContainerInstanceCount

ClusterName

The number of EC2 instances running the Amazon ECS agent that are registered with a cluster.

This metric is collected only for container instances that are running Amazon ECS tasks in the cluster. It is not collected for empty container instances that do not have any Amazon ECS tasks.

Unit: Count

CpuUtilized

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The CPU units used by tasks in the resource that is specified by the dimension set that you're using.

This metric is collected only for tasks that have a defined CPU reservation in their task definition.

Unit: None

CpuReserved

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The CPU units reserved by tasks in the resource that is specified by the dimension set that you're using.

This metric is collected only for tasks that have a defined CPU reservation in their task definition.

Unit: None

DeploymentCount

ServiceName, ClusterName

The number of deployments in an Amazon ECS service.

Unit: Count

DesiredTaskCount

ServiceName, ClusterName

The desired number of tasks for an Amazon ECS service.

Unit: Count

EBSFilesystemSize

VolumeName, TaskDefinitionFamily, ClusterName

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

The total amount, in gigabytes (GB), of Amazon EBS filesystem storage that is allocated to the resources specified by the dimensions you're using.

This metric is only available for tasks that run on Amazon ECS infrastructure running on Fargate using platform version 1.4.0 or Amazon EC2 instances using container agent version 1.79.0 or later.

Unit: Gigabytes (GB)

EBSFilesystemUtilized

VolumeName, TaskDefinitionFamily, ClusterName

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

The total amount, in gigabytes (GB), of Amazon EBS filesystem storage that is being used by the resources specified by the dimensions that you're using.

This metric is only available for tasks that run on Amazon ECS infrastructure running on Fargate using platform version 1.4.0 or Amazon EC2 instances using container agent version 1.79.0 or later.

For tasks run on Fargate, Fargate reserves space on the disk that is only used by Fargate. There is no cost associated with the space Fargate uses, but you will see this additional storage using tools like df.

Unit: Gigabytes (GB)

EphemeralStorageReserved 1

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The number of bytes reserved from ephemeral storage in the resource that is specified by the dimensions that you're using. Ephemeral storage is used for the container root filesystem and any bind mount host volumes defined in the container image and task definition. The amount of ephemeral storage can’t be changed in a running task.

This metric is only available for tasks that run on Fargate Linux platform version 1.4.0 or later.

Unit: Gigabytes (GB)

EphemeralStorageUtilized 1

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The number of bytes used from ephemeral storage in the resource that is specified by the dimensions that you're using. Ephemeral storage is used for the container root filesystem and any bind mount host volumes defined in the container image and task definition. The amount of ephemeral storage can’t be changed in a running task.

This metric is only available for tasks that run on Fargate Linux platform version 1.4.0 or later.

Unit: Gigabytes (GB)

MemoryUtilized

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The memory being used by tasks in the resource that is specified by the dimension set that you're using.

This metric is collected only for tasks that have a defined memory reservation in their task definition.

Unit: Megabytes

MemoryReserved

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The memory that is reserved by tasks in the resource that is specified by the dimension set that you're using.

This metric is collected only for tasks that have a defined memory reservation in their task definition.

Unit: Megabytes

NetworkRxBytes

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The number of bytes received by the resource that is specified by the dimensions that you're using. This metric is obtained from the Docker runtime.

This metric is available only for containers in tasks using the awsvpc or bridge network modes.

Unit: Bytes/Second

NetworkTxBytes

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The number of bytes transmitted by the resource that is specified by the dimensions that you're using. This metric is obtained from the Docker runtime.

This metric is available only for containers in tasks using the awsvpc or bridge network modes.

Unit: Bytes/Second

PendingTaskCount

ServiceName, ClusterName

The number of tasks currently in the PENDING state.

Unit: Count

RunningTaskCount

ServiceName, ClusterName

The number of tasks currently in the RUNNING state.

Unit: Count

RestartCount

ClusterName

ClusterName, ServiceName

ClusterName, TaskDefinitionFamily

The number of times a container in an Amazon ECS task has been restarted.

This metric is collected only for containers that have a restart policy enabled.

Unit: Count

ServiceCount

ClusterName

The number of services in the cluster.

Unit: Count

StorageReadBytes

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The number of bytes read from storage on the instance in the resource that is specified by the dimensions that you're using. This does not include read bytes for your storage devices. This metric is obtained from the Docker runtime.

Unit: Bytes

StorageWriteBytes

TaskDefinitionFamily, ClusterName

ServiceName, ClusterName

ClusterName

The number of bytes written to storage in the resource that is specified by the dimensions that you're using. This metric is obtained from the Docker runtime.

Unit: Bytes

TaskCount

ClusterName

The number of tasks running in the cluster.

Unit: Count

TaskSetCount

ServiceName, ClusterName

The number of task sets in the service.

Unit: Count

Note

The EphemeralStorageReserved and EphemeralStorageUtilized metrics are only available for tasks that run on Fargate Linux platform version 1.4.0 or later.

Fargate reserves space on disk. It is only used by Fargate. You aren't billed for it. It isn't shown in these metrics. However, you can see this additional storage in other tools such as df.

The following metrics are available when you complete the steps in Deploying the CloudWatch agent to collect EC2 instance-level metrics on Amazon ECS

Metric name Dimensions Description

instance_cpu_limit

ClusterName

The maximum number of CPU units that can be assigned to a single EC2 Instance in the cluster.

Unit: None

instance_cpu_reserved_capacity

ClusterName

InstanceId, ContainerInstanceId, ClusterName

The percentage of CPU currently being reserved on a single EC2 instance in the cluster.

Unit: Percent

instance_cpu_usage_total

ClusterName

The number of CPU units being used on a Single EC2 instance in the cluster.

Unit: None

instance_cpu_utilization

ClusterName

InstanceId, ContainerInstanceId, ClusterName

The total percentage of CPU units being used on a single EC2 instance in the cluster.

Unit: Percent

instance_filesystem_utilization

ClusterName

InstanceId, ContainerInstanceId, ClusterName

The total percentage of file system capacity being used on a single EC2 instance in the cluster.

Unit: Percent

instance_memory_limit

ClusterName

The maximum amount of memory, in bytes, that can be assigned to a single EC2 Instance in this cluster.

Unit: Bytes

instance_memory_reserved_capacity

ClusterName

InstanceId, ContainerInstanceId, ClusterName

The percentage of Memory currently being reserved on a single EC2 Instance in the cluster.

Unit: Percent

instance_memory_utilization

ClusterName

InstanceId, ContainerInstanceId, ClusterName

The total percentage of memory being used on a single EC2 Instance in the cluster.

Unit: Percent

instance_memory_working_set

ClusterName

The amount of memory, in bytes, being used on a single EC2 Instance in the cluster.

Unit: Bytes

instance_network_total_bytes

ClusterName

The total number of bytes per second transmitted and received over the network on a single EC2 Instance in the cluster.

Unit: Bytes/second

instance_number_of_running_tasks

ClusterName

The number of running tasks on a single EC2 Instance in the cluster.

Unit: Count