Concourse-CI

Supported OS Linux Windows Mac OS

Overview

Configure the Datadog Metric Emitter in Concourse CI to:

  • Visualize the duration of pipelines, number of containers and mounted volumes of workers.
  • Identify slow requests to build routes.

Setup

Installation

Concourse CI comes bundled with a Datadog metrics emitter. A prerequisite to configuring ATC to emit metrics on start is to have a Datadog Agent installed.

Configuration

Configure ATC to use the Datadog emitter by setting the following options. It is important to use a prefix of concourse.ci to avoid emitting custom metrics.

Metric emitter options

See Configuring Metrics in the Concourse CI documentation for more information.

Metric Emitter (Datadog):
    --datadog-agent-host=       Datadog agent host to expose dogstatsd metrics [$CONCOURSE_DATADOG_AGENT_HOST]
    --datadog-agent-port=       Datadog agent port to expose dogstatsd metrics [$CONCOURSE_DATADOG_AGENT_PORT]
    --datadog-prefix=           Prefix for all metrics to easily find them in Datadog [$CONCOURSE_DATADOG_PREFIX]

Data Collected

Metrics

concourse.ci.build_finished
(gauge)
The duration of the build
Shown as millisecond
concourse.ci.build_started
(gauge)
The build ID of the build
Shown as build
concourse.ci.containers_created
(gauge)
The number of containers created
Shown as container
concourse.ci.containers_deleted
(gauge)
The number of containers deleted
Shown as container
concourse.ci.created_containers_to_be_garbage_collected
(gauge)
The number of containers to be garbage collected
Shown as container
concourse.ci.created_volumes_to_be_garbage_collected
(gauge)
The number of volumes to be garbage collected
Shown as volume
concourse.ci.creating_containers_to_be_garbage_collected
(gauge)
The number of containers being created to be garbage collected
Shown as container
concourse.ci.database_connections
(gauge)
The number of database connections
Shown as connection
concourse.ci.database_queries
(gauge)
The number of database queries
Shown as query
concourse.ci.destroying_containers_to_be_garbage_collected
(gauge)
The number of containers being destroyed to be garbage collected
Shown as container
concourse.ci.destroying_volumes_to_be_garbage_collected
(gauge)
The number of volumes being destroyed to be garbage collected
Shown as volume
concourse.ci.failed_containers
(gauge)
The number of failed containers
Shown as container
concourse.ci.failed_containers_to_be_garbage_collected
(gauge)
The number of failed containers to be garbage collected
Shown as container
concourse.ci.failed_volumes
(gauge)
The number of failed volumes
Shown as volume
concourse.ci.failed_volumes_to_be_garbage_collected
(gauge)
The number of failed volumes to be garbage collected
Shown as volume
concourse.ci.frees
(gauge)
The number of heap objects freed
Shown as heap
concourse.ci.gc_pause_total_duration
(gauge)
The total pause duration in garbage collection
Shown as nanosecond
concourse.ci.goroutines
(gauge)
The number of goroutines that exist
Shown as operation
concourse.ci.http_response_time
(gauge)
The duration for each request to an ATC
Shown as millisecond
concourse.ci.mallocs
(gauge)
The number of heap objects allocated
Shown as heap
concourse.ci.orphaned_volumes_to_be_garbage_collected
(gauge)
The number of orphaned volumes to be garbage collected
Shown as volume
concourse.ci.scheduling_full_duration_ms
(gauge)
The time taken to schedule an entire pipeline including the time taken to load the version information from the database and calculate the latest valid versions for each job
Shown as millisecond
concourse.ci.scheduling_job_duration_ms
(gauge)
The time taken to calculate the set of valid input versions when scheduling a job
Shown as millisecond
concourse.ci.scheduling_loading_versions_duration_ms
(gauge)
The time taken to load the version information from the database
Shown as millisecond
concourse.ci.volumes_created
(gauge)
The number of volumes created
Shown as volume
concourse.ci.volumes_deleted
(gauge)
The number of volumes deleted
Shown as volume
concourse.ci.worker_containers
(gauge)
The number of containers that are currently running on workers
Shown as container
concourse.ci.worker_volumes
(gauge)
The number of volumes that are currently present on workers
Shown as volume

Events

This integration does not support events.

Service

This integration does not collect service checks.

Troubleshooting

Need help? Contact Datadog support.

PREVIEWING: may/unit-testing