ASP.NET Core mendukung API pencatatan untuk berbagai penyedia pencatatan bawaan dan pihak ketiga. Pencatatan adalah fitur penting dalam perkembangan kita sehari-hari.
Mari kita lihat rendering konsol terlebih dahulu, sebagai berikut:
Menambahkan penyedia log
Penyedia logging menampilkan atau menyimpan log. Misalnya, penyedia konsol menampilkan log di konsol, dan penyedia Azure Application Insights menyimpan log ini di Azure Application Insights. Log dapat dikirim ke beberapa tujuan dengan menambahkan beberapa penyedia.
Edit file Program sebagai berikut:
Membuat log (injeksi konstruktor)
Contoh pengontrol berikut membuat log di semua tingkatan.
Tingkat log | Tampilkan teks | Warna latar depan | Warna latar belakang | Jejak | TRCE | Abu-abu | Hitam | Men-debug | dbug | Abu-abu | Hitam | Informasi | Informasi | Hijau Tua | Hitam | peringatan | memperingatkan | Kuning | Hitam | Kesalahan | gagal | Merah | Hitam | Kritis | kritik | Putih | Merah |
Tautan referensi:Login hyperlink terlihat.
Jalankan proyek dengan perintah berikut, dan Anda dapat melihat log output melalui konsol.
Kunjungi URL lokal untuk melihat output.
Tingkat log kontrol
Kami tidakTidak ingin melihat output konsol begitu banyak log info yang tidak masuk akal, Saya hanya ingin melihat log penting yang saya catat, apa yang harus saya lakukan?
1: Kontrol level log melalui konfigurasi file dan edit file appsettings.json sebagai berikut:
JSON ini akan membuat 6 aturan pemfilteran: 1 untuk penyedia penelusuran kesalahan, 4 untuk penyedia konsol, dan 1 untuk semua penyedia. Saat Anda membuat objek ILogger, pilih aturan untuk setiap penyedia.
2: Kontrol kode sandi (tanpa pengujian)
AddFilter kedua menggunakan nama jenis untuk menentukan penyedia debug. AddFilter pertama berlaku untuk semua penyedia karena tidak menentukan jenis penyedia.
Tingkat minimum default
Pengaturan level minimum hanya berlaku jika aturan dalam konfigurasi atau kode tidak berlaku untuk penyedia dan kategori tertentu. Contoh berikut menunjukkan cara mengatur level minimum:
Jika tingkat minimum tidak ditetapkan secara eksplisit, nilai defaultnya adalah Informasi, yang diwakilinyaLog Trace dan Debug akan diabaikan。
Tautan referensi:Login hyperlink terlihat.
Gunakan Autofac untuk menyuntikkan log ILogger melalui properti
Umumnya, kami menyuntikkan layanan log melalui konstruktor, bagaimana kami menyuntikkan melalui atribut? Bagaimana lagi cara meng-host ILogger ke Autofac?
Dalam metode pengeditan Startup ConfigureServices, sebagai berikut:
Empat kalimat penting berikut:
Pastikan untuk menambahkannyaloggerFactory.AddConsole();baris kode ini, jika tidak, konsol akanTidak ada output, dan hosting Autofac, file konfigurasi tidak akan valid.
Kode Pengontrol:
Akses URL, dotnet run memulai proyek, dan output konsol adalah sebagai berikut:
Cara menyuntikkan log ILogger ke kelas lain melalui properti.
(Akhir)
|