gpt4 book ai didi

Linux - 系统日志客户端

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:09:56 25 4
gpt4 key购买 nike

为了开发一个跨平台的 syslog 客户端,我试图在不使用 syslog 系统调用的情况下进行。我正在用 C++ 开发此客户端,目前正在 Linux 中进行测试。我正在替换的旧 syslog 客户端与 syslog 系统调用完美配合。对于如何,它根本不起作用。跟踪不在 /var/log/user.log 中,它应该在其他任何地方(greped)。但是当我使用 netcat 监听正确的端口时,我确实收到了它。端口 514 不应该已经被使用了吗?

跟踪应该在 UDP/514 上发送。我尝试坚持 RFC 3164,但显然还是有问题。

如果有人能给我提示以解决此问题,我将不胜感激。

Trace: severity: 2 (Critical); facility: 23 (Local Use 7) ==> priority: 186

sh$> sudo nc -ul localhost -p 514
<186>Oct 18 10:36:03 hostname test_trace: | 10:36:03.242995 | CRIT | xxx-MAIN[5473-000] | 00000 | 0008 : main : user_msg

谢谢!


我想我在自己的问题中发现了问题:Rsyslog(我的系统日志服务器)没有正确监听 UDP/514。

/etc/rsyslog.conf

$ModLoad imudp
$UDPServerAddress 0.0.0.0
$UDPServerRun 514

如果有人知道为什么它仍然不在 UDP/514 上监听,我将非常感谢,因为我真的不明白为什么。

再次感谢。

最佳答案

syslog() 调用写入/dev/log,系统记录器读取此 unix 域套接字以获取消息。 UDP/514 用于网络传输。所以不清楚你想要什么。

关于Linux - 系统日志客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7804597/

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