Elasticsearch:使用 Filebeat 从 Node.js Web 应用程序提取日志
// 引入所需模块
const winston = require('winston');
const winstonElasticsearch = require('winston-elasticsearch');
// 设置日志配置
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winstonElasticsearch.ElasticsearchTransport({
host: 'localhost:9200', // Elasticsearch 地址
indexPrefix: 'node-app-logs' // 日志索引前缀
})
]
});
// 记录日志
logger.info('这是一条信息级别的日志', { some: 'metadata' });
logger.error('这是一条错误级别的日志', { error: new Error('出错了') });
// 在生产环境中,你可能需要配置Filebeat来监控Elasticsearch索引,并将日志发送到远程服务器
这段代码演示了如何在Node.js应用程序中使用winston和winston-elasticsearch将日志发送到Elasticsearch。首先引入所需模块,然后配置日志记录器,使用ElasticsearchTransport将日志发送到Elasticsearch。最后,记录两条日志,一条是信息级别的,另一条是错误级别的,并附带了元数据。在生产环境中,你可能需要配置Filebeat来监控Elasticsearch索引并将日志发送到远程服务器。
评论已关闭