日誌系統2

2021-09-01 01:56:53 字數 1414 閱讀 8832

目前流行的日誌門面介面有common-logging、slf4j,以前一直都在使用前者,後來許多文章都在介紹slf4j,很多地方都在介紹slf4j的優點(最主要的比common-logging優越的地方是能在osgi環境下使用,但是至於為什麼common-logging不能使用還是不太清楚),因此決定開始嘗試slf4j,對於jar包引入方面,感覺稍微沒有common-logging方便,common-logging會自動從眾多日誌實現的jar包中自動選擇,而slf4j需要放入「合適」的jar包才能使用,當然這根它的實現機制有關係,slf4j的實現機制要求她必須這麼做。

對於日誌門面介面的介紹網上有很多文章介紹,不多說廢話了,直接記錄點實惠的東西,供查用。

slf4j這是門面介面,沒有實現,如同common-logging一樣,需要搭配具體的實現才能使用;

貌似logback是slf4j的親密搭配,從引入jar包的名稱也能看出來;

下面介紹兩種搭配方式:

1. slf4j+logback

引入包:slf4j-api.jar

、logback-classic

、logback-core.jar (注意這三個版本必須一致)

logback最簡單的配置示例(不是必須的)logback.xml:

%d [%thread] %-5level %logger - %msg%n

2.slf4j+log4j

引入包:slf4j-api.jar、slf4j-log4j.jar、log4j.jar(注意三個版本必須一致)

log4j配置示例,log4j.properties:

#設定級別和目的地

#輸出到控制台

#設定輸出樣式

#自定義樣式

# %r 時間 0

# %t 方法名 main

# %p 優先順序 debug/info/error

# %c 所屬類的全名(包括包名)

# %l 發生的位置,在某個類的某行

# %m 輸出**中指定的訊息,如log(message)中的message

# %n 輸出乙個換行符號

#輸出到檔案(這裡預設為追加方式)

#設定檔案輸出路徑

#文字檔案

#設定檔案輸出樣式

無論哪種搭配方式,程式中使用的方法如下:

程式中先定義logger

private static logger logger = logge***ctory.getlogger(yourclass.class);//slf4j logging

程式中日誌輸出方法:

logger.debug("hello");

logger.info("hello{}",p);//p是變數

2 系統日誌和事件的挖掘 系統日誌的資料形式

系統日誌和事件的資料儲存形式主要有兩類 無結構的日誌資料 結構化或者半結構化的日誌事件資料。1.無結構的日誌資料 每條日誌或者時間都是以一條文字記錄或者短文的形式儲存在日誌檔案中,如常見的日誌檔案 linux日誌 apache伺服器日誌 hadoop日誌等的日誌資料都是記錄在乙個純文字日誌檔案中。整...

日誌 syslog系統日誌

原創 2017年02月17日 20 47 05 前言 本文列出了在linux系統下的幾個日誌檔案。以及結合message中的日誌記錄,作出了簡單分析。syslog是linux系統預設的日誌守護程序。預設的syslog配置檔案是 etc sysctl.conf檔案 通常,syslog 接受來自系統的各...

教務系統維護日誌(2) 學習筆記

1.1 2 string path request.getcontextpath 3 string basepath request.getscheme request.getservername request.getserverport path 5 string path request.ge...