Пишет события Serilog в данном чате Telegram - это личный чат или группа.
Install-Package Serilog.Sinks.Telegram
Обратите внимание, что для настройки раковины требуется ключ API Telegram BOT, если вы не знаете, как работает процесс создания бота, обратитесь к официальной документации.
Чтобы настроить раковину, просто добавьте «telesink», используя метод «writeto» в конфигурации логирования Serilog.
new LoggerConfiguration ( )
. MinimumLevel . Information ( )
. WriteTo . TeleSink (
telegramApiKey : "my-bot-api-key" ,
telegramChatId : "the target chat id" )
. CreateLogger ( ) ;При желании можно указать минимальный уровень журнала:
new LoggerConfiguration ( )
. MinimumLevel . Information ( )
. WriteTo . TeleSink (
telegramApiKey : "my-bot-api-key" ,
telegramChatId : "the target chat id" ,
minimumLevel : LogEventLevel . Warning )
. CreateLogger ( ) ;Как найти параметр идентификатора чата?
Как только ваш бот будет создан, просто откройте чат к нему (или включите его в группу), вы можете использовать API Telegram, чтобы получить последние обновления для вашего бота:
curl -X GET
https://api.telegram.org/bot<my-bot-api-key>/getUpdates
-H 'Cache-Control: no-cache'
Ответ должен сообщить о последних разговорах, которые имели ваш бот, вместе с их идентификаторами чата:
{
"ok" : true ,
"result" : [
{
"update_id" : 123456789 ,
"message" : {
"message_id" : 2 ,
"from" : {
"id" : 000000 ,
"is_bot" : false ,
"first_name" : "XXX" ,
"last_name" : "XXX" ,
"username" : "XXX" ,
"language_code" : "XX"
} ,
"chat" : {
"id" : 0000000 ,
"first_name" : "XXX" ,
"last_name" : "XXX" ,
"username" : "XXX" ,
"type" : "private"
} ,
"date" : 1531306919 ,
"text" : "hello dear bot!"
}
}
]
}Как я могу запустить модульные тесты?
Вам нужен ключ API и идентификатор чата, чтобы запустить модульные тесты. Вы можете добавить их в файл конфигурации Configuration/testConfig.json или (лучшее решение). Вы можете добавить еще один файл конфигурации с именем /concerfiguration/ testconfig_private.json и использовать его для хранения секретов. Это предпочтительное решение, если вы хотите сделать запрос на вытягивание или выдвинуть код в другой репо, так как этот путь уже игнорируется.