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

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)
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
Demo:
Có thể bạn quan tâm: Việc làm lập trình Typescript lương cao tại Station D.
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:
- So sánh Typescript với JavaScript
- Tìm hiểu về TypeScript
- Tạo dự án app-template-lit-element-typescript với snowpack
Xem thêm Việc làm IT hấp dẫn trên Station D
Bạn có thể quan tâm
- Principle thiết kế của các sản phẩm nổi tiếng(Công Nghệ)
- Vừa đủ để đi (go)(Công Nghệ)
- Applicant Tracking System là gì? ATS hoạt động ra sao(Cẩm Nang Tuyển Dụng)