當前位置:名人名言大全網 - 短信平臺 - 發送短信情況log用什麽數據庫合適

發送短信情況log用什麽數據庫合適

壹、前提條件

系統必須是使用LOG4J進行日誌管理,否則方法無效。

系統必須包含commons-logging-xxx.jar,log4j-xxx.jar這兩個JAR包,XXX為版本號。

二、操作步驟

1、創建日誌表

要把日誌持久化,必須在數據庫中創建壹張用來存儲日誌信息的表,表內字段為日誌

的壹個主要屬性包括:操作類,執行方法,打印時間,日誌級別,日誌內容。

CREATE TABLE RESLOG (LOGID VARCHAR2(20) NOT NULL,

CLASS VARCHAR2(200),

METHOD VARCHAR2(100),

CREATETIME DATE,

LOGLEVEL VARCHAR2(50),

MSG VARCHAR2(4000))

因為存儲的類為類的全部路徑,所以CLASS字段長度需要比較大。

2、日誌管理配置

LOG4J主要有兩種配置文件.properties和.xml,這裏以properties文件為基礎來講

述,關於XML文件的配置,相信大家看完下面的介紹也壹樣能輕松完成。

通常在LOG4J.PROPERTIES文件的第壹行是:

log4j.rootLogger= XXX,這句是控制日誌的輸出,如果想吧日誌輸出到數據庫,

則需要在XXX中添加逗DB地,如log4j.rootLogger=INFO,stdout,Platform,db。上面

這句就是把日誌中級別為INFO的信息輸出到STDOUT,PLATFORM和DB

(DATABASE)中。

配置好如上的信息,LOG4J就知道用戶是想把信息存入數據庫,接下來我們就要來

配置數據庫的相關信息(包括緩存,數據庫連接信息,和執行SQL),配置信息如下:

###JDBCAppender

log4j.appender.db = org.apache.log4j.jdbc.JDBCAppender

//這個配置是選擇使用JDBCAppender方法,將日誌信息存儲到數據庫。當然,如果妳還要做其他操作,可以自己寫個類,繼承JDBCAppender就OK了。

log4j.appender.db.BufferSize=1

//這個配置是告訴LOG4J,有多少條日誌信息後才存入數據庫,我這裏是1,就是說有壹條就查壹條,顯然這樣在生產環境下是很影響系統性能的。

log4j.appender.db.driver=oracle.jdbc.driver.OracleDriver

//這個配置是告訴LOG4J,做數據庫存儲所用的驅動。

log4j.appender.db.URL=jdbc:oracle:thin:@<ip>:<port>:<sid>

//這個配置數據庫連接的URL,不用說也都知道。

log4j.appender.db.user=XXX

log4j.appender.db.password=XXX

//上面兩個是數據庫連接時的用戶名和密碼

log4j.appender.db.sql=insert into RESLOG

(LogId,Class,Method,createTime,LogLevel,MSG)

values (SQ_RESLOG_LOGID.Nextval,'%C','%M',

to_date('%d{-MM-dd HH:mm:ss}','-MM-dd

HH24:mi:ss'),'%p','%m')

//這個配置是告訴當LOG4J吧日誌存儲數據庫時用的SQL語句。SQ_RESLOG_LOGID.Nextval是我建的壹個SEQUENCE;‘%C’是日誌中的CLASS;‘%M’是打印日誌是執行到類裏的方法;‘%d’是打印的時間,它支持格式化;‘%P’是日誌級別,包括INFO、DEBUG、ERROR等;‘%m’是MSG,日誌內容。註意這裏的參數區分大小寫。

log4j.appender.db.layout=org.apache.log4j.PatternLayout

通過上面的配置,現在再啟動服務,LOG4J就會自動把原來存儲在.LOG文件中的信息,同時存儲到數據庫了。