Ghi log

Kiểu dữ liệu và Exceptions trong Java

Jim White

Java Developer

Log là gì

  • Ứng dụng gồm nhiều dòng mã
    • Nhiều luồng điều khiển (if/then/else, for, while, ...)
    • Nhiều lớp và phương thức
    • Lần theo toàn bộ mã rất khó
  • Log là “nhật ký” của ứng dụng
    • Ghi lại đoạn mã đã gọi
    • Ghi lại nơi phát sinh sự cố/vấn đề

Log là nhật ký của ứng dụng - theo dõi các sự kiện, tốt hoặc xấu, xảy ra trong ứng dụng.

Kiểu dữ liệu và Exceptions trong Java

Ghi log

  • Java có sẵn chức năng logging
  • Ta kiểm soát nội dung ghi vào log
    • Tương tự gọi System.out.println() để in ra console
  • Logging dùng để ghi nhận những gì đã xảy ra
    • Gồm mã đã chạy, lỗi gặp phải, và tài nguyên dùng (như cơ sở dữ liệu)
  • Logging giúp theo dõi và hiểu hoạt động ứng dụng để gỡ lỗi
  • Thông điệp log có thể lưu vào file, cơ sở dữ liệu, hoặc hệ thống khác
    • Cho phép xem/so sánh lịch sử log
Kiểu dữ liệu và Exceptions trong Java

Dùng Java logging

  • Import java.util.logging
  • Lấy đối tượng Logger
    • Dùng getLogger(String) để lấy Logger
    • String là tên logger
    • Thường đặt theo tên lớp
import java.util.logging.*;

class HelloWorld {

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

}
1 Xem thêm https://docs.oracle.com/javase/8/docs/api/index.html?java/util/logging/Logger.html để biết các phương thức log khác
Kiểu dữ liệu và Exceptions trong Java

Ghi thông điệp log

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
Kiểu dữ liệu và Exceptions trong Java

Các mức log

Mức Thứ tự
SEVERE quan trọng nhất
WARNING
INFO
CONFIG
FINE
FINER
FINEST ít quan trọng nhất

Các mức log cho biết mức độ quan trọng của mục log

1 Ảnh từ https://unsplash.com/@vendavlog
Kiểu dữ liệu và Exceptions trong Java

Hãy luyện tập!

Kiểu dữ liệu và Exceptions trong Java

Preparing Video For Download...