适用于Mac App的stdout在哪里?

时间:2010-02-03 23:24:51

标签: macos console stdout

以前是stdout进入Console.app显示的控制台日志。我一直在使用firefox插件遇到一些问题(请参阅其他问题,抱歉垃圾邮件......)我试图使用printfs至少看看我是否正在启动我的插件。

我今天刚刚注意到我的控制台日志自1月6日以来一直没有更新。(是的,我过去一个月一直在使用该机器。)现在,我不是唯一使用控制台日志的程序所以所有这些消息必须转到其他地方。

有谁知道在哪里?

问题是syslogd被破坏了。现在已经修好了。

3 个答案:

答案 0 :(得分:3)

printf应该转到Console.app。这听起来像是你的。

调试插件的一个好方法是将FireFox设置为XCode项目的自定义可执行文件,并在调试器中运行。然后XCode控制台将捕获输出。 在这种情况下,您还可以使用断点来查看您的插件是否正在加载而不是printf。

答案 1 :(得分:3)

解决方案:问题不在于stdout没有进入控制台。问题是控制台没有写入,因为syslogd被错误。 Syslogd由于某种原因被沙盒化,因此自1月6日以来,NOTHING已被写入控制台。

解决方案是重新注释掉“如果你想要沙盒syslogd,请取消注释”这一部分的LaunchDaemons / com.apple.syslogd.plist。

解决方案来自superuser.com .... 谢谢!

答案 2 :(得分:0)

启动应用程序并运行“ lsof | grep ”后,它显示文件描述符0、1和2均为/ dev / null