Nhật ký Java: 5 loại nhật ký bạn cần biết

Ghi nhật ký là một chủ đề quan trọng trong phát triển phần mềm, đặc biệt nếu bạn cần phân tích lỗi và các sự kiện bất ngờ khác trong môi trường sản xuất của bạn. Thực hiện đăng nhập của bạn thường có vẻ dễ dàng. Nhưng như bạn có thể tự trải nghiệm, việc đăng nhập phức tạp hơn nhiều so với vẻ ngoài của nó. Đó là lý do tại sao bạn có thể tìm thấy rất nhiều bài viết về nó ở đây trên blog .



Là một nhà phát triển có kinh nghiệm, bạn nên biết các khung ghi nhật ký khác nhau có sẵn, những cạm bẫy phổ biến và thực tiễn tốt nhất và, tất nhiên, về các loại tệp nhật ký được sử dụng trong các tình huống triển khai chung. Trong bài viết này, tôi sẽ tập trung vào phần cuối cùng. Tôi sẽ cho bạn biết về 4 loại nhật ký khác nhau mà bạn có thể tìm thấy trong hầu hết các môi trường phát triển hoặc sản xuất.

Nhật ký ứng dụng
Hãy bắt đầu với loại nhật ký phổ biến nhất: nhật ký ứng dụng.
Hầu hết các nhà phát triển nghĩ về nhật ký này khi họ nói về việc đăng nhập. Lý do cho điều đó là đơn giản. Ứng dụng của họ tạo ra nhật ký này. Nó chứa tất cả các loại thông báo lỗi, cảnh báo hoặc các sự kiện khác được viết bởi ứng dụng. Các thông báo này có thể cung cấp thông tin logic, mức cao được kết nối với các trường hợp sử dụng cụ thể. Ví dụ điển hình là:
•    Các stacktrace của một ngoại lệ xảy ra trong một trường hợp sử dụng.
•    Thông báo cảnh báo về thời gian phản hồi chậm của hệ thống bên ngoài.
•    Thông tin mà một trường hợp sử dụng đã được kích hoạt hoặc hoàn thành.
Nhật ký ứng dụng có lẽ là loại nhật ký quan trọng nhất được đề cập trong bài viết này vì bạn có toàn quyền kiểm soát nó. Điều đó có nghĩa là bạn có trách nhiệm viết tin nhắn.
Mỗi thông điệp tường trình cần cung cấp thông tin hữu ích giúp bạn hiểu hành vi của ứng dụng của bạn. Nếu bạn muốn tìm hiểu thêm về nhật ký ứng dụng, bạn nên xem bài viết của Eric trong đó anh ấy mô tả một tập hợp thực tiễn tốt nhất để ghi nhật ký ứng dụng .

Nhật ký máy chủ ứng dụng và web
Loại thú vị và quan trọng tiếp theo là nhật ký của máy chủ ứng dụng hoặc web của bạn.
Hầu hết các ứng dụng doanh nghiệp được triển khai đến một máy chủ web, ví dụ, Apache Tomcat hoặc máy chủ ứng dụng, ví dụ: Wildfly hoặc WebSphere Liberty . Các tệp nhật ký của họ cung cấp cho bạn thông tin về các sự cố kỹ thuật và trạng thái hiện tại của máy chủ.
Cấu hình và khả năng của mỗi máy chủ khác nhau và tôi sẽ không giải thích chi tiết về chúng trong bài viết này. Nhưng hãy chắc chắn kiểm tra tài liệu của máy chủ của bạn và cấu hình nó cho phù hợp. Nhận thông tin chính xác từ máy chủ của bạn có thể tạo ra sự khác biệt giữa việc xác định các sự cố tiềm ẩn kịp thời và sự cố ngừng hoạt động của máy chủ.

Nhật ký thu gom rác
Trình thu gom rác cung cấp quản lý bộ nhớ tự động. Nó theo dõi tất cả các đối tượng được khởi tạo trong một JVM và loại bỏ những đối tượng không còn được sử dụng. Đó là một nhiệm vụ rất phức tạp và có một số triển khai thu gom rác khác nhau.
Nói chung, quy trình thu gom rác trong Java rất hiệu quả. Nó hiệu quả đến mức có rất nhiều ứng dụng sử dụng triển khai mặc định với cấu hình tiêu chuẩn của nó. Nhưng nếu ứng dụng của bạn phải xử lý tải cao hoặc sử dụng nhiều cấu trúc đối tượng phức tạp, hiệu suất của ứng dụng của bạn có thể giảm theo thời gian. Điều đó thường xảy ra khi người dọn rác cần dành nhiều thời gian hơn để quản lý bộ nhớ khả dụng. Nhật ký người thu gom rác cung cấp cho bạn thông tin cần thiết để phân tích tất cả các hoạt động của người thu gom rác.
Nhật ký thu gom rác bị vô hiệu hóa theo mặc định. Bạn cần kích hoạt nó với một tập các thuộc tính dòng lệnh.
Sau khi bạn khởi động ứng dụng của mình với các thuộc tính dòng lệnh này, trình thu gom rác của bạn sẽ viết thông tin chi tiết về tất cả các hoạt động. Thật không may, nội dung và định dạng của nhật ký trình thu gom rác được tạo ra phụ thuộc vào nhà cung cấp và phiên bản JVM của bạn và thuật toán thu gom rác.

Nhật ký hệ thống
Tất cả các nhật ký được thảo luận trước đó được viết bởi JVM hoặc bởi một ứng dụng đang chạy trong JVM. Ngoài các nhật ký này, bạn cũng nên làm quen với các nhật ký được viết bởi hệ điều hành của bạn.
Là một nhà phát triển Java, rất có thể bạn sẽ không bao giờ tự viết vào các nhật ký này. Nhưng hệ điều hành của bạn ghi một số sự kiện nhất định vào các bản ghi này. Các ứng dụng khác, là một phần của việc triển khai của bạn, cũng có thể làm điều đó. Vì vậy, nhật ký hệ thống là một nơi tốt để có cái nhìn tổng quan về các sự kiện bên ngoài.
Nếu bạn đang chạy ứng dụng của mình trên Windows, đây là nhật ký sự kiện. Trên Linux, bạn nên biết dịch vụ nhật ký hệ thống và những người kế nhiệm của nó.

Nhật ký wvent Windows
Nhật ký sự kiện của Windows chứa các sự kiện phần cứng và phần mềm quan trọng trong ứng dụng danh mục, bảo mật, thiết lập, hệ thống và các sự kiện được chuyển tiếp.
Đặc biệt là các sự kiện của ứng dụng và danh mục hệ thống có thể hữu ích để hiểu các sự kiện xảy ra bên ngoài ứng dụng của bạn. Danh mục ứng dụng chứa các sự kiện được báo cáo bởi các ứng dụng khác đang chạy trên hệ thống Windows cục bộ của bạn. Các sự kiện liên quan đến phần cứng và trình điều khiển thuộc về loại hệ thống.
Ghi nhật ký hệ thống Linux
Dịch vụ nhật ký hệ thống của Linux và những người kế nhiệm của nó cung cấp một hệ thống ghi nhật ký có cấu hình cao. Nó ghi các thông điệp được kích hoạt bởi các ứng dụng hoặc hệ điều hành vào một tệp hoặc gửi chúng đến một hệ thống từ xa.
Dịch vụ ghi nhật ký được sử dụng và cấu hình của nó phụ thuộc vào bản phân phối Linux của bạn. Vui lòng kiểm tra tài liệu để tìm hiểu thêm về hệ điều hành cụ thể của bạn.

Phần kết luận
Ghi nhật ký là một chủ đề quan trọng với nhiều khía cạnh khác nhau. Trong bài viết này, tôi đã tóm tắt 4 nhật ký quan trọng mà bạn nên biết khi là nhà phát triển Java:
•    Nhật ký ứng dụng là một trong những rõ ràng nhất. Nó được viết bởi ứng dụng của bạn và bạn chịu trách nhiệm về nội dung của nó.
•    Nếu bạn triển khai ứng dụng của mình vào web hoặc máy chủ ứng dụng, bạn cũng cần biết về nhật ký được cung cấp bởi máy chủ đó.
•    Nhật ký thu gom rác có thể cung cấp thông tin quan trọng nếu bạn cần phân tích các vấn đề về hiệu suất.
•    Bạn có thể kiểm tra nhật ký hệ thống để có cái nhìn tổng quan về tất cả các sự kiện bên ngoài có thể đã ảnh hưởng đến ứng dụng của bạn và gây ra sự cố dịch vụ.


 

Share:

ĐỐI TÁC LIÊN KẾT TUYỂN DỤNG NHÂN SỰ CỦA IMIC TECHNOLOGY

IMIC Technology

IMIC Technology tự hào là doanh nghiệp đầu tiên tại Việt Nam triển khai các Chương trình Đào tạo chuyên môn dự án cho Học viên ngành CNTT/CNPM. Cũng là một trong những doanh nghiệp đạt được nhiều giải thưởng lớn trong lĩnh vực này. Góp phần phát triển mạnh ngành CNTT/CNPM tại nước ta hiện nay.