Skip to main content

Telegraf

Telegraf is a monitoring system that allows you to configure metric collection, storage, and processing.

Before you begin, configure Telegraf.

Configure Telegraf

You can configure the agent to collect metrics to your infrastructure.

  1. Add a service user.
  2. Set up the agent to retrieve metrics.

1. Add a service user

Add a service user with permissions in the Projects scope and the role:

Users can be added by the Account Owner or users with the iam.admin role.

2. Configure the agent to collect metrics

  1. Open the CLI.

  2. Create the telegraf.conf configuration file:

    nano /etc/telegraf/telegraf.conf
  3. Populate the telegraf.conf configuration file:

    [agent]
    interval = "1m"
    flush_interval = "1m"

    [[inputs.prometheus]]
    urls = ["<base_url>/projects/<project_id>/namespaces/<namespace>/prometheus/metrics"]
    username = "<user_id>"
    password = "<password>"

    [[outputs.file]]
    files = ["stdout"]
    data_format = "prometheus"

    Specify:

    • <base_url> — URL for accessing the Metrics API. If you are configuring an agent to collect metrics from a dedicated server, use the cloud server pool URL that corresponds to the pool where your dedicated server is located. The list of URLs can be found in the Metrics section of the URL list guide;
    • <project_id> — project ID. You can copy it in the control panel: in the top menu, click Products and select any product → open the project menu → in the line of the desired project, click ;
    • <namespace> — name of the selected namespace, for example, compute. You can find it in the Metrics reference guide;
    • <user_id> — ID of the user you added in step 1;
    • <password> — password of the user you added in step 1.
  4. Optional: you can configure metric collection from multiple pools or projects. To add a new pool or project, in the inputs.prometheus section, in the urls parameter, list all sources separated by commas.

  5. Optional: add sending metrics to external storage or processing systems, such as VictoriaMetrics. To do this, expand the outputs section in the telegraf.conf configuration file using the Prometheus Output Plugin.

  6. Exit the nano text editor, saving changes: press Ctrl+X and then Y+Enter.

  7. Start Telegraf:

    docker run \
    --name telegraf \
    --rm \
    -v ${PWD}/telegraf.conf:/etc/telegraf/telegraf.conf:ro \
    telegraf:latest \
    --config /etc/telegraf/telegraf.conf

    Collected metrics will be output to stdout. Example output:

    # HELP network_meta_info_value Telegraf collected metric
    2026-03-03T12:46:30.359832865Z # TYPE network_meta_info_value untyped
    2026-03-03T12:46:30.359838580Z network_meta_info_value{server_uuid="...", ...} 1
    2026-03-03T12:46:30.359844441Z # HELP network_receive_bits_rate_value Telegraf collected metric
    2026-03-03T12:46:30.359847896Z # TYPE network_receive_bits_rate_value untyped
    2026-03-03T12:46:30.359851348Z network_receive_bits_rate_value{server_uuid="...", ...} 0