Observability of CI/CD Pipelines
With increasing complexity to delivery pipelines, it is especially important to consider Observability in the context of build and release of applications.
Benefits
Having proper instrumentation during build time helps gain insights into the various stages of the build and release process.
Helps developers understand where the pipeline performance bottlenecks are, based on the data collected. This helps in having data-driven conversations around identifying latency between jobs, performance issues, artifact upload/download times providing valuable insights into agent's availability and capacity.
Helps to identify trends in failures, thus allowing developers to quickly do root cause analysis.
Helps to provide an organization-wide view of pipeline health to easily identify trends.
Points to Consider
It is important to identify the Key Performance Indicators (KPIs) for evaluating a successful CI/CD pipeline. Where needed, additional tracing can be added to better record KPI metrics. For example, adding pipeline build tags to identify a 'Release Candidate' vs. 'Non-Release Candidate' helps in evaluating the end-to-end release process timeline.
Depending on the tooling used (Azure DevOps, Jenkins etc.,), basic reporting on the pipelines is available out-of-the-box. It is important to evaluate these reports against the KPIs to understand if a custom reporting solution for their pipelines is needed. If required, custom dashboards can be built using third-party tools like Grafana or Power BI Dashboards.
Last updated