Winston: рдПрдХ рд╣реА рд▓рдХрдбрд╝рд╣рд╛рд░реЗ рдХреЗ рднреАрддрд░ рдкреНрд░рддрд┐-рдкрд░рд┐рд╡рд╣рди рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 8 рдЬреБрд▓ре░ 2018  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: winstonjs/winston

рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреНрдпрд╛ рд╣реИ?

рдореЗрд░реЗ рдкрд╛рд╕ рдХрдВрд╕реЛрд▓ рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ рд╡рд╛рд▓рд╛ рд▓реЙрдЧрд░ рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛ рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ рдЬреЛ рдХреНрд▓рд╛рдЙрдб-рдЖрдзрд╛рд░рд┐рдд рд▓реЙрдЧрд┐рдВрдЧ рд╕реЗрд╡рд╛ рдкрд░ рдЬрд╛рддрд╛ рд╣реИред рдХрдВрд╕реЛрд▓ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЗ рд╕рд╛рде рдЙрдкрд╕рд░реНрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рд░рдВрдЧреАрди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдХреНрд▓рд╛рдЙрдб-рдЖрдзрд╛рд░рд┐рдд рд▓реЙрдЧрд┐рдВрдЧ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рд╕реЗрд╡рд╛ рд╕реНрд╡рдпрдВ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ, рдФрд░ рдореБрдЭреЗ рд░рдВрдЧ рднреА рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдПред

рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд╣рдорд╛рд░реЗ рд╕рдорд░реНрдерди рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ?

рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ рдкрд╣рд▓реЗ рд╣реА рднреЗрдЬреЗ рдЬрд╛ рдЪреБрдХреЗ рд╣реИрдВ: #427 рдФрд░ #422

рдкреНрд░рддрд┐ рдкрд░рд┐рд╡рд╣рди рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЙрд╕ рдХреНрд╖рдорддрд╛ рдХреЛ рд░реАрдбрдореЗ рдореЗрдВ рд╕рдордЭрд╛рдпрд╛ рдирд╣реАрдВ рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({
      filename: 'error.log', level: 'error',
      format: winston.format.simple(),
    }),
    new winston.transports.File({
      filename: 'combined.log', level: 'debug',
      format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
    }),
  ],
});

logger.error('prefixed by the timestamp only in `combined.log`');

рд╕рднреА 5 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({
      filename: 'error.log', level: 'error',
      format: winston.format.simple(),
    }),
    new winston.transports.File({
      filename: 'combined.log', level: 'debug',
      format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
    }),
  ],
});

logger.error('prefixed by the timestamp only in `combined.log`');

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдбреЙрдХреНрд╕ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ plz

@dandv рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ

рддреЛ рдпреЗ рд▓рд╛рдЗрди...

format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),

...рдЗрд╕ рддрд░рд╣ рдПрдХ рдмрдВрдж рдмреНрд░реЗрд╕ рдХреА рдЬрд░реВрд░рдд рд╣реИ

format: winston.format.printf(info => `${new Date().toISOString()}, ${info.message}`),

рдХрд╕реНрдЯрдо рд╕реНрд╡рд░реВрдкрдг рдХреЗ рд▓рд┐рдП рдХреЛрдб рдФрд░ рдЬреНрдЮрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреА!

рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({
      filename: 'error.log', level: 'error',
      format: winston.format.simple(),
    }),
    new winston.transports.File({
      filename: 'combined.log', level: 'debug',
      format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
    }),
  ],
});

logger.error('prefixed by the timestamp only in `combined.log`');

@dandv рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ рдХреЗ рдмрд╛рд╣рд░ рдФрд░ рд▓реЙрдЧрд░ рд╡рд┐рдзрд┐ рдмрдирд╛рдиреЗ рдХреЗ рдЕрдВрджрд░ рдПрдХ рдФрд░ рдкреНрд░рд╛рд░реВрдк рд╣реИред рдХреМрди рд╕рд╛ рдкреНрд░рд╛рд░реВрдк рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({
      filename: 'error.log', level: 'error',
      format: winston.format.simple(),
    }),
    new winston.transports.File({
      filename: 'combined.log', level: 'debug',
      format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
    }),
  ],
});

logger.error('prefixed by the timestamp only in `combined.log`');

@dandv рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ рдХреЗ рдмрд╛рд╣рд░ рдФрд░ рд▓реЙрдЧрд░ рд╡рд┐рдзрд┐ рдмрдирд╛рдиреЗ рдХреЗ рдЕрдВрджрд░ рдПрдХ рдФрд░ рдкреНрд░рд╛рд░реВрдк рд╣реИред рдХреМрди рд╕рд╛ рдкреНрд░рд╛рд░реВрдк рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рдЕрдВрджрд░ рд╡рд╛рд▓рд╛ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

alditis picture alditis  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

sinai-doron picture sinai-doron  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Nepoxx picture Nepoxx  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

pocesar picture pocesar  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

bertolo1988 picture bertolo1988  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