Penyedia penebangan telegram untuk serilog dan standar .NET Logging.
Apa itu Telegram? Apa yang harus saya lakukan di sini? Telegram adalah aplikasi pesan dengan fokus pada kecepatan dan keamanan, ini sangat cepat, sederhana dan gratis. Anda dapat menggunakan telegram pada semua perangkat Anda secara bersamaan - pesan Anda menyinkronkan dengan mulus di sejumlah ponsel, tablet, atau komputer Anda. Telegram memiliki lebih dari 500 juta pengguna aktif bulanan dan merupakan salah satu dari 10 aplikasi yang paling diunduh di dunia.
Karena sangat nyaman - Anda dapat menerima pesan penting secara langsung ke ponsel cerdas atau laptop Anda.
Untuk mengirim pesan log ke saluran telegram atau obrolan, Anda perlu membuat bot telegram sebelumnya. Di sini Anda dapat menemukan cara melakukannya. Setelah Anda membuat bot tambahkan ke saluran dengan peran admin dan memungkinkan bot untuk memposting pesan.
Di telegram ada dua jenis saluran: publik dan pribadi. Untuk saluran publik Anda dapat menggunakan nama saluran sebagai chatid dalam konfigurasi.
Untuk saluran pribadi Anda dapat menggunakan @JSondUMPBOT untuk mendapatkan ID saluran pribadi. Cukup lanjutkan pesan apa pun dari private channelto bot ini. Informasi tambahan yang dapat Anda temukan di sini.
Jangan lupa untuk menambahkan bot Anda sebagai admin dengan izin menulis izin ke saluran.
X.extensions.logging.telegram adalah penyedia logging untuk penebangan .NET standar.
Anda dapat mengonfigurasi penyedia logging telegram dengan kode atau dengan file konfigurasi:
var options = new TelegramLoggerOptions ( LogLevel . Information )
{
AccessToken = "1234567890:AAAaaAAaa_AaAAaa-AAaAAAaAAaAaAaAAAA" ,
ChatId = "-0000000000000" ,
Source = "Human Readable Project Name"
} ;
.. .
builder
. ClearProviders ( )
. AddTelegram ( options )
. AddConsole ( ) ;
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
},
"Telegram": {
"LogLevel": {
"Default": "Error",
"WebApp.Controllers": "Warning"
},
"AccessToken": "1234567890:AAAaaAAaa_AaAAaa-AAaAAAaAAaAaAaAAAA",
"ChatId": "1234567890",
"Source": "Human Readable Project Name"
}
},
"AllowedHosts": "*"
}
dan meneruskan objek Iconfiguration ke metode ekstensi
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureLogging((context, builder) =>
{
if (context.Configuration != null)
builder
.AddTelegram(context.Configuration)
.AddConsole();
})
.ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); });
Sekarang pengembang dapat menggunakan implementasi mereka sendiri untuk menulis data ke telegram. Penulis Kustom harus mengimplementasikan antarmuka ilogwriter :
var customLogWriter = new CustomLogWriter ( ) ;
logBuilder . AddTelegram ( options , customLogWriter ) ;Untuk mengimplementasikan format pesan kustom ItelegrammessageFormatter dapat digunakan sekarang.
private ITelegramMessageFormatter CreateFormatter ( string name )
{
return new CustomTelegramMessageFormatter ( name ) ;
}
logBuilder . AddTelegram ( options , CreateFormatter ) ;Untuk menggunakan format formatter pesan kustom func <string, itelegrammessageFormatter> harus diteruskan ke metode ekstensi addtelegram. Delegasi harus digunakan karena formatter perlu mengetahui kategori mana yang digunakan untuk merender pesan tersebut.
X.serilog.sinks.telegram adalah wastafel serilog open-source yang memungkinkan Anda mengirim acara log ke telegram. Ini adalah cara yang nyaman untuk mengintegrasikan telegram sebagai output logging, memungkinkan Anda untuk menerima informasi log penting secara langsung dalam obrolan Anda.
Logging real-time : Wastafel menawarkan kemampuan untuk mengirim acara log ke saluran telegram secara real-time, memastikan bahwa Anda dapat tetap up-to-date dengan perilaku aplikasi Anda dan masalah apa pun yang muncul.
Pemformatan yang dapat disesuaikan : Anda dapat mengonfigurasi format pesan log yang dikirim ke saluran telegram, memungkinkan Anda untuk menyesuaikannya dengan preferensi dan persyaratan spesifik Anda.
Penyaringan : Wastafel mendukung peristiwa log penyaringan sebelum dikirim ke saluran telegram, memastikan bahwa hanya informasi terkait yang dibagikan.
Pengiriman Asynchronous : Acara log dikirim secara tidak sinkron ke saluran telegram, meminimalkan dampak potensial pada kinerja aplikasi Anda.
Konfigurasi Mudah : Mengkonfigurasi wastafel agar berfungsi dengan saluran telegram Anda mudah, dan Anda dapat menemukan informasi komprehensif di wiki konfigurasi.
Untuk mulai menggunakan wastafel x.serilog.sinks.telegram, ikuti langkah -langkah ini:
dotnet add package X.Serilog.Sinks.Telegram Log . Logger = new LoggerConfiguration ( )
. WriteTo . TelegramCore (
token : botToken ,
chatId : loggingChatId ,
logLevel : LogEventLevel . Verbose )
. WriteTo . Console ( )
. CreateLogger ( ) ;Untuk opsi konfigurasi yang lebih rinci, silakan merujuk ke wiki konfigurasi.
Repositori ini mencakup beberapa contoh proyek yang menunjukkan cara menggunakan kedua perpustakaan dalam berbagai skenario. Contoh -contoh ini dapat membantu jika Anda memulai atau ingin menggunakan fitur tertentu.
Jangan ragu untuk menambahkan perbaikan yang Anda inginkan melalui permintaan tarik. Semua permintaan tarik harus ditautkan ke suatu masalah.
Proyek ini dilisensikan di bawah lisensi MIT.