Se connecter / S'enregistrer
Votre question

[Batch] Analyser un fichier ".log"

Tags :
  • Network
  • Programmation
Dernière réponse : dans Programmation
18 Décembre 2007 10:21:40

Bonjour les gens!

Déjà merci pour ce qui ose lire ce mail ^^. Je vais essayer de vous expliquer mon problème le plus clairement possible.
J'ai un fichier .log dont les informations entre assez souvent(chaque seconde, et peut etre même plus). Ce fichier est composé de paragraphes comme ceci:

|---------------------------------------------------------------
| Fichier ".log"
|---------------------------------------------------------------
|XX/XX/07 08:54:04 Trafficd.exe WARNING
|Lost contact with established Extended RMON device with network address
|XX.XX.XX.XX on segment 'XX.XX.XX.XX_port_X_(shared)'; searching for new
|Extended RMON device.
|
|XX/XX/07 08:54:05 Trafficd.exe WARNING
|Lost contact with established Extended RMON device with network address
|XX.XX.XX.XX on segment 'XX.XX.XX.XX_port_X_(shared)'; searching for new
|Extended RMON device.
|
|XX/XX/07 08:54:06 Trafficd.exe INFORMATIVE
|Extended RMON interface with network address XX.XX.XX.XX and sampling entity
|X selected for segment 'XX.XX.XX.XX_port_X_(shared)'; Extended RMON data will
|be directed to host network interface of address XX.XX.XX.XX.
| <=
| <= (ici, à la fin du fichier ".log", deux retour chariot qui peuvent peut-être servir)
|---------------------------------------------------------------

Analyse:
- Mon but final et de faire tourner un programme qui bloque les ports, où l'information parmi "WARNING", "INFORMATIVE" dans ces exemples, est en fait égale à "ERROR". Le programme qui me permet de bloquer les ports est déjà créé.
- Je saurai analyser l'information "ERROR", mettre l'IP d'un un fichier texte et le port dans un autre(utile a mon programme qui bloque les ports).

Problématique:
- Mon problème reste d'analyser chaqu'une des nouvelles entrées(donc les paragraphes qui entre par le bas, d'où la difficulté pour un BTS Réseau :)  ). Et tout ceci en Batch.

Suggestion:
- J'aurai penser mettre chaque nouvelles entrées dans un fichier texte(que je pourrai plus facilement analyser puis écraser au fur et à mesure). Mais mon programme met une 20ène de secondes à s'exécuter et ne peut traiter qu'une IP et un Port à la fois(a cause des "sendkeys": simulation de clavier de mon programme). Donc il faudrai stocker les "ERROR".
- Sinon, plus simplement(sa dépend pour qui! :)  ) analyser directement si il y a des "ERROR" dans le fichier. Et ne traiter q'une fois un paragraphe. Mais la je ne c pas faire.
A moins que biensure, vous ayez une meilleur solution.



Vincent

Autres pages sur : batch analyser fichier log

a b L Programmation
19 Décembre 2007 20:06:27

Si c'est pour analyser le contenu d'un fichier, c'est forcément ligne par ligne en commençant par le début:
FOR /F

Il est plus simple d'utiliser un meilleur langage de programmation comme le Python.
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS