AWS ECS Metrics Source

The Vector aws_ecs_metrics source collects the docker container stats for tasks running in AWS ECS or AWS Fargate.

Configuration

[sources.my_source_id]
type = "aws_ecs_metrics" # required
namespace = "awsecs" # optional, default
scrape_interval_secs = 15 # optional, default, seconds
  • optionalstring

    endpoint

    Base URI of the task metadata endpoint. If empty, the URI will be automatically discovered based on the latest version detected. The version 2 endpoint base URI is 169.254.170.2/v2/. The version 3 endpoint base URI is stored in the environment variable ECS_CONTAINER_METADATA_URI. The version 4 endpoint base URI is stored in the environment variable ECS_CONTAINER_METADATA_URI_V4.

    • Syntax: literal
    • Default: "${ECS_CONTAINER_METADATA_URI_V4}"
  • commonoptionalstring

    namespace

    The namespace of the metric. Disabled if empty.

    • Syntax: literal
    • Default: "awsecs"
  • commonoptionaluint

    scrape_interval_secs

    The interval between scrapes, in seconds.

    • Default: 15 (seconds)
  • enumoptionalstring

    version

    The version of the metadata endpoint.
    If empty, the version will be automatically discovered based on envirionment

    variables.

    • Syntax: literal
    • Default: "v4"
    • Enum, must be one of: "v4" "v3" "v2"

Output

This component outputs the following metric events:

  • counter

    blkio_recursive_io_merged_total

    Total number of bios/requests merged into requests. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - Device identified by its major and minor numbers.

    • op - The operation type.

  • counter

    blkio_recursive_io_queued_total

    Total number of requests queued up at any given instant. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - Device identified by its major and minor numbers.

    • op - The operation type.

  • counter

    blkio_recursive_io_service_bytes_total

    Number of bytes transferred to/from the disk. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - Device identified by its major and minor numbers.

    • op - The operation type.

  • counter

    blkio_recursive_io_service_time_seconds_total

    Total amount of time in seconds between request dispatch and request completion for the IOs done. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - Device identified by its major and minor numbers.

    • op - The operation type.

  • counter

    blkio_recursive_io_serviced_total

    Number of IOs completed to/from the disk. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - Device identified by its major and minor numbers.

    • op - The operation type.

  • counter

    blkio_recursive_io_time_seconds_total

    Disk time allocated per device in seconds. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - Device identified by its major and minor numbers.

    • op - The operation type.

  • counter

    blkio_recursive_io_wait_time_seconds_total

    Total amount of time in seconds the IOs spent waiting in the scheduler queues for service. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - Device identified by its major and minor numbers.

    • op - The operation type.

  • counter

    blkio_recursive_sectors_total

    Number of sectors transferred to/from disk. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - Device identified by its major and minor numbers.

    • op - The operation type.

  • gauge

    cpu_online_cpus

    Number of CPU cores. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    cpu_usage_system_jiffies_total

    Jiffies of CPU time used by the system. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    cpu_usage_usermode_jiffies_total

    Jiffies of CPU time spent in user mode by the container. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    cpu_usage_kernelmode_jiffies_total

    Jiffies of CPU time spent in kernel mode by the container. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    cpu_usage_total_jiffies_total

    Jiffies of CPU time used by the container. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    cpu_throttling_periods_total

    Number of periods. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    cpu_throttled_periods_total

    Number of periods throttled. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    cpu_throttled_time_seconds_total

    Throttling time in seconds. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    cpu_usage_percpu_jiffies_total

    Jiffies of CPU time used by the container, per CPU core. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • cpu - CPU core identifier.

  • gauge

    memory_used_bytes

    Memory used by the container, in bytes. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_max_used_bytes

    Maximum measured memory usage of the container, in bytes. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_limit_bytes

    Memory usage limit of the container, in bytes. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_active_anonymous_bytes

    Amount of memory that has been identified as active by the kernel. Anonymous memory is memory that is not linked to disk pages. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_active_file_bytes

    Amount of active file cache memory. Cache memory = active_file + inactive_file + tmpfs. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_cache_bytes

    The amount of memory used by the processes of this cgroup that can be associated with a block on a block device. Also accounts for memory used by tmpfs. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_dirty_bytes

    The amount of memory waiting to get written to disk. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_inactive_anonymous_bytes

    Amount of memory that has been identified as inactive by the kernel. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_inactive_file_bytes

    Amount of inactive file cache memory. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_mapped_file_bytes

    Indicates the amount of memory mapped by the processes in the cgroup. It doesn’t give you information about how much memory is used; it rather tells you how it is used. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    memory_page_faults_total

    Number of times that a process of the cgroup triggered a page fault. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    memory_major_faults_total

    Number of times that a process of the cgroup triggered a major page fault. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    memory_page_charged_total

    Number of charging events to the memory cgroup. Charging events happen each time a page is accounted as either mapped anon page(RSS) or cache page to the cgroup. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    memory_page_uncharged_total

    Number of uncharging events to the memory cgroup. Uncharging events happen each time a page is unaccounted from the cgroup. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_rss_bytes

    The amount of memory that doesn’t correspond to anything on disk: stacks, heaps, and anonymous memory maps. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_rss_hugepages_bytes

    Amount of memory due to anonymous transparent hugepages. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_unevictable_bytes

    The amount of memory that cannot be reclaimed. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_writeback_bytes

    The amount of memory from file/anon cache that are queued for syncing to the disk. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_active_anonymous_bytes

    Total amount of memory that has been identified as active by the kernel. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_active_file_bytes

    Total amount of active file cache memory. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_cache_bytes

    Total amount of memory used by the processes of this cgroup that can be associated with a block on a block device. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_dirty_bytes

    Total amount of memory waiting to get written to disk. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_inactive_anonymous_bytes

    Total amount of memory that has been identified as inactive by the kernel. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_inactive_file_bytes

    Total amount of inactive file cache memory. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_mapped_file_bytes

    Total amount of memory mapped by the processes in the cgroup. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    memory_total_page_faults_total

    Total number of page faults. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    memory_total_major_faults_total

    Total number of major page faults. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    memory_total_page_charged_total

    Total number of charging events. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    memory_total_page_uncharged_total

    Total number of uncharging events. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_rss_bytes

    Total amount of memory that doesn’t correspond to anything on disk: stacks, heaps, and anonymous memory maps. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_rss_hugepages_bytes

    Total amount of memory due to anonymous transparent hugepages. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_unevictable_bytes

    Total amount of memory that can not be reclaimed. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_total_writeback_bytes

    Total amount of memory from file/anon cache that are queued for syncing to the disk. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_hierarchical_memory_limit_bytes

    The memory limit in place by the hierarchy cgroup. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • gauge

    memory_hierarchical_memsw_limit_bytes

    The memory + swap limit in place by the hierarchy cgroup. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

  • counter

    network_receive_bytes_total

    Bytes received by the container via the network interface. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - The network interface.

  • counter

    network_receive_packets_total

    Number of packets received by the container via the network interface. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - The network interface.

  • counter

    network_receive_packets_drop_total

    Number of inbound packets dropped by the container. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - The network interface.

  • counter

    network_receive_errs_total

    Errors receiving packets. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - The network interface.

  • counter

    network_transmit_bytes_total

    Bytes sent by the container via the network interface. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - The network interface.

  • counter

    network_transmit_packets_total

    Number of packets sent by the container via the network interface. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - The network interface.

  • counter

    network_transmit_packets_drop_total

    Number of outbound packets dropped by the container. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - The network interface.

  • counter

    network_transmit_errs_total

    Errors sending packets. This metric includes the following tags:

    • container_id - The identifier of the ECS container.

    • container_name - The name of the ECS container.

    • device - The network interface.

