亞廈 日誌表的管理

2021-10-04 20:50:29 字數 2461 閱讀 6956

由於erp專案中沒有視覺化的日誌管理,配置一些開源的日誌系統又會占用一些伺服器資源,因此想模組化的處理系統的執行日誌,該日誌只記錄各模組的執行日誌,不需要記錄所有的系統日誌(記錄全部則會影響效能)。由於各模組的執行日誌相對整個系統的日誌來說較少,對系統效能的影響較小,因此開發該模組是可行的。

由於考慮到非侵入式,先看一下之前的日誌配置。

發現採用的是logback日誌。

但是仔細看完**後發現用到的logger物件卻有兩個(即,不同的類總共用到了兩種不同的logger類)

import org.apache.log4j.logger;

import org.slf4j.logger;

即log4j 和 slf4j這兩種。

甚至有些的在引用的時候,出現了下列用法(log4j的情況),這樣會導致每個例項都會建立乙個日誌物件(不好)

private logger logger = logger.

getlogger

(getclass()

);//用法有點問題

正確的應該建乙個靜態變數,歸屬於該類,而不是每個例項,如下(使用slf4j的情況):

private

static logger logger = logge***ctory.

getlogger

(currentclass.

class

);

(注意:獲取日誌物件時,log4j,使用的是logger.getlogger; 而slf4j,使用的是logge***ctory.getlogger)

看完上述情況,感覺日誌使用比較混亂,所以接下來打算統一使用一種:自定義模組級日誌。

首先新建乙個分支來開發該模組。

一、表設計:

create table "public"

."module_log"

("id" serial8,

"uuid"

varchar

(255),

"uuid_t"

varchar

(255),

"creater"

varchar

(255),

"create_time"

timestamp(6

),"updater"

varchar

(255),

"update_time"

timestamp(6

),"module_name"

varchar

(255),

"package_name"

varchar

(255),

"method_name"

varchar

(255),

"line_number" int4,

"level"

varchar

(255),

"msg"

varchar

(255),

constraint "module_log_pkey" primary key (

"id"

),

constraint "module_log_unique_pk" unique (

"module_name"))

;comment on column "public"

."module_log"

."module_name" is '模組名稱'

;comment on column "public"

."module_log"

."package_name" is '**包、類名'

;comment on column "public"

."module_log"

."method_name" is '**方法'

;comment on column "public"

."module_log"

."line_number" is '**行號'

;comment on column "public"

."module_log"

."level" is '日誌級別'

;comment on column "public"

."module_log"

."msg" is '日誌資訊'

;

四、寫乙個日誌實現類

五、測試一下有沒有用,寫乙個測試方法

六、結果:日誌已經比較詳細

該日誌類的應用場景為模組級,如果需要擴充套件,則需要再寫其他的實現類

日誌的管理

系統日誌是記錄系統中硬體,軟體和系統問題的資訊,同時還可以監控系統發生的事件,比如可以通過日誌來檢查錯誤發生的原因,或者檢查被攻擊時攻擊者留下的痕跡.系統日誌包括系統日誌,應用程式日誌和安全日誌.在centos6.x之後,系統中用rsyslogd取代了syslogd服務。rsyslogd更加先進,功...

Linux日誌的管理

auth 使用者登陸日誌 authpriv 服務認證日誌 kern 核心日誌 cron 定時任務日誌 lpr 印表機日誌 mail 郵件日誌 news 新聞 user 使用者相關程式日誌 local 1 7 使用者自定義日誌 debug 系統除錯資訊 info 常規資訊 warning 警告資訊 e...

mysql的日誌管理

日誌操作是資料庫維護中最重要的手段之一,日誌檔案會記錄mysql伺服器的各種資訊,所以當mysql伺服器遭到意外損壞時,不僅可以通過日誌檔案來檢視出錯的原因,而且還可以通過日誌檔案進行資料恢復。mysql的日誌檔案分為二進位制日誌,錯誤日誌,通用查詢日誌,慢查詢日誌。除了二進位制檔案外,其他日誌檔案...