我有一个发送asl日志消息的C/C++/Objective项目。
在asl.conf中的默认配置是将所有级别在上面的日志消息路由到系统日志(参见下面的规则),并且我只想为我的特定工具取消这个规则。
这意味着,我的工具下的所有日志消息将仅路由到我的日志文件,而不是system.log。
下面是将我的设备定义为com.bla.bla asl.conf?<=级通知文件system.log的配置
my_asl.conf
? [<= Level notice] [=Facility com.bla.bla] skip / ignore 我试过跳过和忽略,但我没有做任何改变。唯一起作用的是从asl.conf中删除规则,但我不想改变其他进程/设施的行为,也不想修改一些默认规则。
我可以添加什么规则来禁止我的消息只来自system.log吗?
谢谢
发布于 2016-01-27 08:08:24
在一遍又一遍地重新阅读asl.conf手册页之后,我发现我可以使用'claim‘命令来忽略针对我的特定规则的asl.conf基本配置文件。
主ASL配置文件/etc/asl.conf没有处理与“claim”操作关联的查询匹配的声明消息。虽然声称的消息不是由/etc/asl.conf预先处理的,但它们并不是完全私有的。其他模块也可以声明消息,在某些情况下,两个或多个模块可能具有匹配相同消息的声明操作。此操作只阻止/etc/asl.conf进行处理。“`claim”动作后面可以是关键字'only‘。在这种情况下,只有那些与'claim‘查询匹配的消息才会由模块中的后续规则处理。
我遵循标签'claim‘的描述,并将以下配置添加到我的配置文件中:
? [= com.bla.bla] file /var/log/my-log
? [= com.bla.bla] claim https://stackoverflow.com/questions/34761370
复制相似问题