如何在busybox中修改syslog输出格式?

时间:2015-01-09 07:34:24

标签: logging embedded-linux syslog busybox

如何在busybox中修改syslog输出格式? 例如:

Jan 1 00:00:42 LSM user.info root:Hello

1月1日[IP] LSM user.info root:Hello

我尝试在syslog.conf中使用模板,但它不起作用。 REF。 http://goo.gl/tcDbzZ

$template precise,"%syslogpriority%,%syslogfacility%,%timegenerated%,%HOSTNAME%,%syslogtag%,%msg%\n"
$ActionFileDefaultTemplate precise

或者我应该修改src中的syslog.c吗?有没有更好的方法来实现这项工作?

感谢您的帮助和善意。

3 个答案:

答案 0 :(得分:0)

busybox中的syslog有一个选项FEATURE_SYSLOGD_CFG,它可以在编译时启用/禁用syslog.conf的支持。

请注意,与“标准”syslog.conf相比,它肯定是受限制的支持。

检查此选项是否已使用make menuconfig

启用

答案 1 :(得分:0)

默认情况下,Busybox使用/ sbin中的syslogd,你可以检入/etc/init.d/S01logging,它会忽略你在syslog.conf上做的所有配置。

实际上,它还有另一个功能完备的" syslogd,驻留在/ usr / sbin /。我建议你修改S01logging脚本来启动这个新的syslogd并测试你的配置是否有效。

答案 2 :(得分:0)

有几个“系统日志”。

对于BusyBox,它是“经典” syslogd https://en.wikipedia.org/wiki/Syslog

对于Ubuntu,它是 rsyslog https://en.wikipedia.org/wiki/Rsyslog

对于其他一些系统,它是 syslog-ng https://en.wikipedia.org/wiki/Syslog-ng

您指定为ref的链接。 (https://askubuntu.com/questions/79684/syslog-not-showing-log-levels-in-messages)适用于Ubuntu,因此 rsyslog

我认为你不能使用 syslogd

这样的模板