node.js - 将 winston 日志传输到服务器
问题描述
我正在阅读温斯顿文档,我遇到了以下声明
传输本质上是日志的存储设备
所以我假设如果我设置了一个 http 传输,我将能够在其他地方聚合日志。就我而言,在 localhost:3210 中运行的应用程序中
有人知道为什么我没有收到我要发送的日志吗?
这是我的代码:
import { createLogger, format, transports } from 'winston';
const { combine, timestamp, label, printf} = format;
const myFormat = printf(({ level, message, label, timestamp }) => {
return `${timestamp} [${label}] ${level}: ${message}`;
});
export const logger = createLogger({
format: combine(label({ label: 'Test Service' }), timestamp(), myFormat),
transports: [
new transports.Http({
host: 'localhost',
port: 3210,
path: '/'
})
]
});
logger.log({
level: 'info',
message: `Hello there`
});
解决方案
试试logger.info('Hello there');
。此外,不知道您的服务器的外观如何,但请确保它具有具有POST
所需路径的已定义方法。
推荐阅读
- slack-api - 如何在 Slack 聊天输入中显示失败的命令文本?(松弛 API)
- c - 如何在 C 函数中使用指针的指针?
- oracle - Apache Spark - 在 S3 中将 Oracle 表写为镶木地板时出现内存问题
- shell - 我使用嵌套的 while 循环编写了一个简单的 shell 脚本,但是我在尝试减少“b”值并增加“a”值时遇到错误
- javascript - JavaScript v8 优化编译器 | 单态,多态?
- java - Dynamo DB ORM 与 Spring Data DynamoDB 的映射
- python - 如何比较两个音频文件并获得相似度百分比?
- angular - 在 ng-bootstrap 中隐藏工具提示后需要单击两次
- javascript - 尝试使用 JavaScript 获取用户输入时收到“无效日期”
- postgresql - 使用参数名称时,StoredProcedureQuery 类中 registerStoredProcedureParameter 的顺序是否重要?