Maison >développement back-end >tutoriel php >Comment traiter les journaux de serveurs

Comment traiter les journaux de serveurs

Jennifer Aniston
Jennifer Anistonoriginal
2025-02-15 10:05:11110parcourir

How to Process Server Logs

Elk Stack: rationalisation de l'analyse du journal des applications PHP

Le dépannage des applications PHP commence souvent par l'examen des fichiers journaux. Cependant, le déchiffrement de la grande quantité de données à partir de plusieurs sources (PHP, Apache, MySQL, journaux système, journaux spécifiques au framework) peut être écrasant. Le Elk Stack (Elasticsearch, Logstash, Kibana) offre une solution puissante pour la gestion et l'analyse des journaux centralisés. Cet article vous guide en configurant la pile des wapitis localement, en expédiant les journaux Apache à Elasticsearch via Logstash et en analysant les données en kibana.

How to Process Server Logs

Caractéristiques de clé:

  • Dogue centralisée: consolide les journaux à partir de diverses sources pour une analyse complète.
  • Analyse en temps réel: Elasticsearch permet une recherche et une analyse en temps réel de grands ensembles de données.
  • Visualisation avancée des données: Kibana fournit des tableaux de bord et des visualisations intuitifs pour une exploration des données perspicaces.
  • Évolutivité: gère les volumes de journaux massifs à partir de plusieurs applications PHP.

Installation et configuration:

  1. Installation Java: Assurer Java 7 ou supérieur (Oracle JDK ou OpenJDK) est installé: sudo apt-get install default-jre

  2. Installation de la pile des élans (en utilisant APT):

    • elasticsearch:

      • Installez la touche GPG: wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
      • Ajouter le référentiel: echo "deb http://packages.elastic.co/elasticsearch/2.x/debian stable main" | sudo tee -a /etc/apt/sources.list.d/elasticsearch-2.x.list
      • Mettre à jour et installer: sudo apt-get update && sudo apt-get install elasticsearch
      • Configurer la sécurité (restreindre l'accès externe): modifier /etc/elasticsearch/elasticsearch.yml et définir network.host: localhost
      • redémarrer: sudo service elasticsearch restart
      • Activer sur le démarrage: sudo update-rc.d elasticsearch defaults 95 10
      • Vérifiez l'installation: sudo curl 'http://localhost:9200'
    • Logstash:

      • Ajouter le référentiel: echo "deb http://packages.elastic.co/logstash/2.2/debian stable main" | sudo tee -a /etc/apt/sources.list
      • Mettre à jour et installer: sudo apt-get update && sudo apt-get install logstash
    • kibana:

      • Ajouter le référentiel: echo "deb http://packages.elastic.co/kibana/4.5/debian stable main" | sudo tee -a /etc/apt/sources.list
      • Mettre à jour et installer: sudo apt-get update && apt-get install kibana
      • Configurer le port et l'hôte (dans /opt/kibana/config/kibana.yml): server.port: 5601, server.host: "0.0.0.0"
      • Démarrer Kibana: sudo service kibana start
      • Accès au kibana à http://localhost:5601/
  3. Expédition de journaux avec Logstash:

    • Créer un fichier de configuration de logstash (/etc/logstash/conf.d/apache-logs.conf):

      <code>input {
          file {
              path => "/var/log/apache2/access.log"
              type => "apache-access"
          }
      }
      filter {
        if [type] == "apache-access" {
          grok {
            match => { "message" => "%{COMBINEDAPACHELOG}" }
          }
        }
      }
      output {
          elasticsearch {}
      }</code>
    • Démarrer Logstash: /opt/logstash/bin/logstash -f /etc/logstash/conf.d/apache-logs.conf

  4. Analyse du journal Kibana: Une fois que les journaux sont indexés, créez un modèle d'index en kibana et explorez les données à l'aide des fonctionnalités de découverte, de visualisation et de tableau de bord. Utilisez des requêtes de recherche (texte libre, niveau de champ, opérateurs booléens, expressions régulières) et visualisations (graphiques à tarte, graphiques à barres, etc.) pour acquérir des informations.

How to Process Server Logs How to Process Server Logs How to Process Server Logs How to Process Server Logs How to Process Server Logs How to Process Server Logs

Conclusion:

La pile de wapiti fournit une solution robuste et évolutive pour gérer et analyser les journaux d'applications PHP. Son approche centralisée, ses capacités en temps réel et ses puissants outils de visualisation permettent aux développeurs et aux équipes d'opérations de résoudre efficacement les problèmes et d'optimiser les performances des applications. N'oubliez pas de consulter la documentation élastique officielle pour les informations les plus à jour et les meilleures pratiques.

(La section FAQS a omis pour la concision, car il s'agit d'une copie directe de l'original et ne nécessite pas de paraphrase dans le contexte de cette réécriture.)

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn