Hestia.Logging.DingTalk
1.0.2
dotnet add package Hestia.Logging.DingTalk --version 1.0.2
NuGet\Install-Package Hestia.Logging.DingTalk -Version 1.0.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Hestia.Logging.DingTalk" Version="1.0.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Hestia.Logging.DingTalk --version 1.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Hestia.Logging.DingTalk, 1.0.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Hestia.Logging.DingTalk as a Cake Addin #addin nuget:?package=Hestia.Logging.DingTalk&version=1.0.2 // Install Hestia.Logging.DingTalk as a Cake Tool #tool nuget:?package=Hestia.Logging.DingTalk&version=1.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Hestia.Logging.DingTalk
基础说明
参照 钉钉官方文档 创建钉钉机器人(
安全设置
使用加签
)。在配置文件中的
Logging
节点下新增DingTalk
节点,配置Url
与Secret
。{ "Logging": { "LogLevel": { "Default": "Information", "Microsoft.Hosting.Lifetime": "Information" }, "DingTalk": { "IncludeScopes": true, "Url": "https://oapi.dingtalk.com/robot/send?access_token={AccessToken}", "Secret": "{Secret}", "LogLevel": { "Default": "Warning" } } } }
日志等级相关的配置可以参考 微软官方文档。
高级说明
Markdown 输出配置
在 DingTalk
节点下,使用 Markdown
节点进行配置。
{
"Logging": {
"DingTalk": {
"Markdown":{
"Stack": false,
"Id": "[查看详细]({0})",
"Image":{
"Information":"![Information]({information.png})",
"Warning":"![Warning]({warning.png})",
"Error":"![Error]({error.png})"
},
"Icon":{
"Information":"💚",
"Warning":"💛",
"Error":"❤️"
}
}
}
}
}
- Stack:是否包含异常堆栈(布尔值,默认:是)
- Id:日志标识号的格式化文本,如上例所示:可以通过日志标识号在其他的日志存储中快速定位当前日志。
- Image:用指定的 Markdown 替换钉钉消息中首行的日志等级,如上例所示:用指定的图片替换对应的日志等级,来提高辨识度。
- Icon:用指定的字符替换钉钉聊天列表中新消息标题中的日志等级,如上例所示:用指定的 UTF8 图标来替换对应的日志等级,来提高辨识度。
自定义其他格式的消息
默认实现了 Markdown 消息,如果有特殊需要,参考 钉钉官方文档 中的 消息类型及数据格式
,实现 IFormatter 接口即可。
依赖说明
- Hestia.Logging.Abstractions:参考 Logging.AzureAppServices 实现的日志提供程序。
- Hestia.Security:钉钉消息的
HMAC-SHA256
签名计算。
使用示例
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net6.0
- Hestia.Logging.Abstractions (>= 1.0.1)
- Hestia.Security (>= 1.1.3)
- Microsoft.Extensions.Configuration.Binder (>= 6.0.0)
- Microsoft.Extensions.Logging (>= 6.0.0)
- Microsoft.Extensions.Logging.Configuration (>= 6.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.