Logging and Log Management
Logging and Log Management
Log Data
Dữ liệu nhật ký là ý nghĩa nội tại của một thông báo nhật ký. Nói cách khác, dữ liệu nhật ký là thông tin được trích xuất từ một thông báo nhật ký cho bạn biết lý do tại sao thông báo nhật ký đó được tạo ra. Ví dụ, một máy chủ web thường ghi nhật ký mỗi khi ai đó truy cập vào một tài nguyên (hình ảnh, tệp, v.v.) trên một trang web. Nếu người dùng truy cập vào một trang được xác thực, thông báo nhật ký có thể bao gồm tên người dùng. Đây là một ví dụ về dữ liệu nhật ký: bạn có thể sử dụng tên người dùng để xác định ai đã truy cập vào một tài nguyên cụ thể.
Thông báo nhật ký nói chung có thể được phân loại thành các loại phổ biến sau:
Debug
Thông báo gỡ lỗi thường được các hệ thống phần mềm tạo ra để hỗ trợ các nhà phát triển khắc phục sự cố và xác định vấn đề trong khi mã ứng dụng đang chạy. Ở cấp độ nhật ký này, thông tin được in ra chi tiết hơn và thường liên quan đến các biến và địa chỉ hệ thống. Ví dụ bao gồm giá trị biến được sử dụng trong quá trình thực thi, địa chỉ con trỏ và thông tin liên quan đến luồng xử lý logic trong mã nguồn.
Information
Các thông báo ở cấp độ thông tin nhằm mục đích thông báo cho người dùng và quản trị viên rằng một sự kiện vô hại đã xảy ra. Ở cấp độ này, thông tin được ghi lại thường liên quan đến cấu hình hệ thống hoặc tương tác giữa hệ thống Wi-Fi Mesh và các thành phần mạng khác. Ví dụ, khi một STA kết nối với hệ thống, cấp độ nhật ký này có thể được sử dụng để in thông tin như địa chỉ MAC, loại kết nối và các tiêu chuẩn kết nối được STA đó hỗ trợ.
Warning
Các thông báo cảnh báo liên quan đến các tình huống mà hệ thống có thể thiếu hoặc yêu cầu một số thứ, nhưng sự thiếu sót đó không ảnh hưởng đến hoạt động của hệ thống. Ở cấp độ này, cảnh báo thường ghi lại các sự kiện xảy ra trong quá trình hoạt động của hệ thống, chẳng hạn như ngắt/kết nối lại cổng vật lý, mất gói và truyền lại, hoặc, trong hệ thống Wi-Fi Mesh, các thiết bị 1905 rời khỏi hoặc tham gia lại mạng.
Việc đánh giá khi nào nên sử dụng cấp độ ghi nhật ký này đòi hỏi các nhà phát triển phải hiểu toàn bộ luồng hoạt động của hệ thống. Mặc dù cảnh báo không ngay lập tức gây ra lỗi hệ thống, nhưng chúng thường chỉ ra các dấu hiệu sớm của các vấn đề lớn hơn có thể phát sinh. Ví dụ, một chương trình thiếu một số đối số dòng lệnh tùy chọn nhưng vẫn chạy bình thường có thể ghi lại sự cố đó dưới dạng cảnh báo cho người dùng hoặc người vận hành.
Việc đánh giá khi nào nên sử dụng cấp độ ghi nhật ký này đòi hỏi các nhà phát triển phải hiểu toàn bộ luồng hoạt động của hệ thống. Mặc dù cảnh báo không ngay lập tức gây ra lỗi hệ thống, nhưng chúng thường chỉ ra các dấu hiệu sớm của các vấn đề lớn hơn có thể phát sinh. Ví dụ, một chương trình thiếu một số đối số dòng lệnh tùy chọn nhưng vẫn chạy bình thường có thể ghi lại sự cố đó dưới dạng cảnh báo cho người dùng hoặc người vận hành.
Error
Nhật ký lỗi được sử dụng để báo cáo các lỗi xảy ra ở nhiều lớp khác nhau trong hệ thống máy tính. Ví dụ, hệ điều hành có thể tạo nhật ký lỗi nếu nó không thể đồng bộ hóa bộ đệm với đĩa. Thật không may, nhiều thông báo lỗi chỉ cung cấp điểm khởi đầu về lý do tại sao sự cố xảy ra. Thông thường cần phải điều tra thêm để tìm ra nguyên nhân gốc rễ.
Các ví dụ khác bao gồm con trỏ null, giá trị biến nằm ngoài phạm vi, dữ liệu bị hỏng hoặc các hành vi sai lệch so với thiết kế hệ thống. Tất cả các sự kiện như vậy nên được ghi lại ở cấp độ lỗi.
Các ví dụ khác bao gồm con trỏ null, giá trị biến nằm ngoài phạm vi, dữ liệu bị hỏng hoặc các hành vi sai lệch so với thiết kế hệ thống. Tất cả các sự kiện như vậy nên được ghi lại ở cấp độ lỗi.
Alert
Các thông báo cảnh báo cho biết điều gì đó nghiêm trọng đã xảy ra. Nói chung, chúng liên quan đến sự tồn tại hoặc tính liên tục hoạt động của hệ thống. Ví dụ, nếu không thể truy xuất dữ liệu cấu hình ban đầu cho các tiến trình nền quan trọng, hệ thống sẽ không hoạt động chính xác và phải ghi lại cảnh báo ngay lập tức. Các nhà phát triển thường không mong đợi nhiều thông báo ở cấp độ này.
How Log Data Is Transmitted and Collected
Về mặt khái niệm, việc truyền và thu thập dữ liệu nhật ký khá đơn giản. Một máy tính hoặc thiết bị sẽ triển khai một hệ thống con ghi nhật ký có thể tạo ra các thông báo nhật ký bất cứ khi nào cần thiết. Các điều kiện chính xác để tạo nhật ký phụ thuộc vào thiết bị—một số cho phép cấu hình, trong khi những thiết bị khác có các quy tắc ghi nhật ký được xác định trước. Ngoài ra, cần phải có một nơi tập trung để gửi và thu thập nhật ký, thường được gọi là loghost. Loghost là một hệ thống Unix hoặc Windows nơi các thông báo nhật ký từ nhiều thiết bị được thu thập tập trung.
</div>
Lợi ích của việc sử dụng hệ thống ghi nhật ký tập trung bao gồm:
</div>
- Một vị trí tập trung để lưu trữ các thông báo nhật ký từ nhiều nguồn
Một vị trí để lưu trữ các bản sao lưu nhật ký
- Một nơi để phân tích dữ liệu nhật ký
What Is a Log Message?
Một thông báo nhật ký được tạo ra bởi thiết bị hoặc hệ thống để cho biết rằng một điều gì đó đã xảy ra.
Cấu trúc điển hình của một thông báo nhật ký bao gồm:
- Dấu thời gian
- Nguồn
- Dữ liệu
Dấu thời gian
Đây là thông tin đầu tiên được in ra khi một thông báo nhật ký được tạo. Nó thể hiện chính xác thời điểm hệ thống phát hiện sự kiện. Nó thường bao gồm năm, tháng, ngày và giờ. Một số sự cố có thể phát sinh nếu đồng hồ hệ thống chưa được đồng bộ hóa—ví dụ, khi thiết bị khởi động mà không có truy cập Internet—có thể dẫn đến việc hiểu sai thời điểm xảy ra sự cố.
Nguồn
Nguồn thường bao gồm tên của tiến trình đang chạy đã in ra thông báo, cùng với cấp độ nhật ký. Một số hệ thống cũng bao gồm tên hàm và số dòng nơi nhật ký được tạo ra. Những chi tiết này thường hữu ích trong quá trình phát triển nhưng thường được loại bỏ trong quá trình triển khai sản phẩm để giảm dung lượng nhật ký và ngăn chặn rò rỉ thông tin mã nguồn nội bộ.
Dữ liệu
Thông tin nào cần được in ra là vô cùng quan trọng—bạn không thể in những thông báo quá ngắn hoặc quá dài dòng. Các nhà phát triển nên loại bỏ các nhật ký vô ích và đảm bảo nội dung có ý nghĩa được ghi lại. Mỗi cấp độ nhật ký yêu cầu các loại thông tin khác nhau tùy thuộc vào mục đích của nó. Ví dụ, việc ghi nhật ký mọi thứ ở cấp độ lỗi là phản tác dụng nếu bạn muốn phát hiện các lỗi hệ thống thực sự. Các nguyên tắc ghi nhật ký đúng cách—sẽ được thảo luận sau—phải được tuân thủ để cải thiện chất lượng nhật ký.
Chính sách lưu giữ nhật ký
Chính sách lưu giữ nhật ký thiết lập nền tảng để xác định các yêu cầu lưu trữ. Chính sách mà tổ chức của bạn áp dụng sẽ hướng dẫn các quyết định liên quan đến loại lưu trữ, kích thước, chi phí, tốc độ truy cập và yêu cầu xóa.
Các khía cạnh sau đây cần được xem xét khi tạo chính sách lưu giữ nhật ký:
Xem xét các yêu cầu tuân thủ hiện hành
Nhiều ngành công nghiệp hiện nay thực thi các yêu cầu tuân thủ nghiêm ngặt. Ví dụ, Tiêu chuẩn bảo mật dữ liệu ngành thẻ thanh toán (PCI DSS) yêu cầu lưu giữ nhật ký trong một năm (mục 10.7 của PCI DSS), trong khi các quy định của Tập đoàn độ tin cậy điện Bắc Mỹ (NERC) quy định thời gian lưu giữ khác nhau cho các loại nhật ký khác nhau. Một số quy định yêu cầu giữ lại các nhật ký cụ thể mà không chỉ định thời gian lưu giữ. Những hướng dẫn này giúp thiết lập các yêu cầu chính sách tối thiểu.
Đánh giá rủi ro tổ chức
Rủi ro nội bộ và bên ngoài quyết định thời gian lưu giữ nhật ký ở các phần khác nhau của mạng. Nếu nhật ký được sử dụng để điều tra các mối đe dọa nội bộ, thời gian lưu giữ phải dài hơn vì những vấn đề như vậy thường không được phát hiện trong nhiều năm. Khi cuối cùng được phát hiện, việc điều tra chúng có thể yêu cầu dữ liệu lịch sử rộng lớn.
Xem xét các nguồn nhật ký khác nhau và khối lượng của chúng
Tường lửa, máy chủ, cơ sở dữ liệu, máy chủ proxy web—mỗi loại tạo ra các loại nhật ký, kích thước và khối lượng khác nhau. Ví dụ, nhật ký từ tường lửa lõi có thể rất lớn và do đó chỉ được lưu trữ trong 30 ngày trừ khi các yêu cầu tuân thủ quy định thời gian dài hơn. Bạn cũng có thể nhận được nhật ký từ các ứng dụng tùy chỉnh hoặc hệ điều hành không được hỗ trợ mà các công cụ phân tích có thể bị hạn chế.
Xem xét các tùy chọn lưu trữ khả dụng
Các tùy chọn lưu trữ nhật ký bao gồm đĩa cứng, DVD, WORM, băng từ, RDBMS, kho lưu trữ nhật ký chuyên dụng và lưu trữ đám mây. Quyết định phụ thuộc vào chi phí, dung lượng và tốc độ truy cập. Điều quan trọng là nhật ký đã lưu trữ phải vẫn có thể truy cập được trong một khoảng thời gian hợp lý. Băng từ rẻ nhưng nổi tiếng là chậm khi tìm kiếm và có thể yêu cầu thao tác thủ công. Tuổi thọ của phương tiện cũng phải được xem xét — ví dụ, bảy năm có thể là quá dài đối với đĩa CD hoặc DVD ghi được giá rẻ. Các định dạng lưu trữ cũ hơn cũng có thể trở nên lỗi thời.
Nguyên tắc quản lý nhật ký
Quy tắc thu thập
Không thu thập dữ liệu nhật ký mà bạn không có ý định sử dụng. Chỉ thu thập nhật ký cho các mục đích được xác định rõ ràng (khắc phục sự cố, phân tích bảo mật, v.v.). Tránh tư duy “thu thập phòng trường hợp”. Điều tương tự cũng áp dụng cho việc tạo nhật ký: không tạo nhật ký không có ích lợi gì.
- Chỉ thu thập nhật ký vì những lý do rõ ràng
- Tránh ghi nhật ký “phòng trường hợp”
- Không tạo nhật ký mà bạn sẽ không bao giờ sử dụng
Quy tắc lưu giữ
Chỉ giữ nhật ký chừng nào chúng còn hữu ích hoặc lâu hơn nếu luật pháp yêu cầu.
Khả năng hữu ích trong tương lai
- Yêu cầu pháp lý hoặc quy định
- Không lưu trữ mọi nhật ký trong nhiều năm nếu không cần thiết
Quy tắc giám sát
Ghi nhật ký nhiều khi cần thiết, nhưng chỉ cảnh báo khi cần hành động. Khối lượng nhật ký có thể rất lớn (petabyte), nhưng khả năng phản ứng của con người là có hạn (có lẽ 12 cảnh báo/ngày?). Tránh làm quá tải các nhóm giám sát với các cảnh báo không cần thiết.
Triết lý: **ghi nhật ký mọi thứ, lưu trữ nhật ký lỗi quan trọng và theo dõi các vấn đề cần xử lý.**
Triết lý: **ghi nhật ký mọi thứ, lưu trữ nhật ký lỗi quan trọng và theo dõi các vấn đề cần xử lý.**
Quy tắc bảo mật
Không nên đầu tư nhiều hơn vào việc bảo vệ dữ liệu nhật ký so với việc bảo vệ dữ liệu kinh doanh quan trọng. Nhật ký rất có giá trị, nhưng chúng không nên được bảo vệ nhiều hơn bí mật thương mại hoặc thông tin kinh doanh nhạy cảm.
- Mã hóa nhật ký để ngăn chặn việc giả mạo
- Áp dụng kiểm soát truy cập hợp lý
- Tránh mã hóa nhật ký trừ khi thực sự cần thiết
Quy tắc thay đổi liên tục
Các nguồn nhật ký, loại nhật ký và nội dung nhật ký liên tục phát triển do những thay đổi trong môi trường phát triển và triển khai.
- Định kỳ xem xét các chính sách và quy trình ghi nhật ký
- Cập nhật hệ thống thu thập và đọc nhật ký
- Tài liệu hóa các quy trình tạo nhật ký và duy trì chúng
This post is licensed under CC BY 4.0 by the author.