導航:首頁 > 編程語言 > java操作日誌設計

java操作日誌設計

發布時間:2023-05-24 04:05:14

java關於存取資料庫後做日誌記錄問題,不是用log4j

簡單的日誌管理剛剛做過一個,思路就是建一個日誌表,用hibernate和類映射專,在service層對該類封裝幾屬個增刪改查的方法,然後在需要記日誌的地方調用相應的方法,我這個項目中沒用到spring。建議可以考慮用spring的面向切面實現。

㈡ 求助,java中怎麼編寫操作日誌,並將每一步操作輸入到資料庫中

這是把日誌列印到文件,操作到資料庫里還需要你自己具體弄
1.將log4j-1.2.14.jar加入你的項目中;
2.在src/下創建log4j.properties|log4j.xml文件;
3.在web.xml中配置log4j的信息,如下:
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
4.在項目webroot下創建你想要保存日誌文件的文件夾及文件,如webroot/logs/web_app.log;
具體log4j.properties文件,給你一個示例吧,如下:
log4j.rootLogger=INFO, stdout, logfile

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
#log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.stdout.layout.ConversionPattern=- %m%n

log4j.appender.logfile=org.apache.log4j.RollingFileAppender
log4j.appender.logfile.File=${webapp.root}/logs/webapp.log
log4j.appender.logfile.MaxFileSize=512KB
# Keep three backup files.
log4j.appender.logfile.MaxBackupIndex=3
# Pattern to output: date priority [category] - message
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

log4j.logger.com.opensymphony.xwork2=ERROR

# Control logging for other open source packages
log4j.logger.org.springframework=ERROR
log4j.logger.org.quartz=ERROR
log4j.logger.net.sf.ehcache=ERROR
log4j.logger.net.sf.navigator=ERROR
log4j.logger.org.apache.commons=ERROR
log4j.logger.org.apache.struts=ERROR

# Struts OgnlUtil issues unimportant warnings
log4j.logger.com.opensymphony.xwork2.util.OgnlUtil=error
log4j.logger.com.opensymphony.xwork2.ognl.OgnlValueStack=error
具體寫法可根據自己的項目進行配置。

㈢ 怎麼用就java 做日誌分析啊

日誌分2種,
一種是存DB的,在db里存各種操作記錄,訪問記錄等等,是存在許多表裡的記錄。
另一種是存文件的,記錄的是伺服器輸出的log信息。
看你有統計數據的需求應該去分析DB里的日誌表,而不是去分析日誌文件。你把需求理解錯了

㈣ java中如何使用log4j將記錄的操作日誌信息

  1. 主要是通過配置文件

    1.1 Log4j 支持兩種配置文件格式,一種是 XML 格式的文件,一種是 Java 特性文件 lg4j.properties (鍵 = 值)。

  2. Logger 負責處理日誌記錄的大部分操作。
    其語法為:
    log4j.rootLogger = [ level ] , appenderName, appenderName, …
    2.1 level 是日誌記錄的優先順序,分為 OFF 、 FATAL 、 ERROR 、 WARN 、 INFO 、 DEBUG 、 ALL
    或者自定義的級別。

    2.2Log4j 建議只使用四個級別,優先順序從高到低分別是 ERROR 、 WARN 、 INFO 、 DEBUG

    2.3通過在這里定義的級別,您可以控制到應用程序中相應級別的日誌信息的開關。比如在這里定義了
    INFO 級別,只有等於及高於這個級別的才進行處理,則應用程序中所有 DEBUG 級別的日誌信息將不被列印出來。

    2.4 ALL: 列印所有的日誌,
    OFF :關閉所有的日誌輸出。 appenderName 就是指定日誌信息輸出到哪個地方。可同時指定多個輸出目的地。

  3. 配置日誌信息輸出目的地 Appender 負責控制日誌記錄操作的輸出。

    3.1log4j.appender.appenderName = fully.qualified.name.of.appender.class
    3.2log4j.appender.appenderName.option1 = value1
    3.3log4j.appender.appenderName.optionN = valueN

  4. Log4j 提供的 appender

    4.1org.apache.log4j.ConsoleAppender (控制台),
    4.2org.apache.log4j.FileAppender (文件),
    4.3org.apache.log4j.DailyRollingFileAppender (每天產生一個日誌文件),
    4.4org.apache.log4j.RollingFileAppender
    (文件大小到達指定尺寸的時候產生一個新的文件),可通過 log4j.appender.R.MaxFileSize=100KB
    設置文件大小,還可通過 4.5log4j.appender.R.MaxBackupIndex=1 設置為保存一個備份文件。
    4.6org.apache.log4j.WriterAppender (將日誌信息以流格式發送到任意指定的地方)

    5.Layout

    5.1org.apache.log4j.HTMLLayout (以 HTML 表格形式布局),
    5.2org.apache.log4j.PatternLayout (可以靈活地指定布局模式),
    5.3org.apache.log4j.SimpleLayout (包含日誌信息的級別和信息字元串),
    5.4org.apache.log4j.TTCCLayout (包含日誌產生的時間、線程、類別等等信息) 6.格式化日誌信息
    Log4J 採用類似 C 語言中的 printf 函數的列印格式格式化日誌信息,列印參數如下:
    6.1%m 輸出代碼中指定的消息
    6.2%p 輸出優先順序,即 DEBUG , INFO , WARN , ERROR , FATAL
    6.3%r 輸出自應用啟動到輸出該 log 信息耗費的毫秒數
    6.4%c 輸出所屬的類目,通常就是所在類的全名
    6.5%t 輸出產生該日誌事件的線程名
    6.6%n 輸出一個回車換行符, Windows 平台為 「rn」 , Unix 平台為 「n」
    6.7%d 輸出日誌時間點的日期或時間,默認格式為 ISO8601 ,也可以在其後指定格式,比如: %d{yyyy MMM dd HH:mm:ss,SSS} ,輸出類似: 2002 年 10 月 18 日 22 : 10 : 28 , 921
    6.8%l 輸出日誌事件的發生位置,包括類目名、發生的線程,以及在代碼中的行數。 7. log4j.propertie 示例文件:

    log4j.rootCategory=INFO, stdout,file

    7.1 定義名為 stdout 的輸出端的類型
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=[QC] %p [%t] %C.%M(%L) | %m%n

    7.2定義名為 file 的輸出端的類型為每天產生一個日誌文件。
    log4j.appender.file =org.apache.log4j.DailyRollingFileAppender
    log4j.appender.file.File=log.txt
    log4j.appender.file.layout=org.apache.log4j.PatternLayout
    log4j.appender.file.layout.ConversionPattern=%d-[TS] %p %t %c - %m%n


    7.3指定 com.neusoft 包下的所有類的等級為 DEBUG 。可以把 com.neusoft 改為自己項目所用的包名。
    log4j.logger.com.neusoft=DEBUG

    7.4如果項目中沒有配置 EHCache ,則配置以下兩句為 ERROR 。
    log4j.logger.com.opensymphony.oscache=ERROR
    log4j.logger.net.sf.navigator=ERROR

    8struts 配置
    log4j.logger.org.apache.commons=ERROR

    log4j.logger.org.apache.struts=WARN

    8.1 displaytag 配置
    log4j.logger.org.displaytag=ERROR

    8.2 spring 配置
    log4j.logger.org.springframework=DEBUG

    8.3 ibatis 配置
    log4j.logger.com.ibatis.db=WARN
    8.4 hibernate 配置

    log4j.logger.org.hibernate=DEBUG log4j.logger.org.apache.velocity=FATAL
    log4j.logger.com.canoo.webtest=WARN

㈤ java 創建一個log日誌

這是以前在網上看到關於處理log日誌的一段代碼,一起學習吧。
至於存到資料庫,那就得再打開log日誌找到所需要的信息做操作了。
importjava.util.logging.*;
importjava.io.*;
publicclassMemoryHandlerTest{
FileHandlerfhandler;
Loggerlogger;
MemoryHandlermhandler;
MemoryHandlerTest(){
try{
fhandler=newFileHandler("my.log");
intnumRec=5;
mhandler=newMemoryHandler(fhandler,numRec,Level.OFF);
logger=Logger.getLogger("com.mycompany");
logger.addHandler(mhandler);
}catch(IOExceptione){
}
}
publicstaticvoidmain(Stringargs[]){
MemoryHandlerTestmt=newMemoryHandlerTest();
inttrigger=(int)(Math.random()*100);
for(inti=1;i<100;i++){
mt.logger.log(Level.INFO,"日誌記錄"+i);
if(i==trigger){
mt.mhandler.push();
break;
}
}
}
}

㈥ java開發怎麼做日誌功能 就是記錄用戶每一步的操作具體做什麼了

細說起來,還算是比較麻煩的。大概給你個思路:
要記錄操作日誌,還能查看,那肯定得需要把操作記錄保存起來——直接保存到資料庫即可。
日誌管理模塊的話,因為有上邊的日誌記錄了,做個刪查的功能應該好做。這塊就不細說了。

最主要的地方:怎樣記錄日誌。思路如下:
先分析好需要記錄哪些日誌,這個一般都記錄新增、修改、刪除數據的操作。另外有些特殊的查詢操作也要記錄。

其實是如何記錄。一開始提到了日誌入庫。現在有個問題是什麼時候來做個邏輯。這個時機一般也是訪問者發起操作時就開始做。比如說在action或者servlet或者controller的對應的方法體里開始記錄。當然這需要寫好日誌入庫的邏輯。

其實這個日誌管理也是個比較完整的功能塊,甚至可以是個小系統。也有許多小細節和解決方案。思路有了,如何實現就根據情況而定吧。

㈦ java開發怎麼做日誌功能 就是記錄用戶每一步的操作具體做什麼了

細說起來,還算是抄比較麻煩的。大概給你個思路:
要記錄操作日誌,還能查看,那肯定得需要把操作記錄保存起來——直接保存到資料庫即可。
日誌管理模塊的話,因為有上邊的日誌記錄了,做個刪查的功能應該好做。這塊就不細說了。

最主要的地方:怎樣記錄日誌。思路如下:
先分析好需要記錄哪些日誌,這個一般都記錄新增、修改、刪除數據的操作。另外有些特殊的查詢操作也要記錄。

其實是如何記錄。一開始提到了日誌入庫。現在有個問題是什麼時候來做個邏輯。這個時機一般也是訪問者發起操作時就開始做。比如說在action或者servlet或者controller的對應的方法體里開始記錄。當然這需要寫好日誌入庫的邏輯。

其實這個日誌管理也是個比較完整的功能塊,甚至可以是個小系統。也有許多小細節和解決方案。思路有了,如何實現就根據情況而定吧。

㈧ Java中如何記錄管理員的操作日誌,並且在web界面可以查詢到這些信息求哪位大神指教!

建一個操作日誌的表,可以在具體操作方法的地方,添加操作記錄,然後查詢這個表就可以了

㈨ java如何做系統操作日誌

手頭沒有代碼,用文字書寫比較麻煩,說說思路吧:
1):操作日誌與每一個人的系統許可權密切相關,在前期定義許可權的時候,必須區分好每一個用戶級別的許可權(一級菜單與菜單下具體功能),需要用多張表進行許可權標識,並且建立各個表之間的關聯關系(具體設置此處略)。
2):當用戶點擊系統內每一個功能(每一個功能按鈕)的時候,一方面實現按鈕功能(新建按鈕實現新建功能),另外一方面將此處的功能名稱、模塊名稱、用戶名、時間等信息一並存儲到用戶操作表裡面。
3):在用戶操作查詢頁面輸入相應的條件,在用戶操作表內查詢即可。

閱讀全文

與java操作日誌設計相關的資料

熱點內容
不用網路載入的單機游戲有哪些 瀏覽:608
數據線插頭怎麼接頭 瀏覽:577
網路載入視頻失敗是怎麼回事 瀏覽:805
傳奇賬號在哪個文件夾里 瀏覽:346
百度app在哪裡安裝 瀏覽:587
如何設置路由器網路不斷網 瀏覽:471
傳到qq群里的文件怎麼刪除 瀏覽:861
索尼安卓71更新日誌 瀏覽:234
怎麼找手機里的垃圾app 瀏覽:540
2015藍橋杯代碼填空 瀏覽:698
安卓資料庫dbexecSQL 瀏覽:227
doc重命名文件格式 瀏覽:728
getscreen截圖工具下載 瀏覽:719
共識數據是什麼時候開始的 瀏覽:96
數碼管顯示電壓程序 瀏覽:479
資料庫文件有哪個 瀏覽:543
途強儲存在哪個文件夾 瀏覽:172
如何恢復被覆蓋文件 瀏覽:611
iphone5用哪個版本最好 瀏覽:327
extjsgrid禁用 瀏覽:426

友情鏈接