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和Polyglot Notebooks中使用。将其复制到交互式工具或脚本的源代码中以引用包。
// 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

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

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)

显示依赖Serilog.Sinks.Map的前5个最受欢迎的GitHub仓库

仓库 星标
spectreconsole/spectre.console
一个.NET库,使创建美观的控制台应用程序变得更容易。
umbraco/Umbraco-CMS
Umbraco是一款免费的开源.NET内容管理系统,帮助您提供愉悦的数字体验。
GitTools/GitVersion
从git log到SemVer立等片刻
microsoft/sbom-tool
SBOM工具是一个高度可扩展的、适用于企业的工具,可创建适用于各种类型的 artifact 的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