serilog sinks telegram
1.0.0
将Serilog事件写入给定的电报聊天是一个私人聊天或小组。
Install-Package Serilog.Sinks.Telegram
请注意,为了配置接收器,需要电报机器人API键,如果您不知道机器人创建过程如何工作,请参考官方文档。
要配置接收器,只需在Serilog Logger配置上使用“ Writeto”方法添加“ TeleSink”即可。
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 ( ) ;如何发现聊天ID参数?
创建机器人后,只需向其打开聊天(或将其包括在一个组中),然后您可以使用电报API获取BOT的最后更新:
curl -X GET
https://api.telegram.org/bot<my-bot-api-key>/getUpdates
-H 'Cache-Control: no-cache'
响应应报告您的机器人和聊天ID的最后一次对话:
{
"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键和一个聊天ID才能运行单元测试。您可以将它们添加到configuration/testconfig.json配置文件或(更好的解决方案)可以添加名为/configuration/testconfig_private.json的另一个配置文件,并使用它来存储您的秘密。如果您想提出拉动请求或叉子并将代码推到另一个存储库,则这是首选的解决方案,因为该路径已经被忽略。