2017-06-13 80 views
0

我使用boost :: log作爲服務的日誌引擎。我知道如何將日誌輪轉設置爲每日/每週,但我想設置的是日誌的每小時輪換。我無法找到任何直接推動實施,我想也許有人有一個解決方法?每小時加速旋轉日誌

此外,是否可以旋轉創建的文件,即使沒有特定小時的日誌條目?

用例:

log_file.log 
13.06.2016 12:02 line1 
13.06.2016 12:23 line2 
13.06.2016 12:45 line3 
13.06.2016 13:02 line4 
13.06.2016 15:02 line5 

我想輸出文件是:

**log_file_13:06:2016-12** 
13.06.2016 12:02 line1 
13.06.2016 12:23 line2 
13.06.2016 12:45 line3 

**log_file_13:06:2016-13** 
13.06.2016 13:02 line4 

**log_file_13:06:2016-14** 

**log_file_13:06:2016-15** 
13.06.2016 15:02 line5 

任何建議/代碼示例讚賞。

回答

1

我想你使用的是boosts sink backends。可以按小時轉動,從那裏開始說:

時間間隔旋轉:rotation_at_time_interval類。通過這個謂詞,旋轉不會被束縛在任何時間點上,而是會在自上一次旋轉起經過指定的時間間隔後立即發生。這就是如何使旋轉每隔一小時:

sinks::file::rotation_at_time_interval(posix_time::hours(1)) 
+0

引人入勝我如何讀取相同的文檔沒有注意到時間的例子。感謝您指出 – Marty