CI Pipelines

This dataset represents CI pipeline execution data collected by Datadog CI Visibility. It provides insights into your CI system’s health and performance, including pipeline status, duration, queue time, and related Git metadata such as repository, branch, and commit information. This enables analysis of build efficiency, reliability, and developer productivity across your CI workflows.

dd.ci_pipelines

CI Pipeline Visibility Public Documentation

CI Visibility Pipelines API Public Documentation

Query Parameters

This dataset uses a polymorphic table function. You must specify parameters when querying.

ParameterTypeRequiredDescription
columnsarray<string>YesList of fields to return for each pipeline execution (e.g., ’timestamp’, ‘@ci.pipeline.id’, ‘@git.branch’).
event_typestringNoOptional event subtype; mapped to ‘ci_level’. (e.g., event_type => ‘pipeline’,)
filterstringNoOptional EVP search string. For example: filter => ‘@ci.status:error AND @git.branch:main’.
from_timestampstringNoLower time bound for the query; defaults to query context if omitted.
to_timestampstringNoUpper time bound for the query; defaults to query context if omitted.

Example Queries

-- Fetch recent failed pipeline runs with basic repo context SELECT * FROM dd.ci_pipelines(
  columns => ARRAY[
    'timestamp',
    '@ci.pipeline.id',
    '@ci.pipeline.name',
    '@ci.status',
    '@git.repository_url',
    '@git.branch',
    '@git.commit.sha'
  ],
  event_type => 'pipeline',
  filter => '@ci.status:(error OR failed) AND @git.branch:main'
  ) AS (
    ts TIMESTAMP,
    pipeline_id VARCHAR,
    pipeline_name VARCHAR,
    status VARCHAR,
    repository_url VARCHAR,
    branch VARCHAR,
    commit_sha VARCHAR
);

Fields

TitleIDTypeData TypeDescription
TimestamptimestampcoretimestampTime the CI job or pipeline event was recorded (e.g., 1758787144000).
Duration (ns)@durationevent_attributeint64Total duration of the pipeline in nanoseconds (e.g., 41000000000).
CI Status@ci.statusevent_attributestringStatus of the job or pipeline (e.g., success, error, skipped).
CI Queue Time (s)@ci.queue_timeevent_attributeint64Seconds spent waiting before execution (e.g., 0).
Is On Critical Path@ci.on_critical_pathevent_attributeboolTrue if the job was part of the pipeline’s critical path (e.g., true).
CI Provider Name@ci.provider.nameevent_attributestringName of the CI provider (e.g., github, gitlab).
CI Provider Instance@ci.provider.instanceevent_attributestringProvider instance or CI platform (e.g., github-actions).
CI Pipeline ID@ci.pipeline.idevent_attributestringCI provider’s unique identifier for the pipeline run (e.g., 18000893621-1).
CI Pipeline Name@ci.pipeline.nameevent_attributestringPipeline or workflow file name (e.g., .github/workflows/claude.yml).
CI Pipeline Status@ci.pipeline.statusevent_attributestringOverall status of the pipeline run (e.g., skipped).
CI Job ID@ci.job.idevent_attributestringCI provider job ID (e.g., skipped).
CI Job Name@ci.job.nameevent_attributestringName of the CI job executed (e.g., claude-code-action).
CI Job URL@ci.job.urlevent_attributestringURL linking directly to the job’s provider page (e.g., https://github.com/.../job/51209691834).
CI Node Labels@ci.node.labelsevent_attributearray<string>Labels assigned to the job node (e.g., ['ubuntu-latest']).
CI Pipeline Correlation ID@ci.pipeline_correlation_idevent_attributestringCorrelation ID shared across events for this pipeline run (e.g., 6dac6e179885eaf1).
CI Job Correlation ID@ci.job_correlation_idevent_attributestringCorrelation ID for this specific job (e.g., ce4e44f218c2700e).
Critical Path Execution Time (s)@ci.pipeline.critical_path.execution_timeevent_attributeint64Seconds spent running critical path jobs or stages (e.g., 28).
Critical Path Queue Time (s)@ci.pipeline.critical_path.queue_timeevent_attributeint64Seconds critical path jobs spent waiting for a runner (e.g., 28).
Critical Path Uncategorized Time (s)@ci.pipeline.critical_path.uncategorized_timeevent_attributeint64Seconds on the critical path not assigned to a known phase (e.g., 28).
Critical Path Wait Time (s)@ci.pipeline.critical_path.wait_timeevent_attributeint64Seconds critical path jobs waited for dependencies to finish (e.g., 28).
Critical Path Exclusive Time (s)@ci.critical_path.exclusive_timeevent_attributeint64Seconds exclusively spent on this job within the critical path (e.g., 28).
Git Branch@git.branchevent_attributestringBranch associated with this run (e.g., fbryden/build_suppressions_sds_context).
Git Default Branch@git.default_branchevent_attributestringDefault repository branch (e.g., main).
Git Commit SHA@git.commit.shaevent_attributestringCommit SHA for the triggering commit (e.g., dffcc683e2f78dad9228213fe2566dc3413b6b00).
Git Commit Message@git.commit.messageevent_attributestringCommit message for the triggering commit (e.g., Fix casing of suppressions).
Git Commit Author Name@git.commit.author.nameevent_attributestringAuthor’s name of the triggering commit (e.g., Frank Bryden).
Git Commit Author Email@git.commit.author.emailevent_attributestringAuthor’s email of the triggering commit (e.g., frank.bryden@datadoghq.com).
Git Commit Committer Name@git.commit.committer.nameevent_attributestringCommitter’s name of the triggering commit (e.g., Frank Bryden).
Git Commit Committer Email@git.commit.committer.emailevent_attributestringCommitter’s email of the triggering commit (e.g., frank.bryden@datadoghq.com).
Git Commit Committer Date@git.commit.committer.dateevent_attributestringCommit time as a date string (e.g., 2025-09-24T16:10:18Z).
Git Commit Committer Timestamp@git.commit.committer.date_timestampevent_attributetimestampCommit time as numeric timestamp (e.g., 1758730218000).
Git Repository URL@git.repository_urlevent_attributestringRepository URL (e.g., https://github.com/DataDog/dd-source.git).
Git Repository Host@git.repository.hostevent_attributestringRepository host name (e.g., github.com).
Git Repository Name@git.repository.nameevent_attributestringRepository name with owner (e.g., DataDog/dd-source).
Event IDidcorestringA unique identifier for the event.
Discovery Timestampdiscovery_timestampcoreint64The time when Datadog first received the event (milliseconds since Unix epoch). May differ from timestamp if there was an ingestion delay.
Tiebreakertiebreakercoreint64A value used to establish deterministic ordering among events that share the same timestamp.
Ingest Sizeingest_size_in_bytescoreint64The size of the event payload in bytes at the time of ingestion, before any processing.
Random Drawrandom_drawcorefloat64A random value between 0.0 and 1.0 assigned at ingestion, useful for consistent sampling across queries.