Log level là gì?
Log level (mức độ log) là các cấp bậc để phân loại và tổ chức các thông điệp log trong ứng dụng. Nó giúp nhà phát triển dễ dàng kiểm tra, phân tích và quản lý dữ liệu log, từ đó xác định vấn đề hoặc theo dõi hoạt động hệ thống. Các log-level thường gặp: DEBUG, INFO, WARN, ERROR, CRITICAL/FATAL.

DEBUG:
Log dùng để debug. Mục đích sử dụng thường là dành cho developer.
Thông thường là đặt log level này trên môi trường LOCAL/DEVELOPING và không cho phép ở PRODUCTION do số lượng dữ liệu log sẽ rất nhiều. Tuy nhiên đôi khi cũng phải cho phép level log này trên PRODUCTION để thực hiện ghi log và phát hiện ra các lỗi chỉ xảy ra trên PRODUCTION (Không phát sinh trên local).

Ví dụ: Hệ thống dữ liệu trên PRODUCTION thường lớn hơn nhiều so với DEVELOPING nên số lượng trường hợp xảy ra khi áp dữ liệu vào phần mềm cũng nhiều hơn. Các test-case có thể chưa bao quát được hết các lỗi –> Việc đặt debug có thể giúp developer/tester có thể giả lập lại được chính xác toàn bộ thao tác, workflow của cụm dữ liệu khi đi vào/đi ra khỏi phần mềm.

INFO:
Log mang tính chất cung cấp thông tin chung về hoạt động bình thường của ứng dụng.
Ví dụ: Hành vi đăng nhâp vào hệ thống bởi tài khoản nào, …

WARN (WARNING):
Log lại các lỗi tiềm ẩn, có thể gây ra lỗi nhưng chưa ảnh hưởng đến trải nghiệm của người dùng.
Ví dụ: Khách hàng cố tình nhấn nhiều lần vào button thanh toán trong khi người dùng không đủ điều kiện để thanh toán, các warning sẽ được log lại khi khách hàng “cố gắng” làm sai với hướng dẫn.

ERROR:
Log lại các event trên hệ thống đã gây ra lỗi tương đối lớn, có thể gây ảnh hưởng đến trải nghiệm của người dùng.

Ví dụ: Khách hàng thanh toán tiền cho dịch vụ A nhưng không thể trừ tiền của khách hàng do hệ thống thanh toán đang quá tải. Mỗi lần xảy ra sự cố này, một thông báo lỗi (log) sẽ được ghi lại với mức độ ERROR vào log files để sau này có thể đối chiếu và phân tích các lỗi do quá tải hệ thống gây ra, từ đó đánh giá ảnh hưởng của sự cố đối với khách hàng và quá trình thanh toán.

FATAL/CRITICAL:
Log chỉ định để ghi các lỗi nghiêm trọng, thậm chí là đã gây ra gián đoạn dịch vụ, treo/crash phần mềm.

Quy tắc sử dụng log level

  1. TRACE và DEBUG:
    • Chỉ dùng trong môi trường phát triển.
    • Không nên bật trong môi trường sản xuất để tránh làm quá tải log.
  2. INFO và WARN:
    • Phù hợp cho môi trường sản xuất để theo dõi hoạt động chung.
  3. ERROR và FATAL:
    • Dùng để phát hiện lỗi và sự cố trong hệ thống.

Tóm lại: Log level phân loại theo từng mục đích sử dụng, tuân theo quy định chung của từng công ty. Việc phân chia log-level sẽ giúp cho việc giám sát/bảo trì phần mềm thuận tiện hơn.

About the Author

Ngọc Tri

View all author's posts

Leave a Comment

Your email address will not be published. Required fields are marked *

Bài viết khác

Gitignore

Trong quá trình phát triển một dự án, hẳn các thành viên của team đã có những lúc đau đầu vì quá trình yêu cầu kéo liên tục xảy ra lỗi vì sự xung đột của các file biên dịch hoặc log… Vậy nên Gitignore được ra đời để giải quyết trường hợp này. Bản chất của […]

GitHub – Nền tảng quản lý mã nguồn và hợp tác phát triển phần mềm

GitHub là một nền tảng lưu trữ mã nguồn dựa trên Git, cho phép các nhà phát triển quản lý dự án, hợp tác phát triển phần mềm và chia sẻ mã nguồn với cộng đồng. GitHub cung cấp giao diện web thân thiện giúp người dùng dễ dàng thao tác với Git mà không […]

Git – Hệ thống quản lý phiên bản phân tán

Git là một hệ thống quản lý phiên bản phân tán, giúp theo dõi sự thay đổi của mã nguồn trong suốt quá trình phát triển phần mềm. Git cho phép nhiều người cùng làm việc trên một dự án mà không lo xung đột mã hoặc mất dữ liệu. Mỗi người làm việc với […]

Agile – Phương pháp phát triển phần mềm linh hoạt

Agile là một phương pháp phát triển phần mềm linh hoạt, tập trung vào việc rút ngắn thời gian phát triển và đưa sản phẩm đến tay khách hàng sớm hơn. Thay vì theo mô hình Waterfall truyền thống, nơi mọi thay đổi của khách hàng có thể đòi hỏi việc làm lại từ đầu, […]

Lỗi bảo mật Zero Day trên .net framework và Office kb4041083

Lỗi này khiến cho hacker có thể sử dụng các file office để chiếm quyền điều khiển máy tính windows

Cập nhật bản vá chống tấn công krack ( key reinstall attack ) trên windows 7,8,10

Phương thức tấn công krack key reinstall attack mới được phát hiện có thể hack toàn bộ mạng wifi toàn cầu. Người dùng có thể bị mất các thông tin quan trọng như tài khoản email, mật khẩu, thông tin ngân hàng, bị chiếm quyền điều khiển và thậm chí bị đánh cặp dữ liệu […]