Cách triển khai ghi nhật ký trong Node.js

Cach Trien Khai Ghi Nhat Ky Trong Node Js



Ghi nhật ký ” trong node.js đóng một vai trò quan trọng trong việc duy trì toàn bộ vòng đời của quy trình phát triển trang web. Do đó, ghi nhật ký là chức năng phổ biến nhất được các nhà phát triển thực hiện để phân tích các chức năng mã theo thời gian nhằm phân tích dữ liệu cũng như mã hóa và giải quyết các lỗi dựa trên phân tích mã.

Bài viết này giải thích các nội dung được liệt kê dưới đây:

Khi nào cần đăng nhập node.js?

Sau đây là các mức ghi nhật ký phổ biến trong node.js:







  • Thông tin: Các nhiệm vụ hoặc kết quả đầu ra xác nhận việc thực thi mã được sắp xếp hợp lý.
  • Cảnh báo: Những sự việc cần lưu ý để tránh thất bại.
  • Lỗi: Các sự kiện dẫn đến việc thực thi mã không thành công.
  • Gỡ lỗi: Cấp độ này chủ yếu được sử dụng bởi các nhà phát triển.

Việc ghi nhật ký được thực hiện ở đâu?

Các sự kiện nhật ký có thể được xếp hàng đợi và nhiều người nghe có thể nghe hàng đợi và ghi vào bất kỳ nhật ký nào được yêu cầu. Trước khi quyết định nơi ghi nhật ký, cần biết rằng phương pháp đích có thể xử lý nhiều thông điệp tường trình. Sau đây là một số vị trí nhật ký phổ biến:



  • thiết bị xuất chuẩn
  • lỗi chuẩn
  • bảng điều khiển

Đó là điều cơ bản “ console.log() ' Và ' console.info() ” phương thức đăng nhập vào “ thiết bị xuất chuẩn ”. Tuy nhiên, “ console.warn() ' Và ' console.error() ” phương thức đăng nhập vào “ lỗi chuẩn ”. Các phương thức này hiển thị đầu ra trên bàn điều khiển. Ở mặt trước, đây sẽ là bảng điều khiển công cụ của lập trình viên.



Làm cách nào để triển khai tính năng ghi nhật ký trong Node.js?

Phân tích nhu cầu ghi nhật ký trong các tình huống khác nhau là rất quan trọng để triển khai phương pháp ghi nhật ký tương ứng. Việc đăng nhập node.js có thể được thực hiện thông qua các phương pháp được nêu dưới đây:





  • console.log() ' Phương pháp.
  • console.warn() ' Phương pháp.
  • console.error() ' Phương pháp.
  • console.table() ' Phương pháp.
  • Mô-đun gỡ lỗi.
  • Gói Winston.

Cách tiếp cận 1: Triển khai đăng nhập vào node.js bằng phương thức “console.log()”

Các ' console.log() ” hiển thị đầu ra trên bảng điều khiển và đôi khi hữu ích để kiểm tra các chức năng của mã.

Cú pháp



bảng điều khiển. nhật ký ( sự lộn xộn )

Trong cú pháp này, “ sự lộn xộn ” đề cập đến thông báo được ghi vào bảng điều khiển.

Bây giờ, hãy chuyển sang khối mã bên dưới để ghi lại các thông báo được cung cấp trên bảng điều khiển:

bảng điều khiển. nhật ký ( 'Đây là Linuxhint!' ) ;

bảng điều khiển. nhật ký ( 'Đây là Node js!' ) ;

đầu ra

Từ kết quả này, có thể ngụ ý rằng các thông báo đã nêu được hiển thị trên bảng điều khiển một cách thích hợp.

Cách tiếp cận 2: Triển khai đăng nhập vào node.js bằng phương thức “console.warn()”

Các ' console.warn() ” hiển thị thông báo cảnh báo tới bảng điều khiển.

Cú pháp

bảng điều khiển. cảnh báo ( sự lộn xộn )

Theo cú pháp đã cho, “ sự lộn xộn ” cho biết thông báo (cũng có thể tùy chỉnh) sẽ được hiển thị trên bảng điều khiển.

Bây giờ, hãy đi tới dòng mã sau hiển thị thông báo cảnh báo tùy chỉnh với sự trợ giúp của “ console.warn() ' phương pháp:

bảng điều khiển. cảnh báo ( 'Đây là một cảnh cáo!' ) ;

đầu ra

Như đã thấy, cảnh báo tùy chỉnh được chỉ định sẽ được hiển thị phù hợp.

Cách tiếp cận 3: Triển khai đăng nhập vào node.js bằng phương thức “console.error()”

Phương pháp này viết một thông báo lỗi vào bàn điều khiển.

Cú pháp

bảng điều khiển. lỗi ( [ dữ liệu ] [ , ... tranh luận ] )

Trong cú pháp này:

  • dữ liệu ” đề cập đến tin nhắn chính.
  • tranh luận ” đại diện cho các giá trị.

Giá trị trả về

Phương pháp này lấy một thông báo lỗi.

Tổng quan về đoạn mã sau ghi thông báo lỗi về điều kiện không thỏa mãn:

x = 150 ;
nếu như ( x < 100 ) {
bảng điều khiển. nhật ký ( 'Tốt để đi' ) ;
}
khác {
bảng điều khiển. lỗi ( 'Số không phù hợp' ) ;
}

Theo mã này:

  • Khởi tạo một số nguyên để phân tích các điều kiện.
  • Sau đó, áp dụng “ nếu như ” sao cho nếu số nguyên khởi tạo nhỏ hơn “100”, thông báo đã chỉ định sẽ được hiển thị.
  • Nếu không ' khác Câu lệnh ” thực thi thông báo lỗi trong phần “ console.error() ' phương pháp.

đầu ra

Đầu ra này xác nhận rằng theo điều kiện không thỏa mãn, thông báo lỗi tùy chỉnh sẽ được hiển thị trên bảng điều khiển tương ứng.

Cách tiếp cận 4: Triển khai đăng nhập vào node.js bằng phương thức “console.table()”

Phương pháp này tạo và hiển thị một bảng trên bàn điều khiển.

Cú pháp

bảng điều khiển. bàn ( td, tc )

Đây, ' td ” đại diện cho dữ liệu bảng và “ tc ” đề cập đến mảng các cột trong bảng.

Bây giờ, hãy xem câu lệnh mã bên dưới để tạo bảng bằng cách gán một chỉ mục riêng cho các giá trị được gán của loại dữ liệu video hai lần:

bảng điều khiển. bàn ( [ { x : 10 , Một : 'Harry' } , { x : mười lăm , Một : 'Với' } ] ) ;

đầu ra

Cách tiếp cận 5: Triển khai đăng nhập vào node.js bằng cách sử dụng “Mô-đun gỡ lỗi”

Mô-đun này có thể được sử dụng để ghi nhật ký thông tin bổ sung về trạng thái của phần mềm trung gian web, ví dụ: Express, Koa, v.v. khi back-end nhận được yêu cầu internet. Middleware được đưa vào đường dẫn yêu cầu.

Sau đây là các cách tiếp cận để thiết lập phần mềm trung gian ghi nhật ký:

Ví dụ 1: Thiết lập Middleware ghi nhật ký từ ứng dụng

Các ' ứng dụng.use() ” gắn kết chức năng phần mềm trung gian đích tại đường dẫn đã chỉ định.

Cú pháp

ứng dụng. sử dụng ( pt, cb )

Trong cú pháp nêu trên:

  • điểm ” đề cập đến đường dẫn mà hàm phần mềm trung gian sẽ được gọi.
  • cb ” tương ứng với (các) chức năng của phần mềm trung gian.

Sau đây là phần trình diễn mã thiết lập phần mềm trung gian ghi nhật ký thông qua một ứng dụng và phương pháp được thảo luận:

hằng số ứng dụng = thể hiện ( )

hằng số logMiddleware = yêu cầu ( 'phần mềm trung gian ghi nhật ký của tôi' )

ứng dụng. sử dụng ( logMiddleware )

Trong mã này, hãy tạo một ứng dụng Express và bao gồm “ phần mềm trung gian của tôi ” để bắt đầu làm việc với phần mềm trung gian ghi nhật ký. Cuối cùng, áp dụng “ ứng dụng.use() ” để gắn chức năng phần mềm trung gian đích vào đường dẫn đã chỉ định.

Ví dụ 2: Thiết lập Middleware ghi nhật ký từ ứng dụng qua bộ định tuyến

Các ' bộ định tuyến.use () ” gắn kết phần mềm trung gian cho các tuyến được cung cấp qua bộ định tuyến đích.

Cú pháp

bộ định tuyến. sử dụng ( cho, vui vẻ )

Trong cú pháp này:

  • điểm ” đề cập đến đường dẫn phần mềm trung gian.
  • vui vẻ ” tương ứng với hàm được truyền dưới dạng gọi lại.

Ví dụ dưới đây thiết lập phần mềm trung gian ghi nhật ký với sự trợ giúp của đối tượng bộ định tuyến và “ bộ định tuyến.use () ' chức năng:

hằng số bộ định tuyến = thể hiện. Bộ định tuyến ( )

hằng số rtLoggingMiddleware = yêu cầu ( 'my-route-logging-middleware' )

bộ định tuyến. sử dụng ( rtLoggingMiddleware )

Trong mã này:

  • Các ' express.Router() ” Hàm tạo một đối tượng bộ định tuyến mới.
  • Sau đó, bao gồm “ my-route-logging-middleware ” và tương tự, hãy sử dụng “ bộ định tuyến.use () ” để gắn phần mềm trung gian cho các tuyến được cung cấp bởi bộ định tuyến mục tiêu.

Cách tiếp cận 6: Triển khai đăng nhập vào node.js bằng cách sử dụng “Gói Winston”

Gói cụ thể này bao gồm các tùy chọn lưu trữ, nhiều cấp độ nhật ký, truy vấn và trình lược tả. Sau đây là phần trình diễn mã thực hiện ghi nhật ký thông qua phương pháp này:

hằng số x = thể hiện ( )
hằng số bao gồm = yêu cầu ( 'winston' )
hằng số giao diện điều khiểnGiao thông vận tải = mới bao gồm. vận chuyển . Bảng điều khiển ( )
hằng số chọn = {
vận chuyển : [ giao diện điều khiểnGiao thông vận tải ]
}
hằng số tiều phu = mới bao gồm. tạoLogger ( chọn )
chức năng hiển thịYêu cầu ( yêu cầu, res, tiếp theo ) {
tiều phu. thông tin ( yêu cầu địa chỉ )
Kế tiếp ( )
}
x. sử dụng ( yêu cầu hiển thị )
hiển thị chức năngLỗi ( err, req, res, tiếp theo ) {
tiều phu. lỗi ( lỗi )
Kế tiếp ( )
}
x. sử dụng ( hiển thịLỗi )

Trong mã này:

  • Nhiều phương tiện vận chuyển có thể được thiết lập với bộ lọc và bộ định dạng tùy chỉnh có thể được thiết lập.
  • Ngoài ra, nhiều phiên bản logger được chỉ định trong các hàm khác nhau, ví dụ: “ logger.info() ' Và ' logger.error() ”.
  • Các logger này hiển thị thông tin và thông báo lỗi tương ứng.
  • Trong mã này, chỉ URL được yêu cầu mới được ghi lại.

Các tham số đưa ra dưới đây được thực hiện bởi logger:

Tên Mặc định Sự miêu tả
định dạng Winston.format.json Định dạng thông báo thông tin
im lặng SAI Nếu đúng, tất cả nhật ký sẽ tạm dừng.
exitOnError ĐÚNG VẬY Nếu sai, các ngoại lệ được xử lý sẽ không gây ra process.exit
cấp độ Winston.config.npm.levels Các cấp độ đề cập đến mức độ ưu tiên của nhật ký.

Phần kết luận

Việc đăng nhập vào node.js có thể được thực hiện thông qua “ console.log() “ phương pháp, phương pháp “ console.warn() “ phương pháp, phương pháp “ console.error() “ phương pháp, phương pháp “ console.table() “ phương pháp, phương pháp “ Mô-đun gỡ lỗi ”, hoặc thông qua “ Gói Winston ”. Các phương thức console hiển thị thông tin và thông báo lỗi. Mô-đun gỡ lỗi ghi lại thông tin bổ sung về trạng thái của phần mềm trung gian web và gói Winston chứa các tùy chọn lưu trữ và các cấp độ nhật ký khác nhau.