日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java日志——基本日志+高级日志

發布時間:2023/12/3 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java日志——基本日志+高级日志 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【0】README

0.1) 本文描述+源代碼均 轉自 core java volume 1, 旨在理解 java日志——基本日志+高級日志 的相關知識;


【1】記錄日志

1.1)出現的問題和解決方法:

  • 1.1.1)出現的問題:在我們調試的時候, 通過喜歡 插入 System.out.println 語句來輔助我們調試, 當出現新的問題,又要插入 該語句進行調試。
  • 1.1.2)解決方法:記錄日志API 就是為了解決這個問題而設計的。

1.2)下面是記錄日志 API的優點(Priority):

  • P1)可以很容易地取消全部日志記錄, 或者僅僅取消某個級別的日志, 而且打開和關閉這個操作也很容易;
  • P2)可以很簡單地禁止日志記錄的輸出, 因此,將這些日志代碼留在程序中的開銷很小;
  • P3)日志記錄可以被定向到不同的處理器, 用于在控制臺中顯示, 用于存儲在文件中等;
  • P4)日志記錄器和處理器都可以對記錄進行過濾。 過濾器可以根據過濾實現器制定的標準丟棄那些無用的記錄項;
  • P5)日志記錄可以采用不同的方式格式化,例如, 純文本或 xml;
  • P6)應用程序可以使用 多個 日志記錄器, 他們使用類似包名的這種具有層次結構的名字, 如, com.a.b.c;
  • P7)在默認情況下, 日志系統的配置由配置文件控制。 如果需要的話, 應用程序可以替換這個配置;

【2】基本日志

2.1)看個荔枝:日志系統管理者一個名為 Logger.global 的默認日志記錄器, 可以用System.out 替換他, 并通過調用 info 方法記錄日志信息:

Logger.getGlobal().info("File->Open menu item seleted");

2.1.1)在默認情況下,這條記錄將會顯示如下內容:

May 10, 2013 10:12:25 PM LoggingImageView fileOpen INFO: FIle->Open menu item selected


Attention)

  • A1)自動包含了 時間、調用的類名和方法名;
  • A2) 如果在相應的地方調用 Logger.getGlobal().setLevel(Level.OFF);將會取消所有日志;

Warning)在修改bug 7184195 前,還需要調用 Logger.getGlobal().setLevel(Level.INFO)來激活全局日志記錄器;


【3】高級日志

3.1)在一個專業的應用程序中, 不要將所有的日志都記錄到 一個全局日志記錄器中, 而是可以自定義日志記錄器;
* 3.1.1)調用 getLogger方法可以創建或 檢索記錄器

private static final Logger myLogger = Logger.getLogger("com.mycompany.myapp");

3.2)與包名類似, 日志記錄器名也具有層次結構,且層次性更強

  • 3.2.1)對于包來說, 一個包的名字與其父包的名字間沒有語義關系, 但是日志記錄器的父與子間將共享某些屬性;
  • 3.2.2)看個荔枝: 如果對 com.mycompany 日志記錄器設置了 日志級別, 它的子記錄器也會繼承這個級別, 通常有7個日志記錄器級別(Level):

    • L1) SEVERE
    • L2) WARNING
    • L3) INFO
    • L4) CONFIG
    • L5) FINE
    • L6) FINER
    • L7) FINEST
  • 3.2.3)默認情況下, 只記錄前3個級別, 也可以設置其他級別;

logger.setLevel(Level.FINE);
  • 3.2.4)使用 Level.ALL 開啟所有級別的記錄, 使用 Level.OFF 關閉所有級別的記錄;

3.3)對于所有的基本有下面幾種記錄方法(Methods):

  • M1) logger.warning(msg);
  • M2) logger.fine(msg);
  • M3)使用log 方法指定級別: logger.log(Lebel.FINE, msg);

Hint)默認的日志配置記錄了 INFO 或更高級別的所有記錄, 因此,應該使用 CONFIG、FINE, FINER, FINEST 級別來記錄那些有助于診斷, 但對于程序員有沒有太大意義的調試信息;
Warning)如果將記錄設計為INFO 或更低, 則需要修改日志處理器的配置, 默認的日志處理器不會處理低于 INFO 級別的信息;
3.4)默認的日志記錄將顯示包含日志調用的類名和方法名, 如同堆棧所顯示的那樣。 但是, 如果虛擬機對執行過程進行了優化, 就得不到準確的調用信息。 此時, 可以調用 logp 方法獲得調用類和方法的確切位置, 這個方法的簽名為:

void logp(level l , String className, String methodName, String msg)
  • 3.4.1)下面有一些跟蹤執行流的方法:
void entering(String className, String methodName) void entering(String className, String methodName, Object param) void entering(String className, String methodName, Object[] params) void entering(String className, String methodName) void entering(String className, String methodName, Object result)
  • 3.4.2)看個荔枝:
int read(Strinf file, String pattern) {logger.entering("com.mycompany.mylib.Reader", "read", new Object[] {file, pattern});......logger.exiting("com.mycompany.mylib.Reader", "read", count);return count; }
  • 這些調用將生成FINER 級別和以 字符串“ENTRY” 和 “RETURN”開始的日志記錄;

3.5)記錄日志的常見用途是記錄那些不可預料的異常。 可以使用下面兩個方法提供日志記錄中包含的異常描述內容(Methods):

  • 日志記錄 API 如下:
void throwing(String className, String methodName, Throwable t) void log(Level l , String msg, Throwable t)
  • M1)典型用法是:
if(...) {IOException exception = new IOException("");logger.throwing("com.mycompany.mylib.Reader", "read", exception);throw exception; }
  • M2)還有一種:
try {... } catch(Exception e) {Logger.getLogger("com.mycompany.myapp").log(Level.WARNING, "Reading image", e); }
  • 調用throwing 可以記錄一條 FINER 級別的記錄和一條以 THROW 開始的信息;

總結

以上是生活随笔為你收集整理的java日志——基本日志+高级日志的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲成年人影院 | 精品国产乱码久久久久久蜜臀网站 | 久久久久久中文 | 久草国产视频 | 深夜精品 | 四虎精品欧美一区二区免费 | 99青青草 | 日韩精品视频在线 | 丝袜脚交免费网站xx | 91成人久久| 7x7x7x人成影视 | 色综合综合色 | 性喷潮久久久久久久久 | 日韩免费影院 | 99无码熟妇丰满人妻啪啪 | 一个色在线视频 | 国产成人+综合亚洲+天堂 | 99在线观看免费 | 毛片网络 | 欧美大片在线看免费观看 | 中国女人一级一次看片 | 日韩av成人在线观看 | 欧美精品在线免费观看 | 日韩欧美精品中文字幕 | 欧美a一级片 | 99热.com | аⅴ资源天堂资源库在线 | 99久久久国产 | 亚洲精品在线免费播放 | av涩涩| 成人在线免费高清视频 | 亚洲精品一区二区潘金莲 | 欧美天堂 | 72种无遮挡啪啪的姿势 | 精品中文字幕一区二区 | 国产精品永久久久久久久久久 | 亚洲男人的天堂网站 | 美女黄色一级片 | 亚洲国产影视 | 色综合久久网 | 97国产免费| 国产无遮挡免费视频 | 久久精品一日日躁夜夜躁 | 影音先锋三级 | 中国挤奶哺乳午夜片 | 欧美性极品| 男人的天堂av网站 | 国产自产在线 | 成人在线国产精品 | 国产精品自在线 | 第五色婷婷 | 国产经典一区二区三区 | 123毛片| 欧美黄色免费大片 | 麻豆成人精品国产免费 | 天天宗合网 | 国产一级色 | 久久77| 国产男女激情 | 亚洲春色另类 | 亚洲123区| 亚欧在线免费观看 | 日本少妇高潮喷水xxxxxxx | 成人av网址在线观看 | 日本黄色a视频 | 视频久久 | 精久久久久 | 91精品在线视频观看 | 不卡一区在线观看 | 国模无码视频一区 | 国产91丝袜在线播放九色 | 黑人糟蹋人妻hd中文字幕 | 日韩国产精品一区二区 | 91黄色免费网站 | a√天堂网| 国产精品第13页 | 日韩精品中文字幕在线播放 | 国产色爽 | 狠狠爱五月婷婷 | 天天操夜夜撸 | 伊人小视频 | 无码一区二区波多野结衣播放搜索 | 神马午夜av| 免费成人蒂法网站 | 国产三级全黄 | 久久婷婷网站 | 99视频网址 | 四虎视频 | 亚洲综合久久婷婷 | 奇米狠狠 | 中文字幕在线观看国产 | 国产在线播放网站 | 日韩精品高清在线 | 国产精品国产精品国产专区不卡 | 黄瓜视频在线免费观看 | chinese麻豆新拍video | 国产精品99久久久久久宅男 | 黄色小说在线免费观看 | 欧美精品亚洲精品日韩精品 |