Non, nous n'allons pas parler d'un personnage de l'univers Marvel ici mais d'un outil très pratique pour les admin sys !
[Loki](https://grafana.com/oss/loki/) est un agrégateur de logs créé et maintenu par l'équipe derrière [Grafana](https://grafana.com/grafana/). C'est une alternative plus simple à la [stack ELK](https://www.elastic.co/fr/what-is/elk-stack) pour la centralisation et la gestion des logs.
# Fonctionnement
Loki se compose de trois composants **Promtail**, **Loki** et **Grafana** que nous verrons brièvement avant de procéder au déploiement.
## Promtail
Promtail est un agent qui expédie le contenu des journaux locaux vers une instance Loki privée ou Grafana Cloud. Il est généralement déployé sur chaque machine sur laquelle des applications doivent être surveillées.
Il agit principalement:
- Découvre des cibles
- Attache des étiquettes aux flux de journaux
- Les pousse vers l'instance Loki.
Actuellement, Promtail peut suivre les journaux de deux sources: les fichiers journaux locaux et le journal systemd (sur les machines AMD64 uniquement). [source](https://grafana.com/docs/loki/latest/clients/promtail/)
## Loki
Tel que cité par les créateurs de Loki, Loki est un système d'agrégation de journaux scalable horizontalement, hautement disponible et inspiré de Prometheus. Loki utilise le même mécanisme de découverte de service que celui de Prometheus et ajoute des étiquettes au flux de journal au lieu de l'indexation. Pour cette raison, les journaux reçus de Promtail se composent du même ensemble d'étiquettes que celui des métriques d'application. Ainsi, il offre non seulement une meilleure commutation de contexte entre les journaux et les métriques, mais évite également la journalisation complète des index.
## Grafana
Grafana est une plate-forme open-source spécialisé dans l'analyse et la surveillance. Il fonctionne spécifiquement sur des données chronologiques provenant de sources telles que Prometheus et Loki. De plus, il vous permet d'interroger, de visualiser, d'alerter sur les métriques quel que soit son emplacement stocké. Il aide à créer, explorer et partager des tableaux de bord et encourage la culture axée sur les données.
# Installation
Evidemment, si vous ne l'aviez pas encore deviné, nous allons déployer Loki dans un conteneur Docker avec Docker-Compose !
Vous pouvez vérifier le statut du service avec `systemctl status promtail.service`. L'agent Promtail est maintenant installé et configuré pour envoyer vos logs systemd vers Loki.
# Grafana
## Configuration de Loki
Pour voir les logs et leurs statistiques, il faut connecter Loki dans Grafana.
Et configurer la source de donnée de cette façon :
Dans URL, mettez l'URL de votre Loki `http://serveur:3100` ou `nom-du-container:3100` si vous utilisez Loki sous docker sur le même réseau que Grafana.