To simplify shipping metrics from one or many sources, we created Docker Metrics Collector. Docker Metrics Collector is a container that runs Metricbeat with the modules you enable at runtime.

Docker versions
  • Docker Metrics Collector v0.2 runs Metricbeat v7.10.
  • Docker Metrics Collector v0.1.6 runs Metricbeat v7.5.2.

The Metricbeat version determines which pre-built AWS Metrics dashboards you can use for your data. Filter by the Metricbeat version tag to find relevant AWS dashboards in your Metrics library.


If you’re not already running Docker Metrics Collector, follow these steps.

Otherwise, stop the container, add aws to the LOGZIO_MODULES environment variable, and restart. You can find the run command and all parameters in this procedure.

Set up your IAM user

You’ll need an IAM user with these permissions: cloudwatch:GetMetricData, cloudwatch:ListMetrics, ec2:DescribeInstances, ec2:DescribeRegions, iam:ListAccountAliases, sts:GetCallerIdentity

If you don’t have one, set that up now.

Create an Access key ID and Secret access key for the IAM user, and paste them in your text editor.

You’ll need these for your Metricbeat configuration later.

Get your metrics region

You’ll need to specify the AWS region you’re collecting metrics from.

AWS region menu

Find your region’s slug in the region menu (in the top menu, on the right side).

For example: The slug for US East (N. Virginia) is “us-east-1”, and the slug for Canada (Central) is “ca-central-1”.

Paste your region slug in your text editor. You’ll need this for your Metricbeat configuration later.

Enable EC2 Auto Scaling metrics

In the EC2 console left menu, click AUTO SCALING > Auto Scaling Groups

Select the Auto Scaling group you want to monitor. To do this, click the Monitoring tab, and then click Enable Group Metrics Collection.

Pull the Docker image

Download the Docker Metrics Collector image:

docker pull logzio/docker-collector-metrics
Run the container

You’ll set your configuration using environment variables in the docker run command. Each parameter is formatted like this: --env ENV_VARIABLE_NAME="value".

For a complete list of options, see the parameters below the code block.👇

docker run --name docker-collector-metrics \
--env LOGZIO_MODULES="aws" \
Parameters for all modules
Parameter Description Default/Required
LOGZIO_TOKEN Your account token. Replace <<METRICS-SHIPPING-TOKEN>> with a token for the Metrics account you want to ship to.
Here’s how to look up your Metrics token.
LOGZIO_MODULES Comma-separated list of Metricbeat modules to enable on this container (formatted as "module1,module2,module3"). To use a custom module configuration file, mount its folder to /logzio/modules. Required
LOGZIO_REGION Two-letter region code, or blank for US East (Northern Virginia). This determines your listener URL (where you’re shipping the logs to) and API URL. You can find your region code in the Regions and URLs table. US East
LOGZIO_TYPE This field is needed only if you’re shipping metrics to Kibana and you want to override the default value. In Kibana, this is shown in the type field. applies parsing based on type. docker-collector-metrics
LOGZIO_LOG_LEVEL The log level the module startup scripts will generate. "INFO"
LOGZIO_EXTRA_DIMENSIONS Semicolon-separated list of dimensions to be included with your metrics (formatted as dimensionName1=value1;dimensionName2=value2). To use an environment variable as a value, format as dimensionName=$ENV_VAR_NAME. Environment variables must be the only value in the field. If an environment variable can’t be resolved, the field is omitted. --
HOSTNAME Insert your for it to appear in the metrics. If null, will show the container’s ID. ``
DEBUG Set to true if you want Metricbeat to run in debug mode. Note: Debug mode tends to generate a lot of debugging output, so you should probably enable it temporarily only when an error occurs while running the docker-collector in production. false
Parameters for the AWS module

Use these parameters if you prefer to explicitly name your access key ID and secret access key. If you are using a credentials file, skip to the relevant section.

These AWS module parameters are the preferred default. We recommend that you use a credentials file (and the AWS module parameters associated with the credentials file) only if there is a specific use case for doing so.

Parameter Description Required
AWS_ACCESS_KEY_ID Your IAM user’s access key ID. Required
AWS_SECRET_ACCESS_KEY Your IAM user’s secret key. Required
AWS_DEFAULT_REGION Your region’s slug. You can find this in the AWS region menu (in the top menu, to the right). Required
AWS_NAMESPACES Comma-separated list of namespaces of the metrics you want to collect. For Auto Scaling, this is AWS/Auto Scaling. See AWS Docs 🔗 for a complete list of valid namespaces. Required
Parameters for the AWS module when using a credentials file

You can use a credential file instead of explicitly naming your access key ID and secret access key. You’ll also need to set an ARN role either on your credential file or explicitly using the parameter AWS_ROLE_ARN.

Learn more about Metricbeat configuration options for AWS Credentials 🔗.

Parameter Description Required
AWS_DEFAULT_REGION Your region’s slug. You can find this in the AWS region menu (in the top menu, to the right). Required
AWS_NAMESPACES Comma-separated list of namespaces of the metrics you want to collect. For Auto Scaling, this is AWS/Auto Scaling. See AWS Docs 🔗 for a complete list of valid namespaces. Required
AWS_CREDENTIAL_PROFILE_NAME Your profile name in shared credentials file. Required
AWS_SHARED_CREDENTIAL_FILE Your directory of the shared credentials file, in your docker instance. Note: If you’re using this parameter, you’ll have to mount your credentials folder. To mount your credentials folder, add the following line to your docker run command: -v /path/to/your/aws/credentials/folder:<<path/to/shared/credential/file/in/docker>>:ro Required
AWS_SESSION_TOKEN Your IAM user’s session token. --
AWS_ROLE_ARN Your IAM role to assume. Add this parameter only if your credential file doesn’t include an ARN role. --
Open your Cloudwatch AWS/Auto Scaling dashboard in

Give your metrics a few minutes to get from your system to ours, and then open

Your metrics should appear in the preconfigured dashboard in your Metrics account. To open it, search your Metrics dashboards for Cloudwatch AWS/Auto Scaling.