Telemetry

This component provides the following metrics that can be retrieved through the internal_metrics source. See the metrics section in the monitoring page for more info.

  • counter

    http_error_response_total

    The total number of HTTP error responses for this component. This metric includes the following tags:

    • instance - The Vector instance identified by host and port.

    • job - The name of the job producing Vector metrics.

  • counter

    http_request_errors_total

    The total number of HTTP request errors for this component. This metric includes the following tags:

    • instance - The Vector instance identified by host and port.

    • job - The name of the job producing Vector metrics.

  • counter

    parse_errors_total

    The total number of errors parsing metrics for this component. This metric includes the following tags:

    • instance - The Vector instance identified by host and port.

    • job - The name of the job producing Vector metrics.

  • counter

    processed_bytes_total

    The total number of bytes processed by the component. This metric includes the following tags:

    • component_kind - The Vector component kind.

    • component_name - The Vector component ID.

    • component_type - The Vector component type.

    • instance - The Vector instance identified by host and port.

    • job - The name of the job producing Vector metrics.

  • counter

    processed_events_total

    The total number of events processed by this component. This metric includes the following tags:

    • component_kind - The Vector component kind.

    • component_name - The Vector component ID.

    • component_type - The Vector component type.

    • file - The file that produced the error

    • instance - The Vector instance identified by host and port.

    • job - The name of the job producing Vector metrics.

  • counter

    requests_completed_total

    The total number of requests completed by this component. This metric includes the following tags:

    • component_kind - The Vector component kind.

    • component_name - The Vector component ID.

    • component_type - The Vector component type.

    • instance - The Vector instance identified by host and port.

    • job - The name of the job producing Vector metrics.

  • counter

    events_out_total

    The total number of events emitted by this component. This metric includes the following tags:

    • component_kind - The Vector component kind.

    • component_name - The Vector component ID.

    • component_type - The Vector component type.

    • instance - The Vector instance identified by host and port.

    • job - The name of the job producing Vector metrics.

  • histogram

    request_duration_nanoseconds

    The total request duration in nanoseconds. This metric includes the following tags:

    • instance - The Vector instance identified by host and port.

    • job - The name of the job producing Vector metrics.

How It Works

Context

By default, the aws_ecs_metrics source will augment events with helpful context keys as shown in the "Output" section.

State

This component is stateless, meaning its behavior is consistent across each input.

Contents