系统日志自定义优先级

时间:2010-08-20 12:58:05

标签: c++ c unix syslog rsyslog

有没有办法可以在syslog守护程序或rsyslog守护程序中使用自定义优先级? 即我无法找到一个改变它的配置改变..我能做的另一件事就是玩它的来源。

干杯!

2 个答案:

答案 0 :(得分:1)

  

有没有办法可以在syslog守护程序或rsyslog守护程序中使用自定义优先级?

Syslog输出是管理员所关注的。 syslog由用户空间守护进程管理。

这意味着,如果您以某种方式管理自己的自定义优先级到syslog()调用,接收方(同样是用户)将无法从中获取更多信息。

syslog()调用记录的优先级(或级别)非常简单,涵盖了管理员必须为错误条件付出的所有注意级别。因为这就是那里的水平。

我建议在SO上提出另一个问题,详细说明你真正希望实现的目标。因为发明自定义优先级是朝着错误方向迈出的一步。

P.S。否则,如果它是某种跟踪或调试或诊断输出(仅在开发/测试/安装期间使用),则始终可以在日志消息中使用标准级别和不同前缀之一。这就是我在几次能够从syslog(使用grep)中仅提取特定类型的诊断时所做的事情。

答案 1 :(得分:0)

调用syslog(3)的进程和syslogd守护进程之间的通常接口只允许int作为优先级。这不会为特定应用程序的优先级留下太多空间。应用程序应使用LOG_USER工具。有8个设施LOG_LOCAL0LOG_LOCAL7(由POSIX批准)可供应用程序使用。这些设施的分配传统上由系统管理员决定,因此您应该使设施设置为默认值LOG_USER(这也将允许管理员选择非标准设施)。

除了设施和优先级之外,一些syslog守护进程和大多数日志排序程序允许按应用程序名称(openlog的第一个参数)进行排序。这个主题最好在Unix Stack Exchange site讨论。

相关问题