CI/CD monitoring
CI/CD monitoring
Section titled “CI/CD monitoring”Monitoring the build and delivery pipeline — Jenkins instances and Gitee repositories — as part of the observability estate.
Jenkins
Section titled “Jenkins”Two ways to bring Jenkins into Sondar, either alone or together:
- Jenkins metrics — the
jenkins_telcollect type reads job and node information from the Jenkins API (no Jenkins plugin required). It collects node state (total/busy executors, available memory/disk), job result codes, and build activity. - OpenTelemetry plugin — the OpenTelemetry plugin provides distributed
tracing of Jenkins jobs and pipeline executions. The
jenkins_overview_opentelemetrydashboard reads the traced runs.
Jenkins metrics
Section titled “Jenkins metrics”jenkins_tel polls the Jenkins API on an interval:
readers: - jenkins_tel: interval: 30s url: "http://my-jenkins:8080" username: admin password: secret response_timeout: "5s" max_build_age: "1h" max_subjob_depth: 0 max_subjob_per_layer: 10url/username/password— the instance and credentials.max_build_age(default 1h) — ignore builds older than this, so the collector does not replay history on every poll.max_subjob_depth(default 0 = unlimited) — Jenkins nests sub-jobs arbitrarily (workflow-multibranch creates one per branch); this caps the depth pulled.max_subjob_per_layer(default 10) — the number of sub-jobs pulled per level, so a wide branch fan-out is bounded. A job path include/exclude filter is also available to narrow which jobs are read.
Data lands in app_jenkins_tel. Dashboards: Jenkins Overview, Jenkins
Overview — OpenTelemetry (the OTel-trace view: job runs by user/PR, step
runtime trends, failed-job error logs, most-active users, node state).
The Jenkins result codes are mapped to English in the dashboards: Success, Failed, Not built, Unstable, Aborted.
The Gitee app is a webhook-event integration rather than a metrics
collector: a Gitee repository’s webhooks deliver events (issues, PRs,
pushes), which the app’s extraction rule turns into Sondar events in the
gitee_event repo. The Gitee Overview dashboard then analyses issue
flow — new/closed issues by type, issue state distribution, task statistics
by owner, and test-submission timing across an iteration.
The webhook sample content in the app’s extraction carries Chinese PR example data (demo payload); the event fields the extraction produces are English and queryable. See event-collection.md for how webhook events flow into the platform.