2010-05-11 6 views
7

Je ne suis pas sûr si cela a été demandé, mais je ne pouvais pas trouver quelque chose comme ça.Un simple format de fichier journal

Mon programme utilise un simple fichier .txt à des fins de consignation. Il crée/ouvre un fichier et ajoute des lignes. Après un certain temps, j'ai commencé à enregistrer beaucoup d'activités, donc le fichier est devenu trop grand et difficilement lisible. Je sais que ce n'est pas écrit de cette façon, mais j'ai simplement besoin d'un fichier lisible.

Alors j'ai pensé que peut-être il y a un format de fichier simple pour les fichiers journaux et un soft pour l'afficher ou si vous auriez d'autres suggestions sur cette question?

Merci de votre aide à l'avance.

MISE À JOUR:

accès Il demande 97. J'enregistre certaines activités comme le chargement de formulaire, SELECT/INSERT/UPDATE à MS SQL Server ... Le fichier journal n'est pas vraiment grand, je viens d'écrire la durée des opérations, donc j'ai besoin d'un moyen simple de le faire.

Le fichier journal est créé sur l'ordinateur d'un utilisateur. Il est utilisé à des fins de surveillance pour consigner les durées de certaines activités.

Existe-t-il un moyen de visualiser ce type de fichier journal simple mis en évidence avec un outil existant?

Simplement, je voudrais:

1) Ecrire smth comme " 'CurrentTime' ' 'Durée en millisecondes' activityName'" (peut-être quelques informations supplémentaires comme la chaîne de requête) dans un fichier.

2) Ouvrez-le avec un outil et affichez-le en surbrillance ou en quelque sorte plus lisible.

RÉPONSE: J'ai trouvé un outil sympa pour faire tout ce que je voulais. Vérifie ma réponse

LogExpert

+0

Seriez-vous en mesure de donner plus de détails sur ce que votre exploitation forestière et comment est enregistré beaucoup, etc? Merci. – binarycreations

+0

et quelle langue vous utilisez ... Est-ce Java, C, shell scripting? –

Répondre

4

Le 3 W de:

Quand, à quoi et où.

Pour regarder quelque chose comme multitail (« queue sur les stéroïdes ») http://www.vanheusden.com/multitail/

ou pour fenêtres pures ms essayer mtail http://ophilipp.free.fr/op_tail.htm

Et pour garder vos fichiers lisibles, vous pouvez créer de nouveaux fichiers lorsque si la taille du fichier journal en cours dépasse une certaine limite. Exemple:

  • activity0.log (1 Mo)
  • activity1.log (1 Mo)
  • activity2.log (1 Mo)
  • activité3.log (1 mb)
  • activity4.log (205 octets)
+0

hmm .. conseils utiles. Merci :) – hgulyan

+0

mais est-il un moyen de le rendre compréhensible pour une application? – hgulyan

+0

Que voulez-vous dire "compréhensible pour une application"? Avec multitail vous pouvez filtrer ou mettre en évidence les entrées de diverses manières. – zaf

1

d'abord, vérifiez que vous êtes seulement les choses qui sont utiles l'exploitation forestière. Si tout cela est utile, assurez-vous qu'il est facilement analysable par des outils tels que grep, de cette façon, vous pouvez trouver l'information que vous voulez. Assurez-vous d'avoir le type d'entrée de journal, la date et l'heure correspondant à la mise en page. Construisez-vous quelques scripts pour extraire les informations pour vous. Vous pouvez également utiliser des fichiers journaux distincts pour différents types d'entrées.

+0

J'essaie de trouver un outil existant. – hgulyan

1

Fondamentalement, il vaut mieux simplement diviser les journaux en fonction de la gravité. Vous aurez rarement besoin de lire tous les journaux pour l'ensemble du système. Par exemple apache permet de configurer le journal des erreurs et le journal d'accès, assez évident quelles sont les informations qu'ils ont exactement.

Si vous êtes sous Linux, grep est votre meilleur outil pour rechercher dans les journaux des entrées spécifiques.

+0

Le fichier journal est en cours de création sur l'ordinateur d'un utilisateur avec WinXp – hgulyan

1

Regardez les fichiers journaux populaires comme/var/log/syslog sur Unix pour obtenir des idées:

MMM DD HH:MM:SS hostname process[pid]: message 

Exemple de mon syslog:

May 11 12:58:39 raphaelm anacron[1086]: Normal exit (1 job run) 

Mais pour vous donner la réponse parfaite que nous » d besoin de plus d'informations sur ce que vous enregistrez, combien et comment vous voulez lire les journaux.

+0

Mais si je sauvegarde un fichier au format txt, il ne sera pas mis en surbrillance ou ne le sera pas pour rendre le fichier journal plus lisible. J'ai édité ma question. – hgulyan

+0

La fin du nom (.txt ou .log ou quelque chose d'autre) n'est pas pertinente pour le contenu. Peut-être que vous voulez nous donner un exemple de vos fichiers journaux actuels? –

+0

Je peux écrire le fichier journal de quelque façon que ce soit. Ce dont j'ai besoin, c'est d'une sorte de format de fichier, qui peut être compris par un programme, qui va me montrer le fichier journal en surbrillance ou en quelque sorte plus lisible. – hgulyan

1

Si seulement la taille du fichier journal est le problème, je recommande d'utiliser logrotate ou quelque chose de similaire. Logrotate surveille les fichiers journaux et, selon la manière dont vous les avez configurés, après un certain temps ou lorsque le fichier journal dépasse une taille donnée, il déplace le fichier journal dans un répertoire d'archivage et le compresse en option. Ensuite, le fichier journal d'origine est tronqué. Par exemple, vous pouvez le configurer pour archiver le fichier journal toutes les 24 heures ou chaque fois que la taille des fichiers dépasse 500 Ko.

+0

Non, le problème principal est qu'il n'est pas lisible.Je voulais trouver une interface graphique pour le voir, mais merci pour la réponse. Je ne savais pas à propos de logrotate. – hgulyan

1

S'il s'agit d'un programme, vous pouvez étudier les bibliothèques de journalisation Apache (http://logging.apache.org/). Elles vous fourniront un format de journalisation décent dès la sortie de la boîte. Ils sont également personnalisables, ce qui vous permet de simplifier votre travail d'analyse.

S'il s'agit d'un script, consultez les autres réponses.

+0

J'ai utilisé Log4j en Java, mais il n'y a rien d'utile dans l'ancien MS Access 97 pour la journalisation. – hgulyan

2

Une façon assez classique pour faire face à l'exploitation forestière d'une application dans un fichier texte brut est à:

  • divisé les journaux dans différents domaines fonctionnels du programme.
  • tourner les journaux sur une base quotidienne/hebdomadaire (c.-à diviser le journal sur une base de la taille ou la date)
    • de sorte que le journal en cours est « mylog.log » ou autre chose, et était « mylog.log hier. 1" ou "mylog.ddmmyyyy.log"

Cela permet de maintenir la taille du journal actif gérable. Et puis vous pouvez simplement avoir des règles d'expiration afin que les vieux journaux soient jetés régulièrement.

En outre, il serait judicieux d'avoir différents niveaux de consignation pour votre application (info/warning/error/fatal) afin de ne pas vous connecter plus que nécessaire.

+0

Merci. Oui, ce serait juste d'avoir la gravité, mais j'utilise mon fichier journal à des fins de surveillance et j'enregistre quelques durées d'activités, pas d'erreurs. – hgulyan

Questions connexes