Typescript 为VSCode扩展名创建日志文件
让VSCode扩展名中的日志语句写入文件的标准方法是什么 我觉得在工作中有一些范例我错过了。。。我可以找到很多方法使控制台日志对调试我的扩展名(通道、库等)更有用,但我看不到为我的扩展名创建日志文件的任何方法 这不是常见的做法吗?如果我的扩展的用户遇到问题,他们向我发送诊断以保存控制台日志的最简单方法是什么?他们可以通过打开开发人员工具来查看Typescript 为VSCode扩展名创建日志文件,typescript,visual-studio-code,Typescript,Visual Studio Code,让VSCode扩展名中的日志语句写入文件的标准方法是什么 我觉得在工作中有一些范例我错过了。。。我可以找到很多方法使控制台日志对调试我的扩展名(通道、库等)更有用,但我看不到为我的扩展名创建日志文件的任何方法 这不是常见的做法吗?如果我的扩展的用户遇到问题,他们向我发送诊断以保存控制台日志的最简单方法是什么?他们可以通过打开开发人员工具来查看 感谢您为那些试图解决同一问题的人提供的建议,我最终选择了为typescript提供类型的 我定义了这样一个记录器: const logger: winst
感谢您为那些试图解决同一问题的人提供的建议,我最终选择了为typescript提供类型的 我定义了这样一个记录器:
const logger: winston.Logger = winston.createLogger({
level: 'debug',
format: winston.format.combine(
winston.format.simple(),
winston.format.timestamp({
format: 'YYYY-MM-DD HH:mm:ss'
}),
winston.format.printf(info => `${info.timestamp} ${info.level}: ${info.message}`)
),
transports: [
new winston.transports.File({
level: 'info',
dirname: logFileDir,
filename: logFileName
}),
new winston.transports.File({
level: 'debug',
dirname: logFileDir,
filename: debugLogFileName
}),
]
});
export logger;
然后我可以从代码中的其他地方调用logger.info(“任意”)
,并将其写入指定的日志文件
通过添加
控制台
传输,您也可以将日志写入控制台,但要小心这会阻止日志显示在VSCode的“调试控制台”中。为我解决了这个问题。扩展获得了一个他们自己的日志路径文件夹,可以将日志写入其中。至于您实际上如何在那里编写文件以及编写什么,您可以使用您想要的任何日志库,或者只使用节点API。