記錄(Logging)

Java 的資料型別與例外狀況

Jim White

Java Developer

什麼是日誌(log)

  • 應用程式由許多程式碼行組成
    • 內含大量控制流程(if/then/else、for 迴圈、while 迴圈等)
    • 也包含許多類別與方法
    • 要逐步追蹤所有程式碼不容易
  • 日誌(log) 就是應用程式的日記本
    • 紀錄哪些程式碼被呼叫
    • 紀錄問題/錯誤發生的位置

日誌就像應用程式的日記——追蹤程式內發生的事件,不論好壞。

Java 的資料型別與例外狀況

記錄(Logging)

  • Java 內建日誌功能
  • 你可以控制要寫進日誌的文字
    • 類似使用 System.out.println() 在主控台留下訊息
  • 日誌用來紀錄發生過的事
    • 包含已執行的程式碼、遇到的問題,以及使用的資源(如資料庫)
  • 日誌協助開發者監看並理解應用程式活動,方便除錯
  • 紀錄的日誌訊息可存入檔案、資料庫或其他系統
    • 便於歷史檢視與比較
Java 的資料型別與例外狀況

使用 Java 日誌功能

  • 匯入 java.util.logging
  • 取得 Logger 物件
    • getLogger(String) 取得 Logger 物件
    • String 指定記錄器名稱
    • 通常使用類別名稱作為記錄器名稱
import java.util.logging.*;

class HelloWorld {

  public static Logger logger =
    Logger.getLogger("HelloWorld");

}
1 See https://docs.oracle.com/javase/8/docs/api/index.html?java/util/logging/Logger.html for additional log methods
Java 的資料型別與例外狀況

撰寫日誌訊息

public static void main (String[] args) {
  logger.log(Level.INFO,
             "This is informational");
  logger.log(Level.SEVERE,
             "This is a critical message");
}
Nov 26, 2024 12:59:29 PM HelloWorld main
INFO: This is informational
Nov 26, 2024 12:59:29 PM HelloWorld main
SEVERE: This is a critical message
Java 的資料型別與例外狀況

日誌等級

等級 順序
SEVERE 最高重要性
WARNING
INFO
CONFIG
FINE
FINER
FINEST 最低重要性

日誌等級表示紀錄的重要性

1 Image courtesy https://unsplash.com/@vendavlog
Java 的資料型別與例外狀況

一起來練習吧!

Java 的資料型別與例外狀況

Preparing Video For Download...