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 ทั้งนี้, เมื่อเขียนไปยังไฟล์, สำคัญที่จะจัดการการอนุญาตไฟล์และการเปลี่ยนไฟล์เพื่อป้องกันปัญหาที่เกี่ยวข้องกับการใช้พื้นที่ดิสก์.