Gitlab hero border pattern left svg Gitlab hero border pattern right svg

Category Vision - GitLab Self-Monitoring

GitLab Self-Monitoring

We want to provide administrators with a great out-of-the-box observability solution for monitoring their GitLab instance, reducing the initial and ongoing effort required to operate GitLab.

There are three main use cases we want to improve:

Target Audience and Experience

The target audience is primarily ~"Persona: Systems Administrator", in particular the administrators responsible with operating GitLab.

We also plan to allow administrators to expose a user facing status page, to easily communicate the health of the instance and any active incidents.

What's Next & Why

MVC - Bundle Grafana

Currently we provide Prometheus out of the box, as well as a rich set of exporters and instrumentation, which are automatically scraped. However we rely on users to then connect the Prometheus instance to a dashboard solution, like Grafana, for which we provide a dashboard.

The quickest route to providing customers with a true out of the box Monitoring solution is to close the loop and bundle Grafana and the default GitLab dashboard.

MVC

Next - Using GitLab to monitor GitLab

GitLab includes an out-of-the-box project, where:

This would allow:

Next up, we could enable alerts to create issues and notify all administrators.

This would allow:

Future

This project could be expanded in a number of different ways.

Additional observability types

GitLab also contains support for additional observability tools, which could be enabled as well. This includes error tracking, tracing, and logging. By leveraging these features, we could provide more complete visibility into the health of the GitLab instance.

Public dashboard

Rather than build a specific feature for communicating the GitLab service health to end users, like the [I]nstance Health Dashboard](https://gitlab.com/gitlab-org/gitlab-ce/issues/50061), we could instead build on top of the upcoming Status Page features.

The monitoring features above will automatically drive the data for the status page.

Risks and Assumptions

Handling GitLab outages

In the event GitLab is down and cannot be used, there are alternatives:

Maturity Plan

Competitive Landscape

The competitive landscape for this feature revolves primarily around the operational costs of running a self-managed Gitlab instance. If GitLab is unreliable or requires too time and effort to install/maintain, users will explore alternatives.

Alternatives primarily fall into two categories:

Analyst Landscape

Not yet, but accepting merge requests to this document.

Top Customer Success/Sales Issue(s)

Not yet, but accepting merge requests to this document.

Top Customer Issue(s)

Top Internal Customer Issue(s)

Top Vision Item(s)

Not yet, but accepting merge requests to this document.