TypeScript:
การเขียนไปยังข้อผิดพลาดมาตรฐาน
วิธีทำ:
TypeScript เป็นชุดขยายของ JavaScript, ประชาคมอาศัยสภาพแวดล้อมการทำงาน JavaScript อย่างเช่น Node.js เพื่อการเขียนข้อผิดพลาดไปยัง stderr ต่อไปนี้คือวิธีสามารถทำได้โดยตรง:
console.error("This is an error message.");
ตัวอย่างผลลัพธ์ไปยัง stderr:
This is an error message.
ในสภาพแวดล้อม Node.js, คุณสามารถใช้เมธอด process.stderr.write()
สำหรับการเขียนในระดับต่ำมากขึ้น:
process.stderr.write("Low level error message.\n");
ตัวอย่างผลลัพธ์ไปยัง stderr:
Low level error message.
สำหรับการบันทึกข้อผิดพลาดที่มีโครงสร้างมากขึ้น, คุณอาจใช้ไลบรารี่อื่นๆ ที่ได้รับความนิยม เช่น winston
หรือ pino
ต่อไปนี้คือวิธีการบันทึกข้อผิดพลาดโดยใช้ winston
:
ก่อนอื่น, ติดตั้ง winston
:
npm install winston
จากนั้นใช้มันในไฟล์ TypeScript ของคุณ:
import * as winston from 'winston';
const logger = winston.createLogger({
levels: winston.config.syslog.levels,
transports: [
new winston.transports.Console(),
new winston.transports.File({ filename: 'error.log', level: 'error' })
],
});
logger.error('Error logged using winston.');
สิ่งนี้จะเขียนข้อผิดพลาดทั้งในคอนโซลและไฟล์ชื่อ error.log
ทั้งนี้, เมื่อเขียนไปยังไฟล์, สำคัญที่จะจัดการการอนุญาตไฟล์และการเปลี่ยนไฟล์เพื่อป้องกันปัญหาที่เกี่ยวข้องกับการใช้พื้นที่ดิสก์.