我有程序heroku_test.ts
console.log('test')
我可以使用以下命令运行它:
heroku run ts-node heroku_test.ts
在同一个控制台窗口中我看到输出'test'
但是当我查看heroku日志时,那里没有“测试”,它只是说“使用命令ts-node heroku_test.ts启动进程”
为什么heroku日志不包含console.log输出?
编辑:问题与how to show all console.log from node.js in heroku?不同,因为我可以看到除了任何console.log输出之外的所有日志。
答案 0 :(得分:0)
首先安装winston:
https://github.com/winstonjs/winston
如下:
npm install winston --save
然后将heroku_test.js更改为以下内容:
const winston = require('winston')
winston.log('info', '-------Hello log files!------------', {
someKey: 'some-value'
})
然后运行
heroku运行节点heroku_test.js
然后检查日志:
heroku logs --tail
你应该在heroku日志中看到上面的内容
答案 1 :(得分:0)
您可以尝试一些开源库,例如 https://www.npmjs.com/package/heroku-logger