構建工程,加入assert.h|cpp, datalog.h|cpp,開始修改**和編譯,難度也不會很大。
出處:最近想找個好用的log工具,比較了一下流行的開源log工具log4c,log4cpp, log4cxx等,覺得還是log4c比較合適。
log4cxx需要依賴於apr。
log4cpp較log4c移植性稍差些。
log4c基本上都是一些純c的東西,移植性比其他二者都要好。
上述工具都很優秀,但用熟練一種工具足以,這樣有助於提高效率,以後如果有什麼滿足不了需要的在考慮其他。
在c專案或是c++專案中都是可以使用log4c,恩,就是它了。
log4c基本概念
log4c使用和其他log4j系工具一樣直截了當。
1log4c和所有log4j系的log工具一樣,都是可以通過檔案配置log特性的。其配置檔案採用xml形式,通常叫做log4crc。通過修改log4crc,可以達到配置log4c的目的。//初始化
2log4c_init();3//
獲取乙個已有的category
4log4c_category_t
*mycat
=log4c_category_get(
"mycat
"); 5//
用該category進行日誌輸出,優先順序為debug,輸出資訊為 "hello world!"
6log4c_category_log(mycat, log4c_priority_debug,
"hello world!
");
以上**片段其對應的log4crc可以是
1看其log的優先順序定義,共有11個。xml version="1.0" encoding="iso-8859-1"
?>
2doctype log4c system ""
>34
<
log4c
version
="1.2.1"
>
5<
config
>
6<
bufsize
>
0bufsize
>
7<
debug
level
="2"
/>
8<
nocleanup
>
0nocleanup
>
9<
reread
>
1reread
>
10config
>
11....
12<
category
name
="mycat"
priority
="debug"
="stdout"
/>
13<
name
="stdout"
type
="stream"
layout
="basic"
/>
14<
layout
name
="basic"
type
="basic"
/>
15log4c
>
1實際上,我覺的用不了那麼多優先順序,有差不多5個就夠了,比如最典型的幾個吧,error, warn, info, debug, trace。typedef
enum
log4c_priority_level_t;
1/*2ok,現在同樣是輸出乙個"hello world!",比較下用巨集擴充套件前後的差別吧* logger.h3*
4* created on:
5* author: lijy6*/
78#ifndef logger_h_
9#define
logger_h_
1011
#include
"log4c.h"12
13#define
log_error(category, msg, args...) \
1418
19#define
log_warn(category, msg, args...) \20
2425
#define
log_info(category, msg, args...) \
2630
31#define
log_debug(category, msg, args...) \
3236
37#define
log_trace(category, msg, args...) \
3842
43#endif
/* logger_h_ */
log4c_category_log(mycat, log4c_priority_debug, "hello world!"); <==>
log_debug(mycat, "hello world!")
應該能少敲不少**吧。
log4c 如何編譯到ARM板子上去使用
1 編譯到x86環境,正常步驟如下 configure prefix usr local make make install 2 如果不想依賴expat解析器,我們可以加 without expat 3 如果我們要指定軟體執行的系統平台,交叉環境下,我們可以用 host選項來設定,如果執行在arm平...
使用Log4j日誌工具
步驟2 建立log4j.properties 檔案 注意,必須放在soruce folder資料夾下。檔案內容如下 注釋 logfile 指輸出到檔案 o 表示輸出到控制台 log4j.rootlogger debug,logfile,o 把日誌資訊輸出到控制台 步驟3 建立乙個logger 物件 ...
log4c 在程式中設定日誌檔名
使用過log4c的人都知道,log4c的需要引數是通過logcrc配置檔案設定的。例如 紅色字的設定的日誌檔案的名稱。如果日誌檔案名字在程式就不能改變了。我想要通過程式改變日誌檔案的名字。在網上查了一下,寫的都比較基礎。外文的資料也懶得去看。看了log4c的例子裡也沒有介紹。所以自己研究了一下原始碼...