基於slf4j的日誌工具類
public class LogUtil {
private static final Logger log = LoggerFactory
.getLogger(LogUtil.class);
private static final int PROCESS_TOTAL_LENGTH = 150;
private static final String PROCESS_FILL_FLAG = "*";
//DEBUG級別:方法執行開始日誌輸出,入參為需要列印的方法入參
public static void getMethodStartLog(Map
if(!log.isInfoEnabled()){
return;
}
String clazz = Thread.currentThread() .getStackTrace()[2].getClassName();
String method = Thread.currentThread() .getStackTrace()[2].getMethodName();
String out = clazz+" "+method+" is starting";
StringBuffer sb = new StringBuffer();
int outLength = out.length();
int start = (PROCESS_TOTAL_LENGTH - outLength)/2;
int end = 0;
if(outLength%2==0){
end = (PROCESS_TOTAL_LENGTH - outLength)/2;
}else{
end = (PROCESS_TOTAL_LENGTH - outLength)/2+1;
}
for(int i=0;i sb.append(PROCESS_FILL_FLAG); } out = sb.toString()+out; sb = new StringBuffer(); for(int i=0;i sb.append(PROCESS_FILL_FLAG); } out = out+sb.toString(); log.debug(out); if(objects !=null){ for (Map.Entry log.debug("inMethod parameter["+m.getKey()+"] is : "); log.debug(m.getValue()+""); } } } //DEBUG級別:方法執行結束日誌輸出,入參為需要列印的方法輸出,process級別的方法 public static void getMethodEndLog(Map if(!log.isInfoEnabled()){ return; } String clazz = Thread.currentThread() .getStackTrace()[2].getClassName(); String method = Thread.currentThread() .getStackTrace()[2].getMethodName(); String out = clazz+" "+method+" is end"; StringBuffer sb = new StringBuffer(); int outLength = out.length(); int start = (PROCESS_TOTAL_LENGTH - outLength)/2; int end = 0; if(outLength%2==0){ end = (PROCESS_TOTAL_LENGTH - outLength)/2; }else{ end = (PROCESS_TOTAL_LENGTH - outLength)/2+1; } for(int i=0;i sb.append(PROCESS_FILL_FLAG); } out = sb.toString()+out; sb = new StringBuffer(); for(int i=0;i sb.append(PROCESS_FILL_FLAG); } out = out+sb.toString(); if(objects !=null){ for (Map.Entry log.debug("inMethod parameter["+m.getKey()+"] is : "); log.debug(m.getValue()+""); } } log.debug(out); } @Deprecated public static void getMethodDebugProcessLog(String msg){ if(!log.isDebugEnabled()){ return; }else{ log.debug(msg); } }
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4830/viewspace-2804278/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SLF4J日誌的使用
- 基於SLF4J MDC機制實現日誌的鏈路追蹤
- 日誌框架SLF4J框架
- 日誌SLF4J解惑
- [awstats]一個基於perl的日誌分析工具
- SLF4J 日誌門面
- 簡單使用SLF4J日誌
- 基於NMAP日誌檔案的暴力破解工具BruteSpray
- Java日誌框架:SLF4J詳解Java框架
- 日誌?聊一聊slf4j吧
- 封裝一個基於NLog+NLog.Mongo的日誌記錄工具類LogUtil封裝Go
- SLF4J記錄日誌&&日誌檔案的滾動策略__SpringBootSpring Boot
- mysqlbinlog工具基於日誌恢復詳細解釋MySql
- Hibernate學習:slf4j日誌框架框架
- 基於 MongoDB 的 python 日誌功能MongoDBPython
- 基於MongoDB的python日誌功能MongoDBPython
- Java中的日誌管理:SLF4J與LogbackJava
- SLF4J日誌記錄常見寫法
- mysql 基於日誌的主從複製MySql
- 日誌-log4j2基於AsyncAppender的非同步日誌列印APP非同步
- postgresql 的三類日誌SQL
- SpringBoot中的slf4j日誌依賴關係Spring Boot
- Java日誌框架:slf4j作用及其實現原理Java框架
- 用slf4j統一管理日誌總結
- 徹底解決SLF4J的日誌衝突的問題
- 基於事件日誌的流程挖掘簡介 - Chaudhuri事件
- [elk]基於elk的業務日誌格式設計
- 基於 kafka 的日誌資料建模測試Kafka
- 日誌-log4j2基於AsyncLogger的非同步日誌列印非同步
- 基於SLF4J的MDC機制和Dubbo的Filter機制,實現分散式系統的日誌全鏈路追蹤Filter分散式
- SpringBoot裡slf4j日誌功能的預設實現Spring Boot
- Log4j2 + SLF4j打造日誌系統
- LNAV:基於 Ncurses 的日誌檔案閱讀器
- 基於go開發日誌處理包Go
- Unity——日誌列印工具Unity
- oracle 日誌收集工具Oracle
- Log 工具列印日誌
- 基於.NetCore3.1系列 —— 日誌記錄之自定義日誌元件NetCore元件