IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation et administration système Perl Discussion :

Analyse de log en continu


Sujet :

Programmation et administration système Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Avril 2010
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1
    Par défaut Analyse de log en continu
    Bonjour

    Notre serveur de mail crache des logs tres volumineuses, je souhaite les envoyer dans un script perl mais la je seche sur la meilleure solution a utiliser.

    Les information intéressantes sont présentes sur plusieurs ligne identifiables via un id

    Ci dessous un exemple :
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 mod=session cmd=connect ip=23.85.98.81 country=us lip=172.192.33.12 prot=smtp:smtp routes= notroutes=internalnet,outbound,psm_client_users,spfsafe,tls perlwait=0.001
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 mod=session cmd=resolve host=mail-bw0-f221.google.com resolve=ok reverse=mail-bw0-f221.google.com routes= notroutes=firewallsafe
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=mail cmd=env_from value=emailsender@gmail.com qid=n5ntw8gq0-1 tls= routes= notroutes=SenderAdressInbound host=mail-bw0-f221.google.com ip=23.85.98.81
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=access cmd=run rule=spamsafe duration=0.000
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=session cmd=judge module=access rule=spamsafe
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=session cmd=dispose module=access rule=spamsafe action=execute value="svar('SpamScore', 0)"
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=mail cmd=env_rcpt r=1 value=emailrecipent@mydomain.co.uk verified=1 routes=default_inbound,inbound
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=mail cmd=attachment id=0 file=text.txt mime=text/plain type=txt omime=text/plain oext=txt corrupted=0 protected=0 size=61 virtual=0 a=0
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=mail cmd=attachment id=0 file=text.html mime=text/html type=html omime=text/html oext=html corrupted=0 protected=0 size=64 virtual=0 a=0
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=access cmd=run rule=spamsafe duration=0.001
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=session cmd=judge module=access rule=spamsafe
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=session cmd=dispose module=access rule=spamsafe action=execute value="svar('SpamScore', 0)"
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=av cmd=run rule=virusdefault_clean name= cleaned=0 vendor=fsecure duration=0.000
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=spam cmd=run rule=isaspam_safe policy=isaspam score=0 classifier= adjust=0 reason=safe engine=5.0.0-0908210000 definitions=main-1004150009 raw=0 tests=PP_FORCED_SCORE duration=0.000
    Apr 15 09:47:04 MAILSRV m=1 x=n5ntw8gq0-1 mod=session cmd=judge module=av rule=virusdefault_clean
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=session cmd=judge module=spam rule=isaspam_safe
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 cmd=send profile=mail qid=o3F7gVAF004026 emailrecipent@mydomain.co.uk
    Apr 15 09:47:04 MAILSRV rprt: s=n5ntw8gq0 m=1 x=n5ntw8gq0-1 mod=mail cmd=msg module=av rule=virusdefault_clean action=continue attachments=0 rcpts=1 routes=default_inbound,inbound size=1897 guid=d2be999d68dd942ae3812c8bbdd25e81 hdr_mid=<


    Je souhaite transformer ce bloc en une ligne type :
    Apr 15 09:47:04 MAILSRV cmd=env_from value=emailsender@gmail.com cmd=env_rcpt r=1 emailrecipent@mydomain.co.uk size=1897 guid=d2be999d68dd942ae3812c8bbdd25e81 qid=n5ntw8gq0-1

    Le script va directement recevoir les lignes en STDIN.

    Quelle logique utiliser ?

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    Ta clé permettant d'identifier un objet dans ton log semble être x=5ntw8gq0-1, mais elle n'est pas présente sur les deux premières lignes du log. Il semble dans ce cas, que seule la clé s=n5ntw8gq0 puisse être utilisée (mais c'est la première clé que tu veux en sortie).

    J'opèrerai pour ma part avec un algorithme de ce style :

    Code algo : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    ID = ""
    POUR toutes les lignes sur STDIN
      SI la ligne contient un identifiant tel que /s=(\w+)/
        SI cet identifiant est différent de ID
          Afficher les informations recueillies
          ID = identifiant
        FINSI
        Recueillir les informations utiles à l'aide d'expression régulières
      FINSI
    FINPOUR
    Afficher les informations recueillies

Discussions similaires

  1. Analyse des logs d'erreur d'apache
    Par canabral dans le forum Apache
    Réponses: 4
    Dernier message: 28/06/2006, 12h02
  2. Analyse des log web
    Par cjacquel dans le forum Statistiques
    Réponses: 1
    Dernier message: 10/04/2006, 22h46
  3. [Stratégie] Analyse de logs
    Par smux dans le forum Logging
    Réponses: 2
    Dernier message: 02/02/2006, 11h15
  4. [Log]Outil pour analyser les logs d'une appli J2EE
    Par sbelli dans le forum Logging
    Réponses: 1
    Dernier message: 18/01/2006, 10h20
  5. analyse de logs en perl
    Par sabbish dans le forum Langage
    Réponses: 11
    Dernier message: 26/10/2005, 13h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo