在OS X Mountain Lion下记录消息

时间:2014-03-05 21:36:52

标签: macos logging syslog

我正试图在山狮下工作。由于苹果似乎忽略了包含pflogd,我们必须自己制作:

/sbin/ifconfig pflog0 create
/usr/sbin/tcpdump -lnettti pflog0 | /usr/bin/logger -t pf

这会将消息转储到system.log中,但我正在尝试找到一种方法将它们分类到自己的。我能够用ipfw解决这个问题,但ipfw留下了很好的日志,如:

Mar  5 11:34:44 flamingo kernel[0] <Debug>: ipfw: 65534 Deny ICMP:3.10 192.168.4.233 192.168.92.60 in via en0

对于pf,我得到的日志如下:

Mar  5 11:57:50 flamingo.mydomain.com pf[51938]: 00:00:00.000000 rule 1/8(ip-option): pass in on en0: 172.24.32.41 > 224.0.0.1: igmp query v2

使用OSXes'logger',我可以使用-p来设置设施,但随后日志会悄然消失。我找到了使用'syslog -s -k facility what'的引用,但是当我将tcpdump传输到syslog中时,进程在几秒钟或几分钟后就会死掉。

我怎样才能A)了解如何保持syslog运行,或者B)设置或预测我可以从asl.conf中的logger过滤结果?

1 个答案:

答案 0 :(得分:0)

你遗漏了一种成分来记录。

这对我有用:

root# touch /var/log/pffirewall.log` to create the log file.  

然后,将以下行添加到/etc/syslog.conf

local2.* /var/log/pffirewall.log

现在,您的记录器流程输出将显示在/var/log/pffirewall.log中。显然,记录器仍与旧的syslog工具和/etc/syslog.conf绑定。