đŸ‘» Bienvenue dans la documentation de LogBuster

LogBuster est un outil puissant pour analyser les fichiers de logs Apache. Grùce à LogBuster, vous pouvez extraire des informations essentielles, gérer des erreurs de format et bien plus encore.

                                 .-. .-')                 .-')    .-') _     ('-.  _  .-')  ,---.
                                 \  ( OO )               ( OO ). (  OO) )  _(  OO)( \( -O ) |   |
,--.      .-'),-----.   ,----.    ;-----.\  ,--. ,--.   (_)---\_)/     '._(,------.,------. |   |
|  |.-') ( OO'  .-.  ' '  .-./-') | .-.  |  |  | |  |   /    _ | |'--...__)|  .---'|   /`. '|   |
|  | OO )/   |  | |  | |  |_( O- )| '-' /_) |  | | .-') \  :` `. '--.  .--'|  |    |  /  | ||   |
|  |`-' |\_) |  |\|  | |  | .--, \| .-. `.  |  |_|( OO ) '..`''.)   |  |  (|  '--. |  |_.' ||  .'
(|  '---.'  \ |  | |  |(|  | '. (_/| |  \  | |  | | `-' /.-._)   \   |  |   |  .--' |  .  '.'`--'
|      |    `'  '-'  ' |  '--'  | | '--'  /('  '-'(_.-' \       /   |  |   |  `---.|  |\  \ .--.
`------'      `-----'   `------'  `------'   `-----'     `-----'    `--'   `------'`--' '--''--'

(҂-_‱)⊃═O FonctionnalitĂ©s principales

  • Extraire des statistiques clĂ©s : Obtenez des donnĂ©es prĂ©cieuses sur vos fichiers de logs.

  • Exporter les donnĂ©es en JSON : AccĂ©dez Ă  un format structurĂ© pour vos analyses.

  • Exporter des graphiques : GĂ©nĂ©rez des graphiques de vos fichiers de logs.

  • Filtrer les analyses : Filtrez les analyses en toute simplicitĂ©.

  • GĂ©rer les erreurs de format avec prĂ©cision : Identifiez rapidement les anomalies et les erreurs de vos fichiers log.

d(■᎑■⌐) Utilisation

` python app/main.py chemin_log [-s SORTIE] [-i IP] [-c CODE_STATUT_HTTP] [--camembert CAMEMBERT] `

  • chemin_log : Le chemin vers le fichier de log Apache Ă  analyser.

  • -s SORTIE (optionnel) : Le chemin oĂč sauvegarder les rĂ©sultats de l’analyse. Si non spĂ©cifiĂ©, les rĂ©sultats seront sauvegardĂ©s dans un fichier analyse-log-apache.json.

  • -i IP (optionnel) : Le filtre Ă  appliquer sur les adresses IP des entrĂ©es du fichier de log. Uniquement les entrĂ©es avec cette adresse IP seront analysĂ©es.

  • -c CODE_STATUT_HTTP (optionnel) : Le filtre Ă  appliquer sur les code de statut http des entrĂ©es du fichier de log. Uniquement les entrĂ©es avec ce code de statut http seront analysĂ©es.

  • –camembert CAMEMBERT : (optionnel) : Active la gĂ©nĂ©ration de graphiques camemberts dans lors de l’analyse pour les statistiques compatibles. Les statistiques comptatibles.

(ĂČ_Ăł)⊃ Format de l’analyse

Lors de l’analyse des fichiers de logs, LogBuster fait en sorte de regrouper les statistiques clĂ©s par catĂ©gories.

Voici ci-dessous le format de l’analyse en JSON:

  • chemin: chemin absolu du fichier

  • total_entrees: nombre total d’entrĂ©es dans le fichier

  • filtre: filtres appliquĂ©s Ă  l’analyse
    • adresse_ip: filtre sur l’adresse IP (None si dĂ©sactivĂ©)

    • code_statut_http: filtre sur le code de statut http (None si dĂ©sactivĂ©)

  • statistiques:
    • total_entrees_filtre: nombre total d’entrĂ©es analysĂ©es

    • requetes:
      • top_urls: top 3 des urls
        • dictionnaires contenant:
          • url: ressource demandĂ©e

          • total: nombre d’entrĂ©e avec cette ressource demandĂ©e

          • taux: pourcentage d’entrĂ©e avec cette ressource demandĂ©e

    • reponses:
      • repartition_code_statut_http: rĂ©partition des codes de statut http
        • dictionnaires contenant:
          • code: code de statut http retournĂ©

          • total: nombre d’entrĂ©e avec ce code de statut http retournĂ©

          • taux: pourcentage d’entrĂ©e avec ce code de statut http retournĂ©

Pour les graphiques camemberts, un fichier HTML est gĂ©nĂ©rĂ© avec ce graphique. NĂ©anmoins, toutes les statistiques ne sont pas compatibles avec ce type d’affichage.

Voici la liste des statistiques comptatibles avec les graphiques:

  • repartition_code_statut_http : RĂ©partition des codes de statut HTTP. (nom: camembert-code_statut_http)

(àž‡â€Ì€áŽ‘â€Ì)àž‡ Format des fichier de log Apache

Le format de log Apache pris en charge est celui utilisĂ© par le fichier access.log. Ces logs Apache contiennent des informations dĂ©taillĂ©es sur les requĂȘtes HTTP traitĂ©es par le serveur. Chaque ligne d’un fichier reprĂ©sente une requĂȘte individuelle, et les informations sont gĂ©nĂ©ralement sĂ©parĂ©es par des espaces ou des caractĂšres spĂ©cifiques.

Format commun (Common Log Format)

Un fichier de log Apache standard suit généralement un format similaire au suivant :

127.0.0.1 - - [10/Oct/2025:13:55:36 +0000] "GET /index.html HTTP/1.1" 200 2326

  1. IP de l’utilisateur (127.0.0.1) : L’adresse IP de l’utilisateur qui a effectuĂ© la requĂȘte.

  2. Identifiant de l’utilisateur (vide ici) : L’identifiant de l’utilisateur, souvent vide ou un tiret (-).

  3. Identifiant de l’utilisateur authentifiĂ© (vide ici) : Si l’utilisateur est authentifiĂ©, cet identifiant sera visible, sinon il sera Ă©galement vide ou un tiret (-).

  4. Date et heure de la requĂȘte ([10/Oct/2025:13:55:36 +0000]) : La date et l’heure prĂ©cises de la requĂȘte, suivies du fuseau horaire.

  5. RequĂȘte HTTP (« GET /index.html HTTP/1.1 ») : La mĂ©thode HTTP utilisĂ©e (ici GET), l’URL demandĂ©e (ici /index.html), et la version du protocole HTTP (ici HTTP/1.1).

  6. Code de statut HTTP (200) : Le code de statut retournĂ© par le serveur (ici, 200 indique que la requĂȘte a rĂ©ussi).

  7. Taille de la réponse (2326) : La taille en octets de la réponse envoyée au client.

Dans LogBuster, l”IP de l’utilisateur et la Date et heure de la requĂȘte sont obligatoires, sinon un message d’erreur est retournĂ©e.

Format combinĂ© (Combined Log Format)

Le format combinĂ© permet d’ajouter plus de dĂ©tails sur chaque requĂȘte. Voici un exemple de ligne de log avec ce format :

127.0.0.1 - - [10/Oct/2025:13:55:36 +0000] "GET /index.html HTTP/1.1" 200 2326 "http://referrer.com" "Mozilla/5.0"

Dans ce format, deux informations supplĂ©mentaires Ă  la fin de l’entrĂ©e sont prĂ©sentes :

  1. RĂ©fĂ©rent HTTP ( »http://referrer.com ») : L’URL de la page depuis laquelle la requĂȘte a Ă©tĂ© faite. Cela peut ĂȘtre vide si la requĂȘte provient directement de l’utilisateur sans rĂ©fĂ©rence.

  2. Agent utilisateur (« Mozilla/5.0 ») : L’agent utilisateur indique quel navigateur ou appareil a effectuĂ© la requĂȘte.

Assurez-vous que votre fichier de log Apache suit un format cohĂ©rent, comme ceux mentionnĂ©s ci-dessus, afin d’obtenir des rĂ©sultats prĂ©cis et fiables lors de l’utilisation de LogBuster. Pour plus d’informations, consultez la documentation Apache sur ce lien : https://httpd.apache.org/docs/2.4/fr/logs.html

(∩x_x) PrĂ©cautions concernant l’affichage des caractĂšres spĂ©ciaux

Le projet LogBuster utilise des caractĂšres Unicode, tels que des symboles spĂ©ciaux, dans le terminal pour rendre l’affichage plus plaisant. Assurez-vous que votre terminal est configurĂ© pour prendre en charge l’affichage de caractĂšres Unicode afin de profiter pleinement de l’expĂ©rience utilisateur.

Si vous rencontrez des problùmes d’affichage (comme des symboles manquants ou mal rendus), vous pouvez essayer les solutions suivantes :

  • Utiliser un terminal compatible avec Unicode (par exemple, Terminal sous macOS, Windows Terminal sous Windows, ou des terminaux comme GNOME Terminal ou Konsole sous Linux).

  • VĂ©rifier que votre terminal utilise une police qui prend en charge les caractĂšres Unicode (par exemple, DejaVu Sans Mono ou Consolas).

Δ(( ꐑÂș-° )ꐑ Documentation du projet

Consultez les différentes sections pour en savoir plus sur le projet LogBuster :

—

© 2025 - Projet LogBuster