ace_debug 常規的一些輸出訊息
ace_error 會提供程式出錯的一些低階訊息
2個巨集的用法上是一致的
ace_debug(錯誤級別,"格式串",變數1...變數n)
其中部分錯誤級別系統定義如下:
lm_shutdown = 01,系統宕機級別
lm_trace = 02,跟蹤級別
lm_debug = 04,debug級別
lm_info = 010,常規資訊級別
lm_notice = 020,注意級別
lm_warning = 040,警告級別
lm_startup = 0100,啟動級別
lm_error = 0200,錯誤級別
lm_critical = 0400,危急級別
lm_alert = 01000,可修復的警告級別
lm_emergency = 02000,全域性警告級別
部分格式串使用如下:
跟c 中printf使用類似
%n-表當前程式名稱
%t-表當前執行緒號
%p-表指標
%s-字串
ace通過全域性單體例項 ace_log_msg 管理和控制輸出,我們可以利用這個例項把輸出重定向
到檔案,也可以重定向到標誌輸出
其中還可以控制什麼級別的訊息可被輸出,簡單使用如下:
ace_log_msg->set_flags (ace_log_msg::stderr);
設定輸出到標準錯誤輸出
ace_log_msg->clr_flags (ace_log_msg::stderr);
關閉輸出到標誌錯誤輸出
ace_log_msg->set_flags (ace_log_msg::ostream);
ofstream myostream (filename, ios::out | ios::trunc);
ace_log_msg->msg_ostream (&myostream);
設定輸出到檔案
u_long priority_mask =ace_log_msg->priority_mask (ace_log_msg::process);
ace_set_bits (priority_mask,lm_debug |lm_info);
設定只記錄lm_debug 或者lm_info級別的訊息
ace_clr_bits (priority_mask,lm_debug | lm_info);
清除設定條件
ace_log_msg還有乙個非常有意思的功能,能以16進製制方式輸出記憶體中的塊 ,簡單使用如下:
ace_log_msg->log_hexdump (lm_debug,
(char *) array,
sizeof array);
下面附上乙個使用例子,例子**於ace包中的例子程式
#include "ace/os_main.h"
#include "ace/streams.h"
#include "ace/log_msg.h"
int
ace_tmain (int, ace_tchar *)
HAProxy 日誌輸出及配置
正所謂,沒有軟體敢說沒有bug,人無完人,software is not perfect software。是軟體就可能存在bug,那麼如果出現bug,我們就要分析對我們業務的影響及可能如何避免bug的再現。haproxy也不例外,也可能在特殊場景下出現bug,因此我們就有必要記錄下必要的日誌資訊。...
httpclient及http日誌輸出
目錄 httpclient及http日誌輸出 借助logbook輸出http日誌 pom新增logbook依賴 工程新增logbook filter以輸出日誌 在服務提供工程新增logbook filter以輸出日誌和服務消費者工程httpclient新增logbook 說明 1 logbook的依...
scrapy log日誌的配置及輸出
原文 1 在配置檔案中設定日誌輸出檔名和日誌等級 1 為什麼以日期為檔名?因為這樣可以方便開發者檢視每天的日誌資訊,同時也可以防止單檔案log日誌資訊堆積的越來越多,所以將當天日誌資訊儲存到當天的日誌檔案中 2 配置選項有日誌等級log level 日誌檔案路徑log file,我這裡設定等級為wa...