Présentation
Grâce à cette intégration, vous pouvez :
- Visualiser et surveiller des métriques recueillies via Gitlab par l’intermédiaire de Prometheus
Consultez la documentation de Gitlab (en anglais) pour en savoir plus sur Gitlab et sur son intégration à Prometheus.
Configuration
Installation
Le check Gitlab est inclus avec le package de l’Agent Datadog : vous n’avez donc rien d’autre à installer sur vos serveurs Gitlab.
Configuration
Host
Pour configurer ce check lorsque l’Agent est exécuté sur un host :
Collecte de métriques
Modifiez le fichier gitlab.d/conf.yaml
dans le dossier conf.d/
à la racine du répertoire de configuration de votre Agent afin de spécifier l’endpoint de métriques de Gitlab. Consultez le fichier d’exemple gitlab.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
Sur la page des paramètres Gitlab, assurez-vous que l’option Enable Prometheus Metrics
est activée. Vous devrez disposer des droits administrateur. Pour en savoir plus sur l’activation de la collecte de métriques, consultez la documentation de Gitlab.
Autorisez l’accès aux endpoints de surveillance en modifiant /etc/gitlab/gitlab.rb
pour y ajouter la ligne suivante :
gitlab_rails['monitoring_whitelist'] = ['127.0.0.0/8', '192.168.0.1']
Remarque : enregistrez et redémarrez Gitlab pour voir les modifications.
Redémarrez l’Agent.
Remarque : les métriques dans gitlab/metrics.py sont collectées par défaut. L’option de configuration allowed_metrics
dans init_config
collecte des métriques antérieures spécifiques. Selon la version et la configuration de votre instance Gitlab, il se peut que certaines métriques ne soient pas collectées. Consultez la documentation de Gitlab pour en savoir plus sur la collecte de ses métriques.
Collecte de logs
La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml
:
Modifiez ensuite gitlab.d/conf.yaml
en supprimant la mise en commentaire des lignes logs
en bas du fichier. Mettez à jour la ligne path
en indiquant le bon chemin vers vos fichiers de log Gitlab.
logs:
- type: file
path: /var/log/gitlab/gitlab-rails/production_json.log
service: '<SERVICE_NAME>'
source: gitlab
- type: file
path: /var/log/gitlab/gitlab-rails/production.log
service: '<SERVICE_NAME>'
source: gitlab
- type: file
path: /var/log/gitlab/gitlab-rails/api_json.log
service: '<SERVICE_NAME>'
source: gitlab
Redémarrez l’Agent.
Environnement conteneurisé
Consultez la documentation relative aux modèles d’intégration Autodiscovery pour découvrir comment appliquer les paramètres ci-dessous à un environnement conteneurisé.
Collecte de métriques
Paramètre | Valeur |
---|
<NOM_INTÉGRATION> | gitlab |
<CONFIG_INIT> | vide ou {} |
<CONFIG_INSTANCE> | {"gitlab_url":"http://%%host%%/", "prometheus_endpoint":"http://%%host%%:10055/-/metrics"} |
Collecte de logs
La collecte des logs est désactivée par défaut dans l’Agent Datadog. Pour l’activer, consultez la section Collecte de logs avec Kubernetes.
Paramètre | Valeur |
---|
<CONFIG_LOG> | {"source": "gitlab", "service": "gitlab"} |
Validation
Lancez la sous-commande status de l’Agent et cherchez gitlab
dans la section Checks.
Données collectées
Métriques
Événements
Le check Gitlab n’inclut aucun événement.
Checks de service
Le check Gitlab inclut des checks de service de santé, de readiness et de liveness.
gitlab.prometheus_endpoint_up :
Renvoie CRITICAL
si le check ne parvient pas à se connecter à l’endpoint de métriques Prometheus de l’instance Gitlab.
gitlab.health :
Renvoie CRITICAL
si le check ne parvient pas à se connecter à l’instance Gitlab.
gitlab.liveness :
Renvoie CRITICAL
si le check ne parvient pas à se connecter à l’instance Gitlab en raison d’un blocage de contrôleurs Rails.
gitlab.readiness :
Renvoie CRITICAL
si l’instance Gitlab parvient à accepter le trafic via des contrôleurs Rails.
Dépannage
Besoin d’aide ? Contactez l’assistance Datadog.
Intégration Gitlab Runner
Présentation
Grâce à cette intégration, vous pouvez :
- Visualiser et surveiller des métriques collectées via Gitlab Runners par l’intermédiaire de Prometheus
- Confirmer que Gitlab Runner parvient à se connecter à Gitlab
Consultez la documentation de Gitlab Runner pour en savoir plus sur Gitlab Runner et sur son intégration à Prometheus.
Configuration
Suivez les instructions ci-dessous pour installer et configurer ce check lorsque l’Agent est exécuté sur un host. Consultez la documentation relative aux modèles d’intégration Autodiscovery pour découvrir comment appliquer ces instructions à des environnements conteneurisés.
Installation
Le check Gitlab Runner est inclus avec le package de l’Agent Datadog : vous n’avez donc rien d’autre à installer sur vos serveurs Gitlab.
Configuration
Modifiez le fichier gitlab_runner.d/conf.yaml
dans le dossier conf.d/
à la racine du répertoire de configuration de votre Agent afin de spécifier l’endpoint de métriques Prometheus de Runner ainsi que le master Gitlab à utiliser pour le check de service. Consultez le fichier d’exemple gitlab_runner.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
Remarque : l’élément allowed_metrics
de la section init_config
vous permet d’indiquer les métriques à extraire.
Attention : certaines métriques doivent être transmises en tant que rate
(p. ex., ci_runner_errors
).
Validation
Lancez la sous-commande status
de l’Agent et cherchez gitlab_runner
dans la section Checks.
Données collectées
Métriques
Collecte de logs
Dans votre fichier de configuration gitlab_runner
, définissez le format de log sur json
(disponible pour les versions >=11.4.0 de Gitlab Runner ) :
La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml
:
Ajoutez l’utilisateur dd-agent
au groupe systemd-journal
en exécutant la commande :
usermod -a -G systemd-journal dd-agent
Ajoutez ce bloc de configuration à votre fichier gitlab_runner.d/conf.yaml
pour commencer à recueillir vos logs Gitlab Runner :
logs:
- type: journald
source: gitlab-runner
Consultez le fichier d’exemple gitlab_runner.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
Redémarrez l’Agent.
Événements
Le check Gitlab Runner n’inclut aucun événement.
Checks de service
Le check Gitlab Runner fournit un check de service visant à s’assurer que Runner peut communiquer avec le master Gitlab, ainsi qu’un autre check de service vérifiant la
disponibilité du endpoint Prometheus local.
Dépannage
Besoin d’aide ? Contactez l’assistance Datadog.