金慶的專欄
C++博客
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
::
423 隨筆 :: 0 文章 :: 454 評論 :: 0 Trackbacks
公告
我的隨筆
我的評論
我參與的隨筆
留言簿
(12)
給我留言
查看公開留言
查看私人留言
隨筆分類
(502)
1. C/C++(166)
(rss)
2. 網游開發(108)
(rss)
3. Golang(20)
(rss)
4. Linux/Unix(30)
(rss)
5. 軟工與管理(44)
(rss)
6. Python(23)
(rss)
7. Erlang(18)
(rss)
8. Rust(16)
(rss)
9. 其它(77)
(rss)
隨筆檔案
(423)
2023年1月 (1)
2022年11月 (1)
2022年10月 (2)
2022年9月 (1)
2022年4月 (6)
2022年1月 (2)
2021年12月 (4)
2021年11月 (6)
2021年10月 (2)
2021年9月 (2)
2021年8月 (7)
2021年7月 (2)
2021年5月 (2)
2021年3月 (1)
2021年2月 (2)
2021年1月 (1)
2020年12月 (1)
2020年10月 (1)
2020年9月 (5)
2020年8月 (1)
2020年7月 (1)
2020年6月 (1)
2020年4月 (2)
2020年3月 (3)
2020年2月 (3)
2020年1月 (1)
2019年12月 (1)
2019年9月 (2)
2019年4月 (2)
2019年1月 (1)
2018年12月 (1)
2018年11月 (3)
2018年10月 (1)
2018年9月 (3)
2018年8月 (3)
2018年7月 (2)
2018年6月 (4)
2018年5月 (4)
2018年4月 (4)
2018年3月 (1)
2018年1月 (2)
2017年12月 (2)
2017年11月 (3)
2017年10月 (3)
2017年8月 (7)
2017年7月 (1)
2017年6月 (1)
2017年5月 (3)
2017年4月 (3)
2017年3月 (3)
2017年2月 (2)
2017年1月 (2)
2016年12月 (5)
2016年11月 (2)
2016年10月 (2)
2016年9月 (1)
2016年8月 (6)
2016年7月 (3)
2016年6月 (2)
2016年5月 (4)
2016年4月 (2)
2016年3月 (2)
2016年1月 (3)
2015年12月 (2)
2015年11月 (2)
2015年10月 (1)
2015年8月 (2)
2015年7月 (1)
2015年6月 (1)
2015年5月 (4)
2015年4月 (3)
2015年3月 (4)
2015年2月 (5)
2015年1月 (4)
2014年12月 (3)
2014年11月 (3)
2014年10月 (2)
2014年9月 (3)
2014年8月 (1)
2014年4月 (4)
2014年3月 (1)
2014年2月 (4)
2014年1月 (5)
2013年12月 (5)
2013年11月 (5)
2013年9月 (2)
2013年8月 (2)
2013年7月 (2)
2013年6月 (2)
2013年5月 (1)
2013年1月 (2)
2012年12月 (1)
2012年11月 (1)
2012年9月 (1)
2012年8月 (3)
2012年7月 (2)
2012年6月 (1)
2012年4月 (3)
2012年3月 (2)
2012年2月 (3)
2012年1月 (2)
2011年11月 (2)
2011年10月 (3)
2011年9月 (2)
2011年8月 (2)
2011年7月 (3)
2011年6月 (2)
2011年5月 (3)
2011年1月 (2)
2010年12月 (1)
2010年11月 (2)
2010年10月 (2)
2010年9月 (3)
2010年8月 (2)
2010年7月 (3)
2010年6月 (1)
2010年5月 (3)
2010年4月 (3)
2010年3月 (5)
2010年2月 (4)
2010年1月 (4)
2009年12月 (2)
2009年11月 (3)
2009年10月 (4)
2009年9月 (3)
2009年8月 (2)
2009年7月 (4)
2009年6月 (1)
2009年5月 (3)
2009年4月 (4)
2009年3月 (2)
2009年2月 (5)
2009年1月 (1)
2008年12月 (7)
2008年11月 (4)
2008年10月 (1)
2008年9月 (3)
2008年8月 (4)
2008年7月 (3)
2008年6月 (4)
2008年5月 (6)
2008年4月 (7)
2008年3月 (6)
2008年1月 (5)
2007年12月 (7)
2007年11月 (4)
2007年10月 (5)
2007年9月 (6)
2007年8月 (8)
2007年7月 (5)
相冊
公告照片
搜索
積分與排名
積分 - 659027
排名 - 25
最新評論
1.?re: boost::asio::spawn 將一統C++網絡庫
asio 成為C++首選網絡庫
--linda
2.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--金慶
3.?re: mingw編譯OrzNet
能發送一個mingw編譯好的OrzNet庫給我嗎? liuweiqcxy@163.com
謝謝!
--劉威
4.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--bigbad
5.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--bigbad
閱讀排行榜
1.?"multiple definition of" 錯誤(11054)
2.?SVN中邪惡的replace(10972)
3.?VS2005編譯libevent(10429)
4.?混音算法的學習與研究(10230)
5.?C調用lua腳本的效率測試(9019)
評論排行榜
1.?VC6正在被拋棄(35)
2.?VS2005編譯libevent(21)
3.?"multiple definition of" 錯誤(18)
4.?C++引用優于指針(17)
5.?ACE與ASIO之間關于Socket編程的比較(16)
log4cxx的使用模式
log4cxx的使用模式
(金慶的專欄)
== 初始化配置 ==
Main.cpp中初始化配置.
如果不需要監視配置文件并自動重新配置,就不需要調用configureAndWatch().
執行目錄下的log4j.properties是會自動讀取的。
#include <log4cxx/propertyconfigurator.h>
int main()
{
const long WATCH_MILLISECONDS = 5000;
log4cxx::PropertyConfigurator::configureAndWatch(
"log4j.properties", WATCH_MILLISECONDS);
...
}
== 輔助宏 ==
為log4cxx的使用建立輔助宏,如Log.h。
因為經常與boost::format配合使用,所以添加了該頭文件。
// Log.h
// log4cxx helper.
#pragma once
#include <boost/format.h>
#include <log4cxx/logger.h>
#define LOG_DEBUG(name, message) { \
LOG4CXX_DEBUG(::log4cxx::Logger::getLogger(name), message); }
...
#define LOG_FATAL(name, message) { \
LOG4CXX_FATAL(::log4cxx::Logger::getLogger(name), message); }
== 使用宏 ==
在User.cpp中使用.
#include "Log.h"
const char LOG[] = "User";
void foo()
{
LOG_DEBUG(LOG, boost::format("%1% %2%") % "Hello" % "World");
...
}
== log4j.properties ==
配置文件 log4j.properties 如下:
log4j.debug = true
#log4j.rootLogger = WARN, R
log4j.rootLogger = INFO, R, C
log4j.appender.R = org.apache.log4j.RollingFileAppender
log4j.appender.R.File = log.txt
log4j.appender.R.MaxBackupIndex = 100
log4j.appender.R.layout = org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern = %d %5p %c %x - %m%n
log4j.appender.C = org.apache.log4j.ConsoleAppender
log4j.appender.C.layout = org.apache.log4j.PatternLayout
log4j.appender.C.layout.ConversioinPattern = %d %5p %c %x - %m%n
# Levels: DEBUG, INFO, WARN, ERROR, FATAL
log4j.logger.main = INFO
log4j.logger.User = DEBUG
posted on 2011-11-24 18:02
金慶
閱讀(1240)
評論(3)
編輯
收藏
引用
所屬分類:
1. C/C++
評論
#
re: log4cxx的使用模式
2012-02-14 22:25
玉兔
linux程序使用log4cxx輸出日志后,刪除正在生成的日志文件,日志文件不會自動生成,請問這個問題該如何解決?
回復
更多評論
#
re: log4cxx的使用模式
2012-02-15 10:15
金慶
@玉兔
方法1: 不要刪正打開的日志。
方法2: 修改log4cxx代碼,讓它自動生成新的日志。
回復
更多評論
#
re: log4cxx的使用模式
2012-04-27 18:02
金慶
宏定義需要使用 do { ... } while(0) 包裹,不然 if (...) LOG_DEBUG("n", "m"); else ... 會報編譯錯誤。
回復
更多評論
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
How are dtLinks created in NavMesh
C++ parameter passing rules
Naming Conventions for Accessors
Visual Studio 2019 Compiler Hangs
Fbx File Format Identifier
查找內存錯誤
std::thread 中的異常會丟失調用棧
用賦值代替 protobuf CopyFrom()
vs2017 linux 編譯輸出改成 vs 格式
為 LiteIDE 添加選中標記
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 金慶
久久久久久久波多野结衣高潮
|
精品一二三区久久aaa片
|
欧美亚洲国产精品久久蜜芽
|
美女写真久久影院
|
伊人久久大香线蕉综合5g
|
人妻无码αv中文字幕久久
|
亚洲国产成人久久精品影视
|
99久久免费国产精品特黄
|
久久91精品国产91久久小草
|
久久综合色区
|
久久99精品国产一区二区三区
|
综合久久久久久中文字幕亚洲国产国产综合一区首
|
久久精品成人国产午夜
|
理论片午午伦夜理片久久
|
精品国产福利久久久
|
亚洲国产精品久久久天堂
|
久久久久国产精品嫩草影院
|
奇米影视7777久久精品
|
思思久久99热免费精品6
|
亚洲国产精品一区二区久久
|
欧美黑人又粗又大久久久
|
亚洲午夜福利精品久久
|
久久久久久A亚洲欧洲AV冫
|
MM131亚洲国产美女久久
|
综合人妻久久一区二区精品
|
青青草国产97免久久费观看
|
51久久夜色精品国产
|
久久精品国产免费
|
久久精品一区二区
|
国产午夜精品理论片久久影视
|
久久永久免费人妻精品下载
|
久久午夜无码鲁丝片秋霞
|
午夜精品久久久久久久无码
|
久久精品国产99久久香蕉
|
精品久久久久久久中文字幕
|
久久久久久久久久久久久久
|
久久亚洲sm情趣捆绑调教
|
最新久久免费视频
|
国内精品九九久久精品
|
国内精品人妻无码久久久影院导航
|
久久久久亚洲AV无码网站
|