web-dev-qa-db-fra.com

Envoyer un message d'écho à graylog2 via GELF TCP 12201 port

Je dois envoyer un message au serveur graylog2 via echo pour tester si le% {@ type} pour la fonction est correct, mais une fois que je fais l'écho, cela dans le support GELF n'arrive pas sur mon serveur graylog2. S'il redémarre graylog2, les messages à son sujet arrivent sur le serveur graylog2.

Exemple de message d'écho:

echo '{"version": "1.1","Host":"example.org","short_message":"A short message that helps you identify what is going on","full_message":"Backtrace here\n\nmore stuff","level":1,"_user_id":9001,"_some_info":"foo","_some_env_var":"bar"}' | nc -w 1 my.graylog.server 12201

Qu'est-ce que je fais mal? Le mode graylog --debug n'affiche rien. Il ne voit même pas le message entrer.

Éditer:

L'entrée Graylog2 est configurée pour GELF TCP et montre les connexions actives et elle augmente lorsque j'essaie de faire écho, mais rien n'atteint le serveur comme pour le message.

20
mYzk

Il semble que GELF TCP input a besoin d'un caractère nul à la fin de chaque message Gelf.

Vous devez donc envoyer:

echo -e '{"version": "1.1","Host":"example.org","short_message":"Short message","full_message":"Backtrace here\n\nmore stuff","level":1,"_user_id":9001,"_some_info":"foo","_some_env_var":"bar"}\0' | nc -w 1 my.graylog.server 12201

Cette réponse a été trouvée dans un discussion sur les problèmes de Graylog .

29
user236376

Comme j'essayais de vérifier qu'une instance Logstash écoutait correctement les entrées GELF, j'ai trouvé ce fil.

Voici une commande qui fonctionnera pour Logstash + Gelf sur UDP:

echo '{"version": "1.1","Host":"example.org","short_message":"A short message that helps you identify what is going on","full_message":"Backtrace here\n\nmore stuff","level":1,"_user_id":9001,"_some_info":"foo","_some_env_var":"bar"}' | gzip | nc -u -w 1 127.0.0.1 12201

Remarquerez que :

  • un simple echo suffit, pas besoin de -e
  • le message est compressé, sinon vous obtiendrez cette erreur: Could not find parser for header: [123, 34] dans les journaux Logstash
  • netcat envoie sur UDP
7
jlecour