2017-10-08 5 views
0

Je fais des recherches sur différents paquets dans Nodejs et je ne trouve pas cela qui conviendrait à mes besoins. Je voudrais afficher le numéro de ligne, le nom de la fonction et le fichier src en cours de journalisation, de la même manière que Bunyan Logger. J'ai regardé dans des paquets tels que 'caller-id' mais je ne peux pas l'utiliser car il ne supporte pas le mode 'strict'.Nodejs - nom de la fonction d'impression, numéro de ligne et nom de fichier

D'autres packages, tels que 'capture-stack-trace', renvoient uniquement le nom de fichier sans le numéro de ligne &.

Y at-il un paquet qui me manque et peut répondre à mes besoins? Ou existe-t-il un moyen élégant de générer cette information en code?

Merci d'avance.

+0

avez-vous essayé https://www.npmjs.com/package/tracer –

+0

Je l'ai vu, mais c'est un paquet de journalisation. J'utilise Bunyan comme enregistreur, je veux juste arrêter d'utiliser l'option 'src'. –

Répondre

0

La détermination des informations de la source d'appel est toujours désactivée par défaut dans chaque enregistreur de nœuds. C'est lent. N'utilisez jamais cette option en production.

Nous utilisons bunyan pour nos services de micro. Ceci est copypaste de documentation:

Le fichier source, la ligne et la fonction du site d'appel de journal peut être ajouté pour les enregistrements du journal en utilisant le src: true option de configuration:

var log = bunyan.createLogger({src: true, ...}); 

Cela ajoute la Info appel source avec le champ 'src', comme ceci:

{ 
    "name": "src-example", 
    "hostname": "banana.local", 
    "pid": 123, 
    "component": "wuzzle", 
    "level": 4, 
    "msg": "This wuzzle is woosey.", 
    "time": "2012-02-06T04:19:35.605Z", 
    "src": { 
    "file": "/Users/trentm/tm/node-bunyan/examples/src.js", 
    "line": 20, 
    "func": "Wuzzle.woos" 
    }, 
    "v": 0 
} 
+0

J'utilise déjà Bunyan comme enregistreur et l'option 'src'. Mais je voudrais l'éteindre et utiliser mon propre objet 'src'. –