# 90: Verbose Logging sẽ làm gián đoạn giấc ngủ của bạn

Khi tôi gặp một hệ thống đã được phát triển hay sản xuất trong một khoảng thời gian, dấu hiệu đầu tiên của sự cố luôn là một bản log rối rắm. Bạn hiểu ý tôi mà. Khi nhấp vào một liên kết trên một trang web sẽ dẫn đến một loạt các thông báo trong log hệ thống cung cấp. Quá nhiều logging sẽ trở nên vô ích như không có.

Nếu hệ thống của bạn giống như của tôi, khi công việc của bạn hoàn thành thì công việc của người khác mới bắt đầu. Sau khi hệ thống được phát triển; nếu bạn may mắn, nó sẽ sống một cuộc sống lâu dài và thịnh vượng để phục vụ khách hàng. Làm thế nào để bạn biết liệu có sự cố nào xảy ra trong quá trình hệ thống được sản xuất, và bạn sẽ đối phó với nó như thế nào?

Có thể ai đó sẽ phụ trách giám sát hệ thống cho bạn, hoặc bạn có thể tự giám sát lấy. Dù bằng cách nào, log sẽ là một phần của việc giám sát. Nếu có chuyện gì xảy ra và bạn phải thức dậy để đối phó với nó, tốt hơn hết nên có một lý do hợp lý. Nếu hệ thống của tôi sắp chết, tôi muốn biết. Nhưng nếu đó chỉ là một tiếng nấc, tôi thà tận hưởng giấc ngủ 😴 của mình còn hơn.

Đối với nhiều hệ thống, dấu hiệu đầu tiên cho thấy có gì đó không đúng là một bản tường trình được ghi vào log. Thông thường, đây sẽ là error log. Vì vậy, hãy tự giúp mình: Hãy chắc chắn ngay từ đầu rằng nếu có gì được ghi vào error log, bạn sẽ sẵn sàng bị đánh thức giữa đêm vì nó. Nếu bạn có thể mô phỏng load trên hệ thống trong quá trình kiểm tra, xem xét error log không- tiếng- ồn cũng là một dấu hiệu tốt cho thấy hệ thống của bạn đang hoạt động khá trơn tru. Hoặc được cảnh báo sớm nếu hệ thống có vấn đề.

Distributed system gia tăng độ phức tạp. Bạn phải quyết định làm thế nào để đối phó với một sự phụ thuộc thất bại từ bên ngoài. Nếu hệ thống của bạn phân tán, đây có thể là một sự cố phổ biến. Hãy chắc chắn đã tính đến điều này trong chính sách logging của bạn.

Nói chung, dấu hiệu tốt nhất cho thấy mọi thứ đều ổn là những tin nhắn ở mức ưu tiên thấp hơn đang tiến triển tốt. Tôi muốn có một thông điệp log cấp INFO cho mỗi sự kiện quan trọng.

Bản log lộn xộn là dấu hiệu cho thấy hệ thống sẽ trở nên khó kiểm soát khi đi vào sản xuất. Nếu bạn không mong đợi bất cứ điều gì xuất hiện trong error log, sẽ dễ dàng hơn nếu biết phải làm gì khi có gì đó thực sự xuất hiện.