通過應用程序Utilities/Console.app,我可以看到應用程序的控制檯輸出。從另一個應用程序獲取控制檯日誌到MacOSX
有沒有辦法從另一個應用程序訪問這個日誌?
更具體地說:我正在爲我的應用程序編寫一個崩潰處理程序,我希望它將控制檯輸出連接到崩潰信息。
通過應用程序Utilities/Console.app,我可以看到應用程序的控制檯輸出。從另一個應用程序獲取控制檯日誌到MacOSX
有沒有辦法從另一個應用程序訪問這個日誌?
更具體地說:我正在爲我的應用程序編寫一個崩潰處理程序,我希望它將控制檯輸出連接到崩潰信息。
/var/log/system.log並不是一個真正的解決方案,因爲輸出並沒有立即出現(這是一個大問題,因爲我的應急處理程序應該如何知道所有事情都完成了),還有相關的消息非常黑客,然後,當我開始應用程序的幾個實例時,我並不真正瞭解正確的相關輸出(除非我知道該PID,但即使如此,該PID也不是唯一的)。
知道,我很滿意的解決方案是應用程序本身跟蹤所有控制檯輸出。這是通過分叉自己並將其輸出管道輸送到叉子並在那裏模擬T恤工具來實現的,其中一個輸出是特殊的日誌文件。當它崩潰時,它會將日誌文件的文件名發送到崩潰處理程序。
如果您有興趣,請查看OpenLieroX源代碼(http://sourceforge.net/projects/openlierox)。
啊,剛發現有文件/var/log/system.log裏面包含這些信息。
看來,輸出不是在所有情況下,也有一些延遲,所以這不是真的有幫助。 – Albert 2009-10-16 19:33:03