Javascript 如何根据yml文件中的配置从node.js中的特定.js文件打印日志-npm winston

Javascript 如何根据yml文件中的配置从node.js中的特定.js文件打印日志-npm winston,javascript,java,node.js,logging,winston,Javascript,Java,Node.js,Logging,Winston,我正在使用npm winston库打印应用程序中的日志。我想提到的是作为文件和控制台的传输,这将在运行时提供,我不想重复更改代码以打印文件和控制台中的日志。有时我会使用文件日志,有时我会使用控制台日志来打印日志。我还没有找到解决这个问题的办法 在yml文件中,我还想提到.js文件名(或路径,或java log4j之类的包),以打印特定文件/包/文件夹的日志 logger: level: users: INFO com.demo.service: DEBUG (need to

我正在使用npm winston库打印应用程序中的日志。我想提到的是作为文件和控制台的传输,这将在运行时提供,我不想重复更改代码以打印文件和控制台中的日志。有时我会使用文件日志,有时我会使用控制台日志来打印日志。我还没有找到解决这个问题的办法

在yml文件中,我还想提到.js文件名(或路径,或java log4j之类的包),以打印特定文件/包/文件夹的日志

logger:
  level:
    users: INFO
    com.demo.service: DEBUG (need to provide nodeJs related package/folder/filenames, example is of java package)
  transport:
    outputs:
      file: 
        status: enable
      console: 
        status: disable
到目前为止,我有如下代码:

const { createLogger, format, transports } = require('winston');
const { combine, timestamp, label, printf } = format;
 
const customFormat = printf(({ level, message, label, timestamp }) => {
  return `${timestamp} [${label}] ${level}: ${message}`;
});
 
const logger = createLogger({
  format: combine(
    timestamp(),
    customFormat
  ),
  transports: [new transports.Console()]
});
我们将非常感谢您的帮助