我正在尝试将Fluentd用作我的Docker容器设置的中央日志记录服务。
我使用Fluent golang客户端从应用程序写入日志 https://github.com/fluent/fluent-logger-golang
我从应用程序中发布这样的日志行
logger, _ := fluent.New(fluent.Config{FluentPort: 24224, FluentHost: "fluentd"})
defer logger.Close()
tag := "web"
var data = map[string]string{
"foo": "bar",
"hoge": "hoge",
}
error := logger.Post(tag, data)
有效的conf文件
<source>
@type forward
@id app_logs
@label @mainstream
port 24224
</source>
<label @mainstream>
<match **>
@type file
@id app_logs
path /fluentd/log/app.log
append true
</match>
</label>
日志在文件中显示如下
2020-09-23T00:05:06+00:00 web {"foo":"bar","hoge":"hoge"}
我不想看到时间戳和在日志行之前添加的标记。如何删除它?
答案 0 :(得分:1)
您看到的是var nodemailer = require('nodemailer');
var transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'saxena1975sanjeev@gmail.com',
pass: 'my_password'
}
});
const sendMail = (email, subject, text) => {
const mailOptions = {
from: email,
to: 'saxena1975sanjeev@gmail.com',
subject: subject,
text: text
};
transporter.sendMail(mailOptions, function(error, info) {
if(error) {
console.log(error);
} else {
console.log('Email sent: ' + info.response);
}
});
}
module.exports = sendMail();
。 Fluentd将时间戳记和标记打印到stdout以进行调试。如果将其替换为任何其他输出-@type stdout
或@type file
并格式化json,它将把数据序列化为没有此前缀的有效json。示例:https://docs.fluentd.org/output/file#less-than-format-greater-than-directive