我想了解如何在Linux上開發應用程序(只有C),以便可以在調試模式執行中獲取爲其生成的日誌文件。 Syslog是一個守護進程,我們的應用程序記錄到它的日誌消息與其他消息混合在一起。我想要一個自定義的日誌文件(只是與系統日誌不同,但是特定於此應用程序,並且每次都可以是相同的文件,或者每次執行時都是不同的文件)。我想問的是特定的DEBUG模式來縮小問題的範圍,但理想情況下,我想實現3種執行模式:啓用LOG模式(不調試),禁用LOG模式(不是調試模式),調試模式(將創建日誌在此模式下默認)。在Linux上爲C應用程序在DEBUG模式下執行自定義日誌記錄
0
A
回答
0
這沒有圖書館界面,如果這就是你要找的。
你的應用程序將需要打開日誌文件本身,那麼你可以定義一組功能登錄爲「錯誤」,「警告」,「信息」,「調試」等
你」我也希望有一些方法來定期滾動你的日誌文件。
如果要使用基於大小的滾動,可以使用fprintf
打印到日誌,然後捕獲返回值以獲取寫入的字節數。然後,您可以將該值添加到計數器並查看您是否達到了尺寸閾值。如果您想要基於日期的滾動,您可以設置下一個滾動的時間,然後檢查當前時間是否在該時間之後。
當您達到滾動標準時,您將關閉當前日誌文件,重命名該文件(如果需要,還需要舊文件),然後打開新的日誌文件。
要保持一定數量的文件,讓我們說n
日誌文件,先刪除logfile.n
,然後重命名logfile.n-1
到logfile.n
,logfile.n-2
到logfile.n-1
,等等,直到你得到你重新命名logfile
到logfile.1
最新的文件。
對於基於日期滾動,你只需要,如果你想每天滾動,logfile.YYYYMMDD_HH
如果你想每小時滾動,等等,從logfile
最近的日誌文件重命名爲logfile.YYYYMMDD
。
相關問題
- 1. 在N層應用程序中自定義日誌記錄
- 2. 部署在jboss上的應用程序的自定義日誌記錄信息
- 3. Android應用程序的自定義日誌記錄
- 4. SolrJetty日誌記錄 - 如何讓自定義日誌格式化程序工作?
- 5. 如何執行火花應用程序日誌記錄
- 6. 使用HTML自定義格式的Log4j.properties進行日誌記錄
- 7. Sailsjs - 用Winston自定義日誌記錄
- 8. 如何配置IBM WAS SystemOut日誌記錄以自定義每個應用程序的日誌記錄?
- 9. 自動日誌記錄和統計(C#應用程序)
- 10. 禁用在DEBUG模式下在Perl中執行子例程
- 11. Windows Azure日誌記錄:WADLogsTable作爲應用程序日誌?
- 12. 如何在多線程應用程序中執行文件日誌記錄
- 13. 與自定義處理程序的GWT遠程日誌記錄
- 14. python日誌記錄dictConfig自定義格式化程序不被稱爲
- 15. 的Python:在所有模塊自定義日誌記錄
- 16. 使用log4j進行CXF請求響應日誌記錄:debug
- 17. 在C++中自定義日誌記錄的方法
- 18. 爲什麼使用singleton進行應用程序日誌記錄?
- 19. 在PROD上將應用程序調試爲DEBUG模式 - 缺點?
- 20. Stackdriver自定義多行日誌記錄,時間格式
- 21. Python日誌記錄模塊在Mac上登錄,但不是在Linux上登錄
- 22. 。應用程序日誌記錄
- 23. web2py應用程序日誌記錄
- 24. Java應用程序+日誌記錄
- 25. 日誌記錄應用程序塊
- 26. Java小應用程序日誌記錄
- 27. Python日誌記錄 - 在DEBUG下面有什麼東西嗎?
- 28. 使用控制檯處理程序在生產模式下GWT日誌記錄
- 29. 如何在.NET Core應用程序中執行AWS X-Ray日誌記錄?
- 30. Rails的自定義記錄程序寫入日誌偶爾
謝謝dbush的解釋... – Bhargav