Hai! Jika Anda menyukai aplikasi TypeScript dan ingin menyiapkan wastafel konsol, Anda berada di tempat yang tepat. Saya adalah pemasok wastafel konsol, dan saya di sini untuk memandu Anda melalui proses langkah demi langkah.
Pertama, mari kita pahami apa itu wastafel konsol. Dalam konteks aplikasi TypeScript, sink konsol adalah cara untuk menangani dan mengelola output log aplikasi Anda. Ini seperti sebuah ember kecil tempat semua pesan log Anda disimpan, dan Anda dapat memutuskan apa yang harus dilakukan dengannya - apakah menampilkannya di konsol, mengirimkannya ke file, atau bahkan meneruskannya ke server jauh.
Prasyarat
Sebelum kita mulai menyiapkan wastafel konsol, Anda harus menyiapkan dan menjalankan proyek TypeScript dasar. Jika Anda belum melakukannya, Anda dapat membuatnya menggunakan alat sepertinpmDantsc(kompiler TypeScript). Berikut ini ikhtisar singkat tentang cara memulai:
-
Inisialisasi proyek npm baru:
Buka terminal Anda dan jalankan perintah berikut:npm init -yIni akan membuat a
paket.jsonfile di direktori proyek Anda, yang melacak semua dependensi proyek Anda. -
Instal Skrip Ketik:
Jalankan perintah berikut untuk menginstal TypeScript sebagai ketergantungan pengembangan:npm install --save-dev skrip ketikan -
Buat sebuah
tsconfig.jsonmengajukan:
Anda dapat menghasilkan dasartsconfig.jsonfile dengan menjalankan:npx tsc --panasFile ini berisi opsi konfigurasi untuk kompiler TypeScript.
Menyiapkan Wastafel Konsol Sederhana
Sekarang setelah proyek TypeScript Anda siap, mari mulai menyiapkan wastafel konsol sederhana. Kami akan menggunakan contoh dasar di mana kami mencatat pesan ke konsol.
-
Buat Kelas Logger
Pertama, mari kita buat apenebangkelas yang akan menangani logging. Buat file baru, misalnya,logger.ts, dan tambahkan kode berikut:
kelas Logger { log(pesan: string) { console.log(pesan); } error(pesan: string) { console.error(pesan); } } ekspor Logger bawaan;Di kelas ini, kami memiliki dua metode:
mencatatDankesalahan. Itumencatatmetode cukup mencatat pesan ke konsol menggunakankonsol.log, dan itukesalahanmetode mencatat pesan kesalahan menggunakankonsol.kesalahan. -
Menggunakan Logger di Aplikasi Anda
Sekarang, mari kita gunakan milik kitapenebangkelas di file aplikasi utama kami. Buat file baru, katakanlahaplikasi.ts, dan tambahkan kode berikut:impor Logger dari './logger'; const logger = Logger baru(); logger.log('Ini adalah pesan log'); logger.error('Ini adalah pesan kesalahan');Di sini, kami mengimpor
penebangkelas, buat sebuah instance darinya, dan kemudian gunakanmencatatDankesalahanmetode untuk mencatat pesan.
Pengaturan Sink Konsol Tingkat Lanjut
Meskipun contoh di atas adalah cara sederhana untuk mencatat pesan ke konsol, Anda mungkin ingin melakukan hal lebih lanjut, seperti memfilter pesan berdasarkan tingkat keparahannya atau mengirimnya ke beberapa tujuan.
-
Menambahkan Level Log
Mari tambahkan level log kepenebangkelas. Kami akan menentukan level yang berbeda sepertiDEBUG,INFORMASI,MEMPERINGATKAN, DanKESALAHAN. Perbaruilogger.tsmengajukan sebagai berikut:enum LogLevel { DEBUG, INFO, WARN, ERROR } class Logger { private logLevel: LogLevel; konstruktor(logLevel: LogLevel = LogLevel.INFO) { this.logLevel = logLevel; } log(level: LogLevel, pesan: string) { if (level >= this.logLevel) { switch (level) { case LogLevel.DEBUG: console.debug(message); merusak; kasus LogLevel.INFO: console.log(pesan); merusak; case LogLevel.WARN: console.warn(pesan); merusak; kasus LogLevel.ERROR: console.error(pesan); merusak; } } } debug(pesan: string) { this.log(LogLevel.DEBUG, pesan); } info(pesan: string) { this.log(LogLevel.INFO, pesan); } peringatkan(pesan: string) { this.log(LogLevel.WARN, pesan); } error(pesan: string) { this.log(LogLevel.ERROR, pesan); } } ekspor Logger bawaan;Dalam kode yang diperbarui ini, kami telah menambahkan
enumuntuk level log dan parameter konstruktor untuk mengatur level log minimum. ItumencatatMetode sekarang memeriksa apakah level log pesan lebih besar atau sama dengan level log minimum sebelum mencatatnya. -
Menggunakan Logger Tingkat Lanjut
Perbaruiaplikasi.tsfile untuk menggunakan tingkat lanjutpenebangkelas:import Logger, { LogLevel } dari './logger'; const logger = Logger baru(LogLevel.DEBUG); logger.debug('Ini adalah pesan debug'); logger.info('Ini adalah pesan info'); logger.warn('Ini adalah pesan peringatan'); logger.error('Ini adalah pesan kesalahan');Sekarang, Anda dapat mengontrol pesan mana yang dicatat berdasarkan tingkat log yang Anda atur saat membuat
penebangcontoh.
Mengirim Log ke Banyak Tujuan
Terkadang, Anda mungkin ingin mengirim pesan log ke beberapa tujuan, seperti konsol dan file. Untuk melakukan ini, kita dapat menggunakan konsep yang disebut “sinks”. Sink adalah tujuan pengiriman pesan log.
-
Membuat Antarmuka Wastafel
Pertama, mari buat antarmuka untuk sink. Buat file baru,tenggelam.ts, dan tambahkan kode berikut:antarmuka Tenggelam { tulis(pesan: string): batal; } ekspor Wastafel bawaan;Antarmuka ini mendefinisikan satu metode,
menulis, yang digunakan untuk mengirim pesan log ke sink. -
Membuat Wastafel Konsol
Sekarang, mari buat wastafel konsol yang mengimplementasikanTenggelamantarmuka. Perbaruilogger.tsmengajukan sebagai berikut:impor Tenggelam dari './tenggelam'; enum LogLevel { DEBUG, INFO, WARN, ERROR } class ConsoleSink mengimplementasikan Sink { write(message: string) { console.log(message); } } kelas Logger { logLevel pribadi: LogLevel; wastafel pribadi: Sink[]; konstruktor(logLevel: LogLevel = LogLevel.INFO, sink: Sink[] = [new ConsoleSink()]) { this.logLevel = logLevel; this.sinks = tenggelam; } log(level: LogLevel, pesan: string) { if (level >= this.logLevel) { const formattedMessage = `[${LogLevel[level]}] ${message}`; this.sinks.forEach(sink => sink.write(formattedMessage)); } } debug(pesan: string) { this.log(LogLevel.DEBUG, pesan); } info(pesan: string) { this.log(LogLevel.INFO, pesan); } peringatkan(pesan: string) { this.log(LogLevel.WARN, pesan); } error(pesan: string) { this.log(LogLevel.ERROR, pesan); } } ekspor { LogLevel }; ekspor Logger bawaan;Dalam kode yang diperbarui ini, kami telah membuat a
KonsolSinkkelas yang mengimplementasikanTenggelamantarmuka. Itupenebangkelas sekarang mengambil array sink di konstruktornya, dan ketika mencatat pesan, ia mengirimkan pesan ke semua sink di array. -
Menambahkan Sink File
Mari tambahkan file sink ke aplikasi kita. Kami akan menggunakanfsmodul di Node.js untuk menulis pesan log ke file. Perbaruitenggelam.tsmengajukan sebagai berikut:impor * sebagai fs dari 'fs'; antarmuka Tenggelam { tulis(pesan: string): batal; } kelas ConsoleSink mengimplementasikan Sink { write(message: string) { console.log(message); } } kelas FileSink mengimplementasikan Sink { private filePath: string; konstruktor(filePath: string) { this.filePath = filePath; } write(pesan: string) { fs.appendFile(this.filePath, pesan + '\n', (err) => { if (err) { console.error('Kesalahan menulis ke file:', err); } }); } } ekspor { ConsoleSink, FileSink }; ekspor wastafel bawaan;Sekarang, perbarui
aplikasi.tsfile untuk menggunakan wastafel konsol dan wastafel file:import Logger, { LogLevel } dari './logger'; impor { ConsoleSink, FileSink } dari './sink'; const consoleSink = baru ConsoleSink(); const fileSink = FileSink baru('app.log'); const logger = Logger baru(LogLevel.DEBUG, [consoleSink, fileSink]); logger.debug('Ini adalah pesan debug'); logger.info('Ini adalah pesan info'); logger.warn('Ini adalah pesan peringatan'); logger.error('Ini adalah pesan kesalahan');Dengan pengaturan ini, pesan log akan dikirim ke konsol dan
aplikasi.logmengajukan.
Set Kamar Mandi Wastafel Kapal Keramik Komersial
Jika Anda juga tertarikSet Kamar Mandi Wastafel Kapal Keramik Komersial, kami siap membantu Anda. Wastafel konsol berkualitas tinggi kami tidak hanya bergaya tetapi juga tahan lama, cocok untuk kamar mandi komersial atau residensial.
Kesimpulan
Menyiapkan wastafel konsol di aplikasi TypeScript bisa sesederhana atau serumit yang Anda perlukan. Baik Anda hanya mencatat pesan ke konsol atau mengirimnya ke beberapa tujuan, konsep yang telah kami bahas di sini dapat membantu Anda membangun sistem pencatatan yang kuat.
Jika Anda tertarik dengan produk wastafel konsol kami, baik untuk kebutuhan logging aplikasi TypeScript Anda atau untuk kamar mandi Anda, jangan ragu untuk menghubungi diskusi pengadaan. Kami di sini untuk membantu Anda menemukan solusi terbaik untuk kebutuhan Anda.
Referensi
- Dokumentasi TypeScript
- Dokumentasi Node.js
