Serilog.Sinks.Map 2.0.0

前缀已保留
dotnet add package Serilog.Sinks.Map --version 2.0.0                
NuGet\Install-Package Serilog.Sinks.Map -Version 2.0.0                
此命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用的是 NuGet 模块版本的 Install-Package
<PackageReference Include="Serilog.Sinks.Map" Version="2.0.0" />                
对于支持 PackageReference 的项目,请将此 XML 节复制到项目文件中以引用包。
paket add Serilog.Sinks.Map --version 2.0.0                
#r "nuget: Serilog.Sinks.Map, 2.0.0"                
#r 指令可用于 F# Interactive 和多语言笔记本。将其复制到交互式工具或脚本的源代码中以引用包。
// Install Serilog.Sinks.Map as a Cake Addin
#addin nuget:?package=Serilog.Sinks.Map&version=2.0.0

// Install Serilog.Sinks.Map as a Cake Tool
#tool nuget:?package=Serilog.Sinks.Map&version=2.0.0                

Serilog.Sinks.Map 构建状态 NuGet 预发布

基于属性值分派事件的 Serilog 沉管包装器。

入门

从 NuGet 安装包

dotnet add package Serilog.Sinks.Map

WriteTo.Map() 方法接受一个用于作为输出选择器的属性名、当属性未附加时的默认值以及一个根据每个属性值配置输出器的函数。

例如,当使用 Serilog.Sinks.File

dotnet add package Serilog.Sinks.File

可以将日志事件属性(如 Name)的值插入到日志文件名中

Log.Logger = new LoggerConfiguration()
    .WriteTo.Map("Name", "Other", (name, wt) => wt.File($"./logs/log-{name}.txt"))
    .CreateLogger();

Log.Information("Hello, {Name}!", "Alice");
// -> Event written to log-Alice.txt

Log.Information("Hello, {Name}!", "Bob");
// -> Event written to log-Bob.txt

Log.Information("Shutting down");
// -> Event written to log-Other.txt

Log.CloseAndFlush();

限制打开的输出器的数量

默认情况下,此输出器打开的目标输出器将不会关闭/丢弃,直到映射的输出器关闭。这对于将数据分发到有限数量的输出器(例如按日志级别分割文件等)来说是有效的,但不适用于可能的关键值集是开集的情况。

要限制映射中保持打开的目标输出器的数量,请指定 sinkMapCountLimit

    .WriteTo.Map("Name",
                 "Other",
                 (name, wt) => wt.File($"./logs/log-{name}.txt"),
                 sinkMapCountLimit: 10)

要关闭所有输出器(即在处理完每个事件后立即关闭),可以指定一个 sinkMapCountLimit 为零。

使用 <appSettings>appSettings.json 进行配置

Serilog.Sinks.Map 围绕一个映射函数构建,因此无法使用 XML 或 JSON 配置。

产品 兼容和额外的计算得到的框架版本。
.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标准 netstandard2.0 兼容。 netstandard2.1 已计算。
.NET框架 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 已计算。
兼容目标框架
包含的目标框架(在包中)
了解更多关于 目标框架.NET标准

NuGet包 (24)

显示依赖于Serilog.Sinks.Map的前5个NuGet包

下载
Umbraco.Cms.Infrastructure

包含运行Umbraco CMS所需的必要的基础设施组件。

UmbracoCms.Core

包含运行Umbraco CMS所需的必要的核心组件。此包仅包含组件,可用于包的开发。使用UmbracoCms包在Visual Studio中将Umbraco设置为ASP.NET项目。

HwApp.Serilog

HwApp Serilog通用和默认设置

YYApp.Serilog

YYApp Serilog通用和默认设置

Sukt.SeriLog

包描述

GitHub仓库 (12)

显示最流行的5个依靠Serilog.Sinks.Map的GitHub仓库

仓库 星标
spectreconsole/spectre.console
一个.NET库,简化了创建美观的控制台应用程序。
umbraco/Umbraco-CMS
Umbraco是一个免费开源的.NET内容管理系统,帮助您提供愉悦的数字体验。
GitTools/GitVersion
从git日志到SemVer仅需几秒钟
microsoft/sbom-tool
SBOM工具是一个高度可扩展的企业级工具,可创建兼容SPDX 2.2的SBOM,适用于各种类型的工件。
smartstore/Smartstore
一个基于ASP.NET Core 7的模块化、可扩展、超快速的开放源码全功能电子商务平台。
版本 下载 最后更新
2.0.0 13,267 7/11/2024
2.0.0-dev-00048 63 7/10/2024
1.0.2 7,892,405 12/1/2020
1.0.2-dev-00040 350 12/1/2020
1.0.2-dev-00031 1,084 4/17/2020
1.0.1 317,098 2/19/2020
1.0.1-dev-00028 453 2/13/2020
1.0.1-dev-00025 4,652 5/2/2019
1.0.0 1,108,373 4/21/2019
1.0.0-dev-00020 620 4/21/2019
1.0.0-dev-00017 20,256 9/23/2018
1.0.0-dev-00012 4,534 10/28/2017
1.0.0-dev-00008 841 10/26/2017
1.0.0-dev-00006 811 10/26/2017
1.0.0-dev-00004 840 10/24/2017
1.0.0-dev-00001 1,024 6/6/2017