How application performance monitoring metrics helps developers

Dov Hershkovitch and Saumya Upadhyaya ·
May 7, 2020 · 3 min read

Application Performance Metrics, also referred to as GitLab Metrics, is designed for developers who need to understand the impact of the changes they are making on performance, and DevOps engineers/operators who are tasked with keeping the production systems up and running. GitLab Metrics, which is at viable maturity, can automatically detect and monitor Kubernetes clusters deployed via GitLab. The GitLab Metrics tool can also monitor all of your custom application metrics so that you can see how your entire system is behaving and performing without leaving the familiar GitLab interface.

GitLab has application performance monitoring tightly and automatically integrated into the DevOps process, which allows you to move seamlessly from development to production with confidence. GitLab Metrics is just one part of the GitLab Monitoring solution. When the whole suite of GitLab Monitoring tools is used together, we can help you decrease the frequency and severity of production incidents.

What’s under the hood?

GitLab Metrics is powered by Prometheus. Prometheus is quickly becoming the de facto standard for metrics for the cloud native community, because it rises to the top for monitoring Kubernetes and the available integrations cover the major elements of the cloud native ecosystem.

How to use GitLab Metrics?

GitLab Metrics can be used in two ways.

First, you can use Prometheus as a managed application within GitLab. Prometheus can be installed into your GitLab managed Kubernetes cluster with one click.

System Metrics How the system metrics dashboard looks to users.

When integrated with Prometheus and Kubernetes, GitLab Metrics includes the following powerful capabilities:

Custom Dashboards Use a YAML file to configure a customized Metrics dashboard.

If you already have an operational Prometheus instance that you would like to integrate with GitLab, you can simply point to the Prometheus server from within GitLab. In this case, performance metrics are retrieved from the external instance of Prometheus, and displayed within the GitLab interface.

How is GitLab dogfooding our metrics capability?

At GitLab, dogfooding is one of the main tenets of our results value.

The GitLab infrastructure team is used as an internal customer, and they provide feedback which feeds directly into how we develop our metrics capabilities. Prometheus and Grafana are two tools the GitLab infrastructure team uses. One of the main reasons the infrastructure team was reluctant to implement GitLab metrics was our previously inadequate graphing capabilities. To encourage our infrastructure team to dogfood metrics, we are focused on filling critical and non-critical gaps in GitLab metrics charts, which initiates a feedback loop for the product. Our goal is to eventually phase out Grafana and work exclusively with Prometheus and GitLab charts to monitor GitLab.com, we will do it on our GitLab way, iteratively, first we'll replace all of our publicly facing dashboard.

What's next for GitLab Metrics

Get started by visiting the GitLab Metrics documentation page and directions page. We’d love your help with prioritizing work on the most valuable improvements to the GitLab Metrics solution.

To report a bug or request a feature or enhancement, follow these steps:

Cover image by chuttersnap on Unsplash

“Automatically monitor the performance of your deployed applications from your @gitLab interface” – Dov Hershkovitch and Saumya Upadhyaya

Click to tweet

Free eBook: The GitLab Remote Playbook

Learn to stabilize your work-from-home team and dive deep on topics including asynchronous workflows, meetings, informal communication, and management.

Download now
Open in Web IDE View source