Serilog.Settings.AppSettings 3.0.0
前缀预留
dotnet add package Serilog.Settings.AppSettings --version 3.0.0
NuGet\Install-Package Serilog.Settings.AppSettings -Version 3.0.0
<PackageReference Include="Serilog.Settings.AppSettings" Version="3.0.0" />
paket add Serilog.Settings.AppSettings --version 3.0.0
#r "nuget: Serilog.Settings.AppSettings, 3.0.0"
// Install Serilog.Settings.AppSettings as a Cake Addin #addin nuget:?package=Serilog.Settings.AppSettings&version=3.0.0 // Install Serilog.Settings.AppSettings as a Cake Tool #tool nuget:?package=Serilog.Settings.AppSettings&version=3.0.0
Serilog.Settings.AppSettings
用于 Serilog 的 XML <appSettings>
读取器。
入门指南
需要从 NuGet 安装 <appSettings>
支持包
Install-Package Serilog.Settings.AppSettings
要从 <appSettings>
读取配置,请使用您的 LoggerConfiguration
的扩展方法 ReadFrom.AppSettings()
Log.Logger = new LoggerConfiguration()
.ReadFrom.AppSettings()
... // Other configuration here, then
.CreateLogger()
可以混合使用 XML 和基于代码的配置,但每个输出必须使用 XML 或代码中的一种方式配置 - 代码中添加的输出无法通过应用程序设置进行修改。
配置语法
为了配置记录器,应在程序的两个配置文件 App.config 或 Web.config 中包含 <appSettings>
元素。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="serilog:minimum-level" value="Verbose" />
Serilog 设置以 serilog:
前缀。
设置最低级别
使用 serilog:minimum-level
设置键设置应用程序的日志级别。
<add key="serilog:minimum-level" value="Verbose" />
有效值是 LogEventLevel
列表中定义的值:Verbose
、Debug
、Information
、Warning
、Error
、Fatal
。
添加输出
使用 serilog:write-to
键添加输出。设置名称与您在代码中使用配置方法名称相匹配,因此以下两种方式是等效的
.WriteTo.Console()
在 XML 中
<add key="serilog:write-to:Console" />
注意:使用 serilog:*
键时,需要唯一。
必须使用 serilog:using
语法指定存储库程序集。例如,为了配置
<add key="serilog:using:Console" value="Serilog.Sinks.Console" />
<add key="serilog:write-to:Console"/>
如果输出接受参数,则通过将参数名称附加到设置来指定它们。
.WriteTo.File(@"C:\Logs\myapp-{Date}.txt", retainedFileCountLimit: 10)
在 XML 中
<add key="serilog:write-to:File.path" value="C:\Logs\myapp-{Date}.txt" />
<add key="serilog:write-to:File.retainedFileCountLimit" value="10" />
设置值中指定的任何环境变量(例如 %TEMP%
)将在读取时适当地展开。
使用来自附加程序集的输出扩展
要使用来自其他程序集的输出和增强器,请使用 serilog:using
键指定它们。
例如,为了使用来自 Serilog.Sinks.EventLog
程序集的配置
<add key="serilog:using:EventLog" value="Serilog.Sinks.EventLog" />
<add key="serilog:write-to:EventLog.source" value="Serilog Demo" />
使用属性增强
要为日志事件附加额外的属性,请使用 serilog:enrich:with-property
指令指定它们。
例如,为了将具有值 "1.2-develop"
的属性 Release
添加到所有事件中
<add key="serilog:enrich:with-property:Release" value="1.2-develop" />
添加最低级别覆盖
从 Serilog 2.1 开始,可以添加 最低级别覆盖 来更改某些特定命名空间的最小级别。这通过设置键 serilog:minimum-level:override:
后跟 源上下文前缀 完成。
例如,以下两种方式是等效的
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Information()
.MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
.MinimumLevel.Override("Microsoft.AspNetCore.Mvc", LogEventLevel.Error)
以及在 XML 中
<add key="serilog:minimum-level" value="Information" />
<add key="serilog:minimum-level:override:Microsoft" value="Warning" />
<add key="serilog:minimum-level:override:Microsoft.AspNetCore.Mvc" value="Error" />
过滤
可以使用 Serilog.Filters.Expressions 包来指定过滤器;有关更多信息,请参阅那里的 README。
从枚举设置值
在配置使用枚举值设置的输出时,请使用成员名称,而无需指定枚举的名称。
例如,为了将 File Sink 中 RollingInterval
的配置设置为每天创建一个新的日志文件,请使用 Day
而不是 RollingInterval.Day
<add key="serilog:write-to:File.rollingInterval" value="Day"/>
如果您指定了枚举的名称,您将收到类似于 System.ArgumentException: 请求的值 'RollingInterval.Day' 未找到
的错误
解构
LoggerConfiguration
.Destructure.ToMaximumDepth(maximumDestructuringDepth: 3)
.Destructure.ToMaximumStringLength(maximumStringLength: 3)
.Destructure.ToMaximumCollectionCount(maximumCollectionCount: 3)
.Destructure.AsScalar(typeof(System.Version))
.Destructure.With(new CustomPolicy());
以及在 XML 中
<add key="serilog:destructure:ToMaximumDepth.maximumDestructuringDepth" value="3" />
<add key="serilog:destructure:ToMaximumStringLength.maximumStringLength" value="3" />
<add key="serilog:destructure:ToMaximumCollectionCount.maximumCollectionCount" value="3" />
<add key="serilog:destructure:AsScalar.scalarType" value="System.Version" />
<add key="serilog:destructure:With.policy" value="My.CustomPolicy, MyAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
产品 | 版本 兼容和额外的计算目标框架版本。 |
---|---|
.NET | net5.0 已计算。 net5.0-windows 已计算。 net6.0 兼容。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 兼容。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。 |
.NET Core | netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.0 已计算。 netcoreapp3.1 已计算。 |
.NET Standard | netstandard2.0 兼容。 netstandard2.1 已计算。 |
.NET Framework | net461 已计算。 net462 兼容。 net463 已计算。 net47 已计算。 net471 兼容。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen40 已计算。 tizen60 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
-
.NETFramework 4.6.2
- Serilog (>= 4.0.0)
-
.NETFramework 4.7.1
- Serilog (>= 4.0.0)
-
.NETStandard 2.0
- Serilog (>= 4.0.0)
- System.Configuration.ConfigurationManager (>= 4.4.1)
-
net6.0
- Serilog (>= 4.0.0)
- System.Configuration.ConfigurationManager (>= 4.4.1)
-
net8.0
- Serilog (>= 4.0.0)
- System.Configuration.ConfigurationManager (>= 4.4.1)
NuGet 包 (49)
显示依赖 Serilog.Settings.AppSettings 的前 5 个 NuGet 包
包 | 下载 |
---|---|
UmbracoCms.Core 包含运行 Umbraco Cms 所需的核心程序集。此包仅包含程序集,可用于包开发。使用 UmbracoCms 包在 Visual Studio 中将 Umbraco 配置为 ASP.NET 项目。 |
|
CertiPay.Common
包描述 |
|
测试
有见地的验收测试框架。 |
|
DDPlanet.Logging
基于 Serilog 的简单日志框架,适用于 ELK 堆栈,只需几行代码即可实现完全配置的日志记录 |
|
Slalom.Boost
无描述。 |
GitHub 仓库 (10)
显示依赖 Serilog.Settings.AppSettings 的前 5 个最受欢迎的 GitHub 仓库
仓库 | 星 |
---|---|
win-acme/win-acme
一个简单的 ACME 客户端,适用于 Windows(与 Let's Encrypt 等产品一起使用)
|
|
jakubgarfield/Bonobo-Git-Server
Windows版Bonobo Git服务器是一个可以在您的IIS上安装的Web应用程序,您可以轻松地管理和连接到您的Git仓库。请访问主页以获取发布信息和更多信息。
|
|
大数工作室/DaxStudio
DAX Studio是一款用于在Power BI桌面版、Power Pivot for Excel和Analysis Services Tabular中编写、执行和分析DAX查询的工具。
|
|
EvilBeaver/OneScript
1C脚本执行环境
|
|
rzander/ruckzuck
Windows软件包管理器
|
版本 | 下载 | 最后更新 |
---|---|---|
3.0.0 | 21,765 | 7/4/2024 |
3.0.0-dev-00080 | 80 | 7/3/2024 |
2.2.3-dev-00066 | 65,489 | 2/1/2021 |
2.2.3-dev-00063 | 19,725 | 5/10/2020 |
2.2.2 | 20,044,448 | 10/26/2018 |
2.2.2-dev-00059 | 1,601 | 10/26/2018 |
2.2.1-dev-00056 | 1,650 | 10/8/2018 |
2.2.1-dev-00054 | 2,017 | 9/22/2018 |
2.2.1-dev-00052 | 3,611 | 5/9/2018 |
2.2.0-dev-00048 | 2,325 | 3/29/2018 |
2.2.0-dev-00041 | 1,643 | 3/28/2018 |
2.1.2 | 2,562,530 | 9/19/2017 |
2.1.2-dev-00022 | 1,580 | 9/19/2017 |
2.1.1 | 5,224 | 9/18/2017 |
2.1.1-dev-00018 | 1,700 | 9/14/2017 |
2.1.0 | 652,202 | 2/14/2017 |
2.1.0-dev-00014 | 4,767 | 8/17/2016 |
2.1.0-dev-00013 | 1,682 | 8/17/2016 |
2.0.0 | 651,129 | 6/29/2016 |
2.0.0-beta-537 | 2,024 | 5/2/2016 |
2.0.0-beta-533 | 1,639 | 4/29/2016 |
2.0.0-beta-531 | 1,921 | 4/20/2016 |
2.0.0-beta-530 | 1,729 | 4/19/2016 |
2.0.0-beta-523 | 1,677 | 3/18/2016 |
2.0.0-beta-521 | 1,654 | 3/18/2016 |
2.0.0-beta-519 | 1,579 | 3/16/2016 |
2.0.0-beta-516 | 1,638 | 3/15/2016 |
2.0.0-beta-515 | 1,640 | 3/15/2016 |
2.0.0-beta-513 | 1,627 | 3/15/2016 |
2.0.0-beta-511 | 1,574 | 3/14/2016 |
2.0.0-beta-509 | 1,722 | 3/13/2016 |
2.0.0-beta-507 | 1,673 | 3/1/2016 |
2.0.0-beta-505 | 1,929 | 2/25/2016 |
2.0.0-beta-502 | 1,789 | 2/22/2016 |
2.0.0-beta-499 | 1,866 | 2/21/2016 |
2.0.0-beta-495 | 1,667 | 2/19/2016 |