Code ví dụ TypeScript logger (ghi log TypeScript với log4js)

460

Bài viết được sự cho phép của tác giả Trần Hữu Cương

Code ví dụ TypeScript logger (ghi log TypeScript với log4js)

(Xem lại: Code ví dụ nodejs log4js)

  Authorization Code grant type với Proof Key for Code Exchange (PKCE) trong OAuth 2.1
  Các kiểu dữ liệu trong lập trình C/C++ (Data type)

1. Code ví dụ TypeScript log4j

khởi tạo project typescript. (Xem lại: tạo project TypeScript)

mkdir typescript-log4j

cd typescript-log4j




npm i typescript --save-dev

npx tsc --init

Cài đặt module log4js

npm i log4js

Tạo file src/logger.ts: khởi tạo và cấu hình log4j

import { configure, getLogger } from "log4js";




configure({

"appenders": {

"application": {

"type": "console"

},

"file": {

"type": "file",

"filename": "/logs/application.log",

"compression": true,

"maxLogSize": 10485760,

"backups": 100

}

},

"categories": {

"default": {

"appenders": [

"application",

"file"

],

"level": "info"

}

}

});




export const logger = getLogger();

Trong đó:

  • export const logger = getLogger(); : khởi tạo đối tượng log4js và export ra để các file khác sử dụng.
  • configure: cấu hình log4js, ở đây mình cấu hình 2 kiểu log là log ra file và log ra console với level là info. Riêng phần log ra file thì cấu hình ghi log ra file /logs/application.log với kích thước là 10485760 byte, nếu vượt quá thì sẽ tạo file mới (không quá 100 file)

Tạo file src/index.ts gọi tới đối tượng log4js đã export từ file logger.ts để ghi log:

import { logger } from "./logger";




logger.trace("stackjava.com");

logger.debug("stackjava.com");

logger.info("stackjava.com");

logger.warn("stackjava.com");

logger.error("stackjava.com");

logger.fatal("stackjava.com");

Cấu trúc project

Code ví dụ TypeScript logger (ghi log TypeScript với log4js)

Demo:

Code ví dụ TypeScript logger (ghi log TypeScript với log4js)

Có thể bạn quan tâm: Việc làm lập trình Typescript lương cao tại Topdev.

File log được ghi ra:

[2021-06-12T16:58:45.127] [INFO] default - stackjava.com

[2021-06-12T16:58:45.132] [WARN] default - stackjava.com

[2021-06-12T16:58:45.133] [ERROR] default - stackjava.com

[2021-06-12T16:58:45.133] [FATAL] default - stackjava.com

Okay done!

Download code ví dụ trên tại đây hoặc tại đây https://github.com/stackjava/typescript-log4js

References:

https://www.npmjs.com/package/log4js

Bài viết gốc được đăng tải tại stackjava.com

Có thể bạn quan tâm:

Xem thêm Việc làm IT hấp dẫn trên TopDev