ELK & Grafana
Note
C'est pas encore vraiment interssant, il faut que je rajoute des choses.
Logstash : Usage Technique et CLI
1. Tester une configuration Logstash en "Foreground" (CLI)
Lorsqu'on crée un nouveau pipeline ou qu'on teste un plugin (comme SNMP), il est très utile de lancer Logstash directement dans le terminal plutôt que de redémarrer le service systemd en tâche de fond. Cela permet de voir les erreurs de syntaxe, les problèmes de droits, ou d'utiliser une sortie stdout pour voir la donnée brute.
Commande pour tester une configuration isolée :
sudo /usr/share/logstash/bin/logstash -f /chemin/vers/fichier_test.conf --path.settings /etc/logstash
Explications des paramètres :
* /usr/share/logstash/bin/logstash : Emplacement du binaire Logstash (standard sous Linux/Debian).
* -f <fichier> : Demande à Logstash d'exécuter uniquement ce fichier de configuration, ignorant les configurations habituelles dans /etc/logstash/conf.d/.
* --path.settings /etc/logstash : Important. Indique à Logstash où trouver ses paramètres globaux (logstash.yml, configuration des logs via log4j2, etc.). Sans ce paramètre, Logstash risque de ne pas se lancer correctement lorsqu'il est appelé manuellement.
Exemple pratique : Création d'un Input SNMP avec sortie console
Plutôt que d'écrire directement dans Elasticsearch, on peut créer un fichier /tmp/test-snmp.conf avec un output { stdout { codec => rubydebug } } :
input {
snmp {
hosts => [{ host => "udp:10.69.9.1/161" version => "3" }]
get => [".1.3.6.1.4.1.534.6.6.7.3.4.1.4.0.1.1"]
interval => 10
security_name => "my_user"
auth_protocol => "sha"
auth_pass => "MyAuthPass"
priv_protocol => "aes"
priv_pass => "MyPrivPass"
security_level => "authPriv"
}
}
output {
stdout { codec => rubydebug }
}
Puis on exécute la commande de test. Les événements générés apparaîtront en clair dans le terminal. (Faire Ctrl+C pour arrêter).
2. Validation réseau (depuis le serveur Logstash)
Avant de chercher une erreur dans la configuration Logstash, s'assurer que le collecteur peut joindre la cible.
- Vérifier l'ouverture d'un port UDP (ex: SNMP) : Note : Si la commande reste bloquée, c'est généralement le signe d'un blocage pare-feu (Drop/Deny) sur le chemin.
3. Emplacements standards utiles
- Fichiers de configuration des pipelines :
/etc/logstash/conf.d/(Les fichiers .conf ajoutés ici sont lus au démarrage du service si la configuration par défaut n'est pas altérée). - Fichier de routage des pipelines :
/etc/logstash/pipelines.yml - Logs du service Logstash :
/var/log/logstash/logstash-plain.log(À consulter en priorité sisystemctl status logstashindique une erreur).