寻找在OS X(Mac)上logging进程终止的方法

我正在寻找一种方法来logging我的Mac上的所有进程terminal(OS X 10.6.8)。 (并看到PID,时间戳,进程名称)

我已经为HP-UX实现了类似的function,但是它需要一个内核级的驱动程序,并拦截了几个“exit()”的变体(正常的和在中止时代表进程调用的)。

我为什么要这些信息?

我一直在我的系统日志文件(dmesg)中看到消息,如:

CODE SIGNING: cs_invalid_page(0x1000): p=91550[GoogleSoftwareUp] clearing CS_VALID CODE SIGNING: cs_invalid_page(0x1000): p=92088[GoogleSoftwareUp] clearing CS_VALID 

尽pipedmesg缺less时间戳,但是应用程序/实用程序/控制台:数据库:所有:searchCS_VALID显示消息大概每58分钟出现一次。

我怀疑“p =”后面的数字是一个进程id(pid)…但是对于一个很久以前我看到这个消息就终止的进程。

所以,如果有一个进程终止日志机制logging了pid,终止时间,终止原因和进程名称(在终止时),这可能使我可以确定是谁导致这些错误被logging!

(不,我没有在我的Mac上运行Chrome, ps -ef | grep -i goog没有得到任何结果…我不是有意识地在Mac上运行任何Google应用程序)

谢谢,

Stan [email protected]

编辑:有趣的观察加里,谢谢! 在我的系统中,似乎与dmesg中的pid和Library / Logs / GoogleSoftwareUpdateAgent.log中的pid没有关系…但是如果您看到这种关联很有趣!

我在我的谷歌日志中“无法连接到系统引擎”,但不到每小时一次。 这是最近的三个:

 2012-10-31 23:42:13.019 GoogleSoftwareUpdateAgent[13062/0xb0207000] [lvl=3] -[KSAgentApp(KeystoneThread) runKeystonesInThreadWithArg:] Failed to connect to system engine. 2012-11-01 05:34:33.051 GoogleSoftwareUpdateAgent[18632/0xb0207000] [lvl=3] -[KSAgentApp(KeystoneThread) runKeystonesInThreadWithArg:] Failed to connect to system engine. 2012-11-01 11:26:49.842 GoogleSoftwareUpdateAgent[23871/0xb0207000] [lvl=3] -[KSAgentApp(KeystoneThread) runKeystonesInThreadWithArg:] Failed to connect to system engine. 

…大概每六小时一次,而且不同于dmesg的pid。

 less $HOME/Library/Logs/GoogleSoftwareUpdateAgent.log 

似乎已经在loggingPID:

 2012-10-31 09:35:17.003 GoogleSoftwareUpdateAgent[24805/0xb0289000] [lvl=3] -[KSAgentApp(KeystoneThread) runKeystonesInThreadWithArg:] Failed to connect to system engine. 

这涉及到dmesg消息:

 CODE SIGNING: cs_invalid_page(0x1000): p=24805[GoogleSoftwareUp] clearing CS_VALID