# 7.2.10.2.2. Configuration / fichiers utiles

## 7.2.10.2.2.1. Fichier de configuration

La configuration fournie par la solution VITAM permet notamment de regrouper les notifications par alerte et d’inhiber les alertes d’avertissement dans le cas où des mêmes alertes critiques sont déclenchées.

`alertmanager.yml`

    global:
    {% if http_proxy_environnement is defined and http_proxy_environnement|length > 0 %}
      http_config:
        proxy_url: '{{ http_proxy_environnement }}'
    {% endif %}
      resolve_timeout: 5m

    route:
      group_by: ['alertname']
      group_wait: 10s
      group_interval: 10s
      repeat_interval: 1h
    {% if prometheus.alertmanager.receivers is defined and prometheus.alertmanager.receivers|length > 0 %}
      receiver: {{ prometheus.alertmanager.receivers.0.name }}
    {% else %}
      receiver: 'null'
    {% endif %}

      routes:
        - matchers:
            - severity = "warning"
          repeat_interval: 24h  # Warning: 1 alert per day

    {% if prometheus.alertmanager.receivers is defined and prometheus.alertmanager.receivers|length > 0 %}
    receivers:
    {{ prometheus.alertmanager.receivers | to_nice_yaml(width=80, indent=2) }}
    {% else %}
    receivers:
    - name: 'null'
    {% endif %}

    inhibit_rules:
      - source_matchers:
          - severity = "critical"
        target_matchers:
          - severity = "warning"
        equal: ['alertname', 'dev', 'instance']

## 7.2.10.2.2.2. Configuration de Prometheus

Ansible permet de générer automatiquement la configuration Alertmanager dans le fichier `prometheus.yml`.

Il suffit d’ajouter les machines dédiées à Alertmanager dans le groupe `[hosts_alertmanager]` de votre fichier d’inventaire.

## 7.2.10.2.2.3. Fichier de variable d’environnement

    global:
    {% if http_proxy_environnement is defined and http_proxy_environnement|length > 0 %}
      http_config:
        proxy_url: '{{ http_proxy_environnement }}'
    {% endif %}
      resolve_timeout: 5m

    route:
      group_by: ['alertname']
      group_wait: 10s
      group_interval: 10s
      repeat_interval: 1h
    {% if prometheus.alertmanager.receivers is defined and prometheus.alertmanager.receivers|length > 0 %}
      receiver: {{ prometheus.alertmanager.receivers.0.name }}
    {% else %}
      receiver: 'null'
    {% endif %}

      routes:
        - matchers:
            - severity = "warning"
          repeat_interval: 24h  # Warning: 1 alert per day

    {% if prometheus.alertmanager.receivers is defined and prometheus.alertmanager.receivers|length > 0 %}
    receivers:
    {{ prometheus.alertmanager.receivers | to_nice_yaml(width=80, indent=2) }}
    {% else %}
    receivers:
    - name: 'null'
    {% endif %}

    inhibit_rules:
      - source_matchers:
          - severity = "critical"
        target_matchers:
          - severity = "warning"
        equal: ['alertname', 'dev', 'instance']

## 7.2.10.2.2.4. Fichiers de données

Ce service utilise des fichiers de données localisés dans le répertoire `/vitam/data/alertmanager/`