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

XSL/XSLT/XPATH XML Discussion :

Parseur fichier Log XML


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 13
    Points : 14
    Points
    14
    Par défaut Parseur fichier Log XML
    Bonjour,

    Je vous explique mon problème en ésperant que quelqu'un pourra me donner des idées. Je suis grand débutant en XML et je tombe sur une petite appli a réaliser.

    L'idéee de base est de récupérer des informations venant d'un fichier de Log en XML d'un logiciel de vision industriel.

    Le premier problème est que le fichier n'est pas glissant, c'est à dire que dès que sa taille maxi est atteinte il s'efface et recommence à zéro (pas trés propre mais j'y peut rien). DOnc je dois lire assez vite pour au pire n'avoir perdu que quelques lignes entre 2 lectures.

    Le but de mon appli serait donc de repérer des lignes à la volée et d'en garder leur contenu.

    En clair le fichier de log se compose de lignes du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <log no="1" tm="Jul 20 07:07:07" ms=" 100" msg="[FUNCTION XXX]:OK"/>
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <log no="1" tm="Jul 20 07:07:07" ms=" 100" msg="[FUNCTION XXX]:NOK"/>
    ou encore plein de lignes ne servant à rien mais toujours avec la meme architecture mais un message différent.

    J'aimerais donc récupérer les lignes contenant un NOK à la fin afin de faire un petit check-up des 10 dernieres erreurs survenues dans l'application.

    Je n'ai pas trop d'idée et je pense qu'il y a des petites API pour effectuer cela. Je suis ouvert un peu à tous les langages si jamais une API n'est pas portable.

    Je pense que l'appli devra ouvrir le fichier xml rechercher les lignes contenant NOT OK dans l'attribut "msg" du noeud "log" (c'est bon le vocabulaire??) puis regarder les attributs "no" et "date" pour voir si il n'as pas déjà trouvé ces erreurs précédement. Tout cela assez rapidement pour ne pas perdre de l'information.

    Si vous avez des conseils je suis ouvert à vos suggestions.

    Merci d'avance pour votre aide.

    Benjamin

  2. #2
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Je pense qu'il te faudrait te tourner vers XSLT, il y a de nombreuses API permettant d'utiliser XSLT... toutes quasiment portable, tout dépend du langage que tu veux utiliser

  3. #3
    Membre éclairé Avatar de sozie9372
    Inscrit en
    Mai 2005
    Messages
    713
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mai 2005
    Messages : 713
    Points : 724
    Points
    724
    Par défaut
    Faut voir le temps de rafraichissement des données... Car si ton fichier est supprimé toutes les 100 ms ca risque d'être un peu chaud pour une transformation XSLT (tout dépend du langage et de la taille max de ton fichier )

    Dans le cas ou tu aurais un peu de temps devant toi avant que le fichier soit supprimé... Je te conseillerai bien le Java pour la transformation XSL.
    Il y a tout ce qu'il faut dans la FAQ Java.
    Et pour le XSL :
    Pour tester les noeuds en XSL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:if test=""></xsl:if>
    Pour récupérer la valeur d'un noeud :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:value-of select="@mon-noeud"/>
    Pour récupérer la valeur de l'attrebut d'un noeud :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:value-of select="@mon-attribut"/>

  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 13
    Points : 14
    Points
    14
    Par défaut
    Merci pour vos réponse... Après plusieurs recherche je me suis tourné vers LogParser, une petite appli bash microsoft scriptable grâce à COM permetant de parser des fichiers de log en xml ou autre et qui paraît bien correspondre à mes attentes. En plus il y a des sorties vers base de donnée à driver ODBC ce qui me convient bien.

    Merci encore pour votre aide.

    Benjamin

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. transformer un fichier log en fichier xml
    Par sandra83 dans le forum XML/XSL et SOAP
    Réponses: 8
    Dernier message: 23/07/2010, 12h58
  2. [XML] importer un fichier .log ou .xml dans une base de donnée MySQL
    Par sorayati dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 02/08/2009, 16h16
  3. transformation fichier log vers XML
    Par natacha79 dans le forum Logging
    Réponses: 2
    Dernier message: 09/06/2006, 13h07
  4. [XML][C#] fichier log XML
    Par Landolsi dans le forum Windows Forms
    Réponses: 8
    Dernier message: 27/10/2005, 14h11
  5. [] [Stratégie] Comment créer un fichier log
    Par Skeezo dans le forum Installation, Déploiement et Sécurité
    Réponses: 4
    Dernier message: 16/09/2002, 18h30

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