Les meilleurs outils et technologies pour la gestion et l'analyse des journaux sous Linux
Introduction :
Dans les systèmes Linux, les journaux sont un composant très important. Ils enregistrent l'état de fonctionnement et les événements du système, fournissant ainsi aux administrateurs système des informations critiques pour dépanner et analyser les performances du système. Cependant, à mesure que la taille du serveur augmente et que la quantité de journaux continue d’augmenter, la gestion et l’analyse manuelles des journaux deviennent irréalisables. Par conséquent, trouver un outil de gestion et d’analyse des journaux efficace et fiable devient crucial. Cet article présentera plusieurs des meilleurs outils et techniques largement utilisés sous Linux.
source s_network { tcp(ip(0.0.0.0) port(514)); udp(ip(0.0.0.0) port(514)); }; destination d_file { file("/var/log/mylog.log"); }; log { source(s_network); destination(d_file); };
La configuration ci-dessus écoutera le port 514 sur tous les réseaux et enregistrera les journaux reçus dans le fichier /var/log/mylog.log. Grâce à la configuration de syslog-ng, vous pouvez gérer et transférer les journaux de manière flexible en fonction de vos besoins.
input { file { path => "/var/log/apache2/access.log" start_position => "beginning" } } filter { grok { match => { "message" => "%{COMBINEDAPACHELOG}" } } date { match => [ "timestamp", "dd/MMM/yyyy:HH:mm:ss Z" ] } } output { elasticsearch { hosts => ["localhost:9200"] index => "apache-access-%{+YYYY.MM.dd}" } stdout { codec => rubydebug } }
La configuration ci-dessus collectera les journaux d'accès Apache à partir du chemin spécifié et utilisera la correspondance de modèles Grok et les plug-ins Date pour analyser et transformer les journaux. Il enverra ensuite les journaux traités au serveur Elasticsearch via le plugin Elasticsearch et les indexera dans un index au format date.
# 搜索所有含有“error”的日志 GET /mylog/_search { "query": { "match": { "message": "error" } } } # 聚合统计每个级别的日志数量 GET /mylog/_search { "size": 0, "aggs": { "log_level": { "terms": { "field": "level.keyword" } } } }
Le code ci-dessus recherchera dans l'index nommé "mylog" les journaux contenant le mot-clé "error" et comptera le numéro de chaque niveau de journal.
Résumé :
La gestion et l'analyse des journaux sont cruciales pour la gestion et le dépannage du système. Cet article présente les meilleurs outils et technologies de gestion et d'analyse des journaux sous la plate-forme Linux, notamment syslog-ng, Logstash et Elasticsearch. En configurant et en utilisant correctement ces outils, les journaux système peuvent être gérés et analysés efficacement, et les performances du système et les capacités de dépannage peuvent être améliorées. J'espère que cet article sera utile aux lecteurs dans la gestion et l'analyse des journaux Linux.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!