Amazon ECS task metadata v4 examples for tasks on Fargate - Amazon Elastic Container Service
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Amazon ECS task metadata v4 examples for tasks on Fargate

The following examples show sample outputs from the task metadata endpoints for Amazon ECS tasks run on Amazon Fargate.

From the container, you can use curl followed by the task meta data endpoint to query the endpoint for example curl ${ECS_CONTAINER_METADATA_URI_V4}/task.

Example container metadata response

When querying the ${ECS_CONTAINER_METADATA_URI_V4} endpoint you are returned only metadata about the container itself. The following is an example output.

{ "DockerId": "cd189a933e5849daa93386466019ab50-2495160603", "Name": "curl", "DockerName": "curl", "Image": "111122223333.dkr.ecr.us-west-2.amazonaws.com/curltest:latest", "ImageID": "sha256:25f3695bedfb454a50f12d127839a68ad3caf91e451c1da073db34c542c4d2cb", "Labels": { "com.amazonaws.ecs.cluster": "arn:aws:ecs:us-west-2:111122223333:cluster/default", "com.amazonaws.ecs.container-name": "curl", "com.amazonaws.ecs.task-arn": "arn:aws:ecs:us-west-2:111122223333:task/default/cd189a933e5849daa93386466019ab50", "com.amazonaws.ecs.task-definition-family": "curltest", "com.amazonaws.ecs.task-definition-version": "2" }, "DesiredStatus": "RUNNING", "KnownStatus": "RUNNING", "Limits": { "CPU": 10, "Memory": 128 }, "CreatedAt": "2020-10-08T20:09:11.44527186Z", "StartedAt": "2020-10-08T20:09:11.44527186Z", "Type": "NORMAL", "Networks": [ { "NetworkMode": "awsvpc", "IPv4Addresses": [ "192.0.2.3" ], "AttachmentIndex": 0, "MACAddress": "0a:de:f6:10:51:e5", "IPv4SubnetCIDRBlock": "192.0.2.0/24", "DomainNameServers": [ "192.0.2.2" ], "DomainNameSearchList": [ "us-west-2.compute.internal" ], "PrivateDNSName": "ip-10-0-0-222.us-west-2.compute.internal", "SubnetGatewayIpv4Address": "192.0.2.0/24" } ], "ContainerARN": "arn:aws:ecs:us-west-2:111122223333:container/05966557-f16c-49cb-9352-24b3a0dcd0e1", "LogOptions": { "awslogs-create-group": "true", "awslogs-group": "/ecs/containerlogs", "awslogs-region": "us-west-2", "awslogs-stream": "ecs/curl/cd189a933e5849daa93386466019ab50" }, "LogDriver": "awslogs", "Snapshotter": "overlayfs" }

Amazon ECS task metadata v4 examples for tasks on Fargate

When querying the ${ECS_CONTAINER_METADATA_URI_V4}/task endpoint you are returned metadata about the task the container is part of. The following is an example output.

{ "Cluster": "arn:aws:ecs:us-east-1:123456789012:cluster/clusterName", "TaskARN": "arn:aws:ecs:us-east-1:123456789012:task/MyEmptyCluster/bfa2636268144d039771334145e490c5", "Family": "sample-fargate", "Revision": "5", "DesiredStatus": "RUNNING", "KnownStatus": "RUNNING", "Limits": { "CPU": 0.25, "Memory": 512 }, "PullStartedAt": "2023-07-21T15:45:33.532811081Z", "PullStoppedAt": "2023-07-21T15:45:38.541068435Z", "AvailabilityZone": "us-east-1d", "Containers": [ { "DockerId": "bfa2636268144d039771334145e490c5-1117626119", "Name": "curl-image", "DockerName": "curl-image", "Image": "curlimages/curl", "ImageID": "sha256:daf3f46a2639c1613b25e85c9ee4193af8a1d538f92483d67f9a3d7f21721827", "Labels": { "com.amazonaws.ecs.cluster": "arn:aws:ecs:us-east-1:123456789012:cluster/MyEmptyCluster", "com.amazonaws.ecs.container-name": "curl-image", "com.amazonaws.ecs.task-arn": "arn:aws:ecs:us-east-1:123456789012:task/MyEmptyCluster/bfa2636268144d039771334145e490c5", "com.amazonaws.ecs.task-definition-family": "sample-fargate", "com.amazonaws.ecs.task-definition-version": "5" }, "DesiredStatus": "RUNNING", "KnownStatus": "RUNNING", "Limits": { "CPU": 128 }, "CreatedAt": "2023-07-21T15:45:44.91368314Z", "StartedAt": "2023-07-21T15:45:44.91368314Z", "Type": "NORMAL", "Networks": [ { "NetworkMode": "awsvpc", "IPv4Addresses": ["172.31.42.189"], "AttachmentIndex": 0, "MACAddress": "0e:98:9f:33:76:d3", "IPv4SubnetCIDRBlock": "172.31.32.0/20", "DomainNameServers": ["172.31.0.2"], "DomainNameSearchList": ["ec2.internal"], "PrivateDNSName": "ip-172-31-42-189.ec2.internal", "SubnetGatewayIpv4Address": "172.31.32.1/20" } ], "ContainerARN": "arn:aws:ecs:us-east-1:123456789012:container/MyEmptyCluster/bfa2636268144d039771334145e490c5/da6cccf7-1178-400c-afdf-7536173ee209", "Snapshotter": "overlayfs" }, { "DockerId": "bfa2636268144d039771334145e490c5-3681984407", "Name": "fargate-app", "DockerName": "fargate-app", "Image": "public.ecr.aws/docker/library/httpd:latest", "ImageID": "sha256:8059bdd0058510c03ae4c808de8c4fd2c1f3c1b6d9ea75487f1e5caa5ececa02", "Labels": { "com.amazonaws.ecs.cluster": "arn:aws:ecs:us-east-1:123456789012:cluster/MyEmptyCluster", "com.amazonaws.ecs.container-name": "fargate-app", "com.amazonaws.ecs.task-arn": "arn:aws:ecs:us-east-1:123456789012:task/MyEmptyCluster/bfa2636268144d039771334145e490c5", "com.amazonaws.ecs.task-definition-family": "sample-fargate", "com.amazonaws.ecs.task-definition-version": "5" }, "DesiredStatus": "RUNNING", "KnownStatus": "RUNNING", "Limits": { "CPU": 2 }, "CreatedAt": "2023-07-21T15:45:44.954460255Z", "StartedAt": "2023-07-21T15:45:44.954460255Z", "Type": "NORMAL", "Networks": [ { "NetworkMode": "awsvpc", "IPv4Addresses": ["172.31.42.189"], "AttachmentIndex": 0, "MACAddress": "0e:98:9f:33:76:d3", "IPv4SubnetCIDRBlock": "172.31.32.0/20", "DomainNameServers": ["172.31.0.2"], "DomainNameSearchList": ["ec2.internal"], "PrivateDNSName": "ip-172-31-42-189.ec2.internal", "SubnetGatewayIpv4Address": "172.31.32.1/20" } ], "ContainerARN": "arn:aws:ecs:us-east-1:123456789012:container/MyEmptyCluster/bfa2636268144d039771334145e490c5/f65b461d-aa09-4acb-a579-9785c0530cbc", "Snapshotter": "overlayfs" } ], "LaunchType": "FARGATE", "ClockDrift": { "ClockErrorBound": 0.446931, "ReferenceTimestamp": "2023-07-21T16:09:17Z", "ClockSynchronizationStatus": "SYNCHRONIZED" }, "EphemeralStorageMetrics": { "Utilized": 261, "Reserved": 20496 } }

Example task stats response

When querying the ${ECS_CONTAINER_METADATA_URI_V4}/task/stats endpoint you are returned network metrics about the task the container is part of. The following is an example output.

{ "3d1f891cded94dc795608466cce8ddcf-464223573": { "read": "2020-10-08T21:24:44.938937019Z", "preread": "2020-10-08T21:24:34.938633969Z", "pids_stats": {}, "blkio_stats": { "io_service_bytes_recursive": [ { "major": 202, "minor": 26368, "op": "Read", "value": 638976 }, { "major": 202, "minor": 26368, "op": "Write", "value": 0 }, { "major": 202, "minor": 26368, "op": "Sync", "value": 638976 }, { "major": 202, "minor": 26368, "op": "Async", "value": 0 }, { "major": 202, "minor": 26368, "op": "Total", "value": 638976 } ], "io_serviced_recursive": [ { "major": 202, "minor": 26368, "op": "Read", "value": 12 }, { "major": 202, "minor": 26368, "op": "Write", "value": 0 }, { "major": 202, "minor": 26368, "op": "Sync", "value": 12 }, { "major": 202, "minor": 26368, "op": "Async", "value": 0 }, { "major": 202, "minor": 26368, "op": "Total", "value": 12 } ], "io_queue_recursive": [], "io_service_time_recursive": [], "io_wait_time_recursive": [], "io_merged_recursive": [], "io_time_recursive": [], "sectors_recursive": [] }, "num_procs": 0, "storage_stats": {}, "cpu_stats": { "cpu_usage": { "total_usage": 1137691504, "percpu_usage": [ 696479228, 441212276, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], "usage_in_kernelmode": 80000000, "usage_in_usermode": 810000000 }, "system_cpu_usage": 9393210000000, "online_cpus": 2, "throttling_data": { "periods": 0, "throttled_periods": 0, "throttled_time": 0 } }, "precpu_stats": { "cpu_usage": { "total_usage": 1136624601, "percpu_usage": [ 695639662, 440984939, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], "usage_in_kernelmode": 80000000, "usage_in_usermode": 810000000 }, "system_cpu_usage": 9373330000000, "online_cpus": 2, "throttling_data": { "periods": 0, "throttled_periods": 0, "throttled_time": 0 } }, "memory_stats": { "usage": 6504448, "max_usage": 8458240, "stats": { "active_anon": 1675264, "active_file": 557056, "cache": 651264, "dirty": 0, "hierarchical_memory_limit": 536870912, "hierarchical_memsw_limit": 9223372036854772000, "inactive_anon": 0, "inactive_file": 3088384, "mapped_file": 430080, "pgfault": 11034, "pgmajfault": 5, "pgpgin": 8436, "pgpgout": 7137, "rss": 4669440, "rss_huge": 0, "total_active_anon": 1675264, "total_active_file": 557056, "total_cache": 651264, "total_dirty": 0, "total_inactive_anon": 0, "total_inactive_file": 3088384, "total_mapped_file": 430080, "total_pgfault": 11034, "total_pgmajfault": 5, "total_pgpgin": 8436, "total_pgpgout": 7137, "total_rss": 4669440, "total_rss_huge": 0, "total_unevictable": 0, "total_writeback": 0, "unevictable": 0, "writeback": 0 }, "limit": 9223372036854772000 }, "name": "curltest", "id": "3d1f891cded94dc795608466cce8ddcf-464223573", "networks": { "eth1": { "rx_bytes": 2398415937, "rx_packets": 1898631, "rx_errors": 0, "rx_dropped": 0, "tx_bytes": 1259037719, "tx_packets": 428002, "tx_errors": 0, "tx_dropped": 0 } }, "network_rate_stats": { "rx_bytes_per_sec": 43.298687872232854, "tx_bytes_per_sec": 215.39347269466413 } } }