Jump to content

Format de log "human readable"


Recommended Posts

Bonjour,

 

Je cherche un format de données pour logger des infos. Le but est de conserver le sens de ces infos et une "atomicité". Les infos ont un schéma général avec des métadonnées communes et un corps plus ou moins complexe.

Le fichier produit doit être inscriptible à la volée (donc sans balise de fin)

Le XML et le JSON sont intéressants à priori mais il nécessitent de "fermer" le fichier par une balise ou une accolade fermante et englobante.

Exemple XML correct par rapport à la norme:

<logs>
  <log date="..." source="..." type="...">
    ...
  </log>
  <log date="..." source = "..." type = "...">
    ...
  </log>
</logs>

Le </logs> final m'ennuie... Cela signifie que pour ajouter des éléments, je dois réécrire TOUT le fichier.

Une suggestion?

Merci

Link to comment
Share on other sites

Json par ligne et non un json global dans le fichier (cela devient la norme pour gérer les logs multilignes telles que les exceptions-stack). Si tu veux vraiment faire une analyse à postériori il suffit de rajouter { et } en début et fin de document.

Exemple piqué de winston (lib nodejs) https://github.com/winstonjs/winston#formats
Sans oublier la possibilité de raccourci les nom des champs (level -> lvl, message -> msg, label -> lbl, timestamp -> ts) pour économiser du char

{ level: 'info',message: 'What time is the testing at?', label: 'right meow!',timestamp: '2017-09-30T03:57:26.875Z' }
Edited by Sheepux
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...