Khi tôi đi audit và phát hiện hệ thống… không có log

Log đâu?

– Dạ, em chỉ console.log thôi ạ.

Lần đầu tiên tôi audit một hệ thống startup giai đoạn pre-seed. Nhìn sơ code backend thì cũng gọn, có CI/CD, nhìn tưởng ổn. Nhưng khi hỏi: “Giả sử production crash, em tra log ở đâu?” — thì cả team nhìn nhau như thể tôi hỏi… mật khẩu Wi-Fi.

Không có centralized logging, không có log rotation, không trace ID, không phân cấp severity — tóm lại là hệ thống log “tự nhiên như hơi thở”, nhưng không ai biết thở ra chỗ nào.

Từ đó tôi rút ra vài bài học:

  • Đừng để logging trở thành suy nghĩ sau cùng
  • Không có log = không debug = không bảo trì = sự nghiệp DevOps chóng tàn
  • Dù làm microservice hay monolith, hãy tối thiểu dùng:
    • Grafana + Loki hoặc CloudWatch Logs nếu AWS
    • Gắn trace ID cho mọi request
    • Chia log theo severity: info, warning, error, fatal
    • Log có cấu trúc, chứ đừng chỉ print_r($data)

Log không phải là thứ để đọc, mà là thứ để sống sót. Production không cảnh báo trước. Stack trace là món quà muộn màng.

Post a Comment

Mới hơn Cũ hơn