Skip to content
This repository has been archived by the owner on Jun 14, 2019. It is now read-only.

nomaster/gitlab-exporter

 
 

Repository files navigation

Prometheus Gitlab Exporter

This uses Gitlab's API to fetch some data and exposes it to Prometheus.

Getting Started

Get your personal access token from https://git.example.com/profile/personal_access_tokens

Run with Docker:

docker run --rm -it \
-p 3001:3001 \
-e URL=$YOUR_GITLAB_URL
-e TOKEN=$YOUR_GITLAB_TOKEN
nomaster/gitlab-exporter

Install from Git

Install requirements, e.g.:

pip install -r requirements.txt

Run this:

./gitlab_exporter.py

Check metrics:

curl localhost:3001/metrics

Config

The following environment variables may be set:

LOGLEVEL=INFO PORT=3002 INTERVAL=180 ./gitlab_exporter.py
Environment Variable Description
LOGLEVEL Standard Python log level
PORT Port to listen on
INTERVAL Interval in seconds to wait between data fetches
URL URL to your GitLab installation
TOKEN Your personal access token for the GitLab API

Notes

There are efforts for native Prometheus integration in Gitlab, e.g. https://gitlab.com/gitlab-org/gitlab-workhorse/issues/61

Gitlab API

Prometheus Exporter

https://github.com/prometheus/client_python

Clearing Gitlab's Sidekiq Counters

For an omnibus install:

/opt/gitlab/embedded/bin/redis-cli -s '/var/opt/gitlab/redis/redis.socket' del resque:gitlab:stat:processed
/opt/gitlab/embedded/bin/redis-cli -s '/var/opt/gitlab/redis/redis.socket' del resque:gitlab:stat:failed

http://stackoverflow.com/questions/15834911/how-do-i-reset-my-sidekiq-counters

About

Prometheus GitLab Exporter

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%