大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

log4j教程
log4j技術(shù)
log4j案例
Log4j2技術(shù)
log42j案例
Logback技術(shù)
Logback案例

log4j日志記錄到數(shù)據(jù)庫

log4j API提供 org.apache.log4j.jdbc.JDBCAppender 對(duì)象,它能夠?qū)⑷罩拘畔⒃谥付ǖ臄?shù)據(jù)庫。

JDBCAppender 配置:

Property

描述

bufferSize

設(shè)置緩沖區(qū)的大小。默認(rèn)大小為1

driver

設(shè)置驅(qū)動(dòng)程序類為指定的字符串。如果沒有指定驅(qū)動(dòng)程序類,默認(rèn)為sun.jdbc.odbc.JdbcOdbcDriver

layout

設(shè)置要使用的布局。默認(rèn)布局是org.apache.log4j.PatternLayout

password

Sets the database password.

sql

指定SQL語句在每次記錄事件發(fā)生的時(shí)間執(zhí)行。這可能是INSERT,UPDATE或DELETE

URL

設(shè)置JDBC URL

user

設(shè)置數(shù)據(jù)庫用戶名

日志表配置:

開始使用基于JDBC日志,要?jiǎng)?chuàng)建在哪里保存日志信息的表。下面是創(chuàng)建日志表的SQL語句:

CREATE TABLE LOGS

   (USER_ID VARCHAR(20) NOT NULL,

    DATED   DATE NOT NULL,

    LOGGER  VARCHAR(50) NOT NULL,

    LEVEL   VARCHAR(10) NOT NULL,

    MESSAGE VARCHAR(1000) NOT NULL

   );

配置文件示例:

以下是將用于將消息記錄到一個(gè)日志表中的示例配置文件 log4j.properties的JDBCAppender

# Define the root logger with appender file

log4j.rootLogger = DEBUG, DB

# Define the DB appender

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

# Set JDBC URL

log4j.appender.DB.URL=jdbc:mysql://localhost/DBNAME

# Set Database Driver

log4j.appender.DB.driver=com.mysql.jdbc.Driver

# Set database user name and password

log4j.appender.DB.user=user_name

log4j.appender.DB.password=password

# Set the SQL statement to be executed.

log4j.appender.DB.sql=INSERT INTO LOGS

                      VALUES('%x','%d','%C','%p','%m')

# Define the layout for file appender

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

這里使用的是MySQL數(shù)據(jù)庫,必須要使用實(shí)際DBNAME,用戶ID和在其中創(chuàng)建的日志表的數(shù)據(jù)庫密碼。SQL語句是使用日志表名和輸入值到表,需要執(zhí)行INSERT語句。

JDBCAppender不需要明確定義的布局。相反,使用PatternLayout 傳遞給它 SQL語句

如果想擁有相當(dāng)于上述log4j.properties文件的XML配置文件,可以參考在這里的內(nèi)容: 

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration>

<appender name="DB" class="org.apache.log4j.jdbc.JDBCAppender">

   <param name="url" value="jdbc:mysql://localhost/DBNAME"/>

   <param name="driver" value="com.mysql.jdbc.Driver"/>

   <param name="user" value="user_id"/>

   <param name="password" value="password"/>

   <param name="sql" value="INSERT INTO LOGS VALUES('%x',

                             '%d','%C','%p','%m')"/>

   <layout class="org.apache.log4j.PatternLayout">

   </layout>

</appender>

<logger name="log4j.rootLogger" additivity="false">

   <level value="DEBUG"/>

   <appender-ref ref="DB"/>

</logger>

</log4j:configuration>

示例程序:

下面的Java類是一個(gè)非常簡(jiǎn)單的Java應(yīng)用程序使用Log4J日志庫例子,初始化,然后使用。

import org.apache.log4j.Logger;

import java.sql.*;

import java.io.*;

import java.util.*;

public class log4jExample{

  /* Get actual class name to be printed on */

  static Logger log = Logger.getLogger(

                      log4jExample.class.getName());

  public static void main(String[] args)

                throws IOException,SQLException{

  log.debug("Debug");

     log.info("Info");

  }

}

編譯和運(yùn)行:

下面是步驟編譯并運(yùn)行上述程序。確保進(jìn)行編譯和執(zhí)行之前,適當(dāng)?shù)卦O(shè)置PATH和CLASSPATH。

所有的庫應(yīng)該在CLASSPATH以及l(fā)og4j.properties文件應(yīng)該在PATH可用。所以有以下幾點(diǎn):

  • 創(chuàng)建log4j.properties如上圖所示。
  • 創(chuàng)建log4jExample.java如上圖所示,并對(duì)其進(jìn)行編譯。
  • 執(zhí)行log4jExample二進(jìn)制運(yùn)行程序。
  •  

現(xiàn)在檢查DBNAME數(shù)據(jù)庫里面日志表,發(fā)現(xiàn)下面的條目(記錄):

mysql >  select * from LOGS;

+---------+------------+--------------+-------+---------+

| USER_ID | DATED      | LOGGER       | LEVEL | MESSAGE |

+---------+------------+--------------+-------+---------+

|         | 2010-05-13 | log4jExample | DEBUG | Debug   |

|         | 2010-05-13 | log4jExample | INFO  | Info    |

+---------+------------+--------------+-------+---------+

2 rows in set (0.00 sec)

注:此處X被用于產(chǎn)生該記錄事件的線程相關(guān)聯(lián)輸出的NDC(嵌套診斷上下文)。使用NDC來區(qū)分客戶的服務(wù)器端組件處理多個(gè)客戶端。檢查L(zhǎng)og4J的手冊(cè)以獲取更多信息。

全部教程
主站蜘蛛池模板: 欧美成人免费午夜影视 | 欧美日韩一区二区三区麻豆 | 91视频青青草 | 米奇777第四久久久99 | 亚洲综合色在线观看 | 五月狠狠亚洲小说专区 | 日本一区二区三区四区五区 | 欧美韩国日本在线观看 | 在线视频亚洲 | 国产午夜精品久久久久免费视 | 九九精品热 | 成人18免费网站 | 欧美日韩亚洲国产一区二区综合 | 国产精品久久久久久久久ktv | 5060网永久免费一级毛片 | 亚洲综合套图 | 欧美毛片在线播放观看 | 全免费毛片在线播放 | 2018天天操 | 韩国精品欧美一区二区三区 | 久久伦理影院 | 天天干天天操天天 | 亚洲精品久久成人福利 | 一级肉体毛片视频免费看看 | 亚洲伊人精品综合在合线 | 成人亚洲国产精品久久 | 色综合天天综合高清网国产 | 国产精品成人h片在线 | 欧美一级美片在线观看免费 | 亚洲精品久久婷婷爱久久婷婷 | 尹人香蕉网 | 不卡影视| 免费超爽大片黄网站 | 久草综合视频在线 | 不卡无毒免费毛片视频观看 | 91在线视 | 激性欧美激情在线播放16页 | 久久久久久久综合 | 经典邵氏三级 在线观看 | 婷婷久月| 国产成人精品一区二区三在线观看 |