gpt4 book ai didi

linux - 如何删除转发时间戳? OSE 版本 Syslog-NG

转载 作者:太空宇宙 更新时间:2023-11-04 11:59:23 24 4
gpt4 key购买 nike

answer 之后,

我尝试在 Syslog-NG 3.17 中进行更改 OSE version ,具有以下配置,

@version: 3.17

@include "scl.conf"

options {
};

source s_network_to_forward {
network(
flags(no-parse)
transport(udp)
port(514)
keep-timestamp(no)
persist-name("somekey")
);
};


template forward_template {
template($RAWMSG);
template_escape(no);
};

destination forward_to_syslog2{
network("1.2.3.4" transport(udp) port(514) template(forward_template));
};

log {
source(s_network_to_forward);
destination(forward_to_syslog2);
};

要转发的消息:Oct 31 16:44:29.071 UTC:%SYS-3-DUP_TIMER:linewatch_timers 中的相同 tty2,类型 2

以上配置可以转发如下所示的消息(额外的头以粗体显示):

10 月 31 日 12:44:29 X.X.X.X 5277586: 10 月 31 日 16:44:29.071 UTC:%SYS-3-DUP_TIMER:linewatch_timers 中的相同 tty2,类型 2

其中 X.X.X.X 显示实际发件人地址(如预期)、进程 ID(5277586)和转发时间戳(Oct 31 12:44:29)

但是

预计仅转发 Oct 31 16:44:29.071 UTC: X.X.X.X 5277586: %SYS-3-DUP_TIMER: Same tty2 in linewatch_timers, type 2

通过删除转发时间戳


如何转发要求的格式?

最佳答案

如果您想在发送消息时转发消息,$RAWMESSAGE 宏是个好主意,但默认情况下它是空的(因为它会使消息内存占用更大)。

您必须在源配置中添加一个额外的标志 flags(...,store-raw-message)。 (参见相关的 documentation )

你的配置看起来像这样:

@version: 3.17

@include "scl.conf"

options {
};

source s_network_to_forward {
network(
flags(no-parse,store-raw-message)
transport(udp)
port(514)
keep-timestamp(no)
persist-name("somekey")
);
};


template forward_template {
template("$RAWMSG");
template_escape(no);
};

destination forward_to_syslog2{
network("1.2.3.4" transport(udp) port(514) template(forward_template));
};

log {
source(s_network_to_forward);
destination(forward_to_syslog2);
};

关于linux - 如何删除转发时间戳? OSE 版本 Syslog-NG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53088413/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com