serilog 相关问题

Serilog为文件,控制台等提供诊断日志记录。它易于设置,具有干净的API,并且可以在最近的.NET平台之间移植。

使用后台服务日志的 Serilog .NET 8 Windows 服务(工作线程)未找到

我的目标是使用 Serilog 使用 .NET 8 Worker 模板在 Windows 服务中进行文件日志记录。 我可以看到控制台日志。我只是找不到日志文件。 应用程序设置.json { “Serilog”...

回答 1 投票 0

JSON 字符串应记录为结构化数据,而不仅仅是字符串

我希望 JSON 字符串应记录为结构化数据,而不仅仅是字符串。 像这样 var data = "{\"key1\": \"value1\", \"key2\": \"value2\"...

回答 1 投票 0

在 C# 控制台应用程序上使用 Serilog 进行日志记录时无输出

这是MyLoggerFactory.cs 使用系统; 使用 Microsoft.Extensions.Configuration; 使用系统.IO; 使用 Microsoft.Extensions.Logging; 使用 ILogger = Microsoft.Extensions.Logging.ILogger; 使用

回答 1 投票 0

从 Elastic Common Schema 日志中删除不必要的对象

我正在使用 Serilog 和 Elastic.CommonSchema.Serilog 来获取带有 JSON 格式的 ECS 字段的控制台日志。 我不需要在输出中包含诸如主机、进程之类的对象。我怎样才能删除它们? CN...

回答 1 投票 0

无服务器可用时的 Serilog 和 seq

当使用 Serilog 和 Seq 的应用程序找不到将日志发送到的服务器时,预期的行为是什么?每次尝试记录都会抛出异常吗? 我希望我的应用程序使用 Seq

回答 3 投票 0

为 Serilog 自定义 JSON 日志发送格式

我在我的asp.net应用程序中使用serilog,配置如下: 配置: builder.Host.UseSerilog((上下文,loggerConfiguration) => { 记录器配置 .Enrich.FromLogContex...

回答 1 投票 0

.net 的 Serilog JSON 格式化程序

我在我的asp.net应用程序中使用serilog,配置如下: 配置: builder.Host.UseSerilog((上下文,loggerConfiguration) => { 记录器配置 .Enrich.FromLogContex...

回答 1 投票 0

如何配置从 appsettings.json 读取异步 Serilog

我的 ASPCoreNet 项目中有以下内容: 应用程序设置.json: { “串行日志”:{ “最低级别”:{ “默认”:“信息”, “覆盖&q...

回答 1 投票 0

在.NET 7和Serilog中配置日志级别

尝试弄清楚如何在 Microsoft Ilogger 抽象下使用 Serilog。后者读取 appsetting.json 中“Logger”部分下的日志级别设置,而 Serilog 读取日志文件...

回答 1 投票 0

使用自定义目标将所有 NLog 输出重定向到 Serilog

作为从 NLog 切换到 Serilog 的一个步骤,我想重定向 NLog 的 LogManager.GetLogger(name) 标准调用的标准接线,以桥接任何代码日志记录到 NLog 进行转发

回答 1 投票 0

使用原始字段名称的serilog JSON格式

从3.1.0版本开始,引入了TraceId和SpanId,现在以JSON格式编写为@tr和@sp。如何在不使用缩写的情况下直接使用 TraceId 和 SpanId?怎么...

回答 1 投票 0

请求完成后如何记录 HttpContext 属性

我有控制器、后台任务和丰富器来丰富 HttpContext 的一些属性(例如 userAgent 标头)。我正在使用 .net6、Serilog 3.1.1 并通过 ILogger 界面进行日志记录。 [呼……

回答 1 投票 0

.NET中如何避免日志写入相对路径

我正在使用 Serilog 来写入日志,这就是我的配置: Log.Logger = new LoggerConfiguration() .MinimumLevel.Verbose() .Enrich.FromLogContext() .写入...

回答 1 投票 0

Serilog 结构化数据无法在使用 C# / .NET 的 Google Cloud 函数中工作

我们使用 Serilog(封装在 .NET ILogger 中)在使用 .NET Core 编写的 Google Cloud 函数以及 Google Cloud 中 Kubernetes 容器中的 ASP.NET Core API 中执行日志记录。

回答 1 投票 0

如何在 serilog 中覆盖泛型类型的日志级别

我有 ASP.NET WebApi 应用程序和 apgeneric 类,如下所示: 命名空间 MyNamespace; 公共类 MyService { 私有只读 ILogger> 记录器; 公开

回答 1 投票 0

Serilog 全局范围

背景: 我使用 Serilog 作为 Microsoft.Extensions.Logging 的“后端”。 我有一个 T 类通过 DI 接收 ILogger。 T 在多个异步方法中执行各种活动...

回答 1 投票 0

Azure Functions v4 中的 Serilog 控制台主题

我正在将 Azure Functions v4 与 .NET8.0 和 Serilog 与以下包一起使用 我正在将 Azure Functions v4 与 .NET8.0 和 Serilog 与以下软件包一起使用 <PackageReference Include="Serilog" Version="3.1.1" /> <PackageReference Include="Serilog.Extensions.Logging" Version="8.0.0" /> <PackageReference Include="Serilog.Sinks.ApplicationInsights" Version="4.0.0" /> <PackageReference Include="Serilog.Sinks.Console" Version="5.0.1" /> 目前我在控制台中的输出如下所示: 我正在像这样设置登录Program.cs var logger = new LoggerConfiguration() .Enrich.FromLogContext() .WriteTo.ApplicationInsights( TelemetryConfiguration.CreateDefault(), TelemetryConverter.Events, LogEventLevel.Information) .MinimumLevel.Debug() .WriteTo.Console(theme: SystemConsoleTheme.Literate) .CreateLogger(); services.AddLogging(configure => configure.AddSerilog(logger, true)); 并在 Azure 函数端点中将其与 ILogger 一起使用。 从ASP.NET core我习惯了这样的控制台颜色,其中每种数据类型的颜色都不同,例如string,int,DateTime等: 如何获得第二张图中的 Serilog 控制台颜色? 在设置中设置 theme: SystemConsoleTheme.Literate 似乎还不够。 附加:由于我从 Serilog 中的每个日志中获取时间戳,因此如何删除像第一张图片中那样的长灰色时间戳。 根据与您的同一查询的Github评论,无法更改Azure Function Runtime附带的默认日志记录的颜色。此外,当您在 Visual Studio 或 Visual Studio Code 中触发函数时,函数是通过 Azure Function Core 工具命令行触发的,因此它采用后端 Azure Function SDK 中设置的默认日志记录。 我尝试实现 Serilog 并使用 Colorful.Console 包来更改响应的输出,但功能触发命令行终端无法读取它。 与 Colorful.Console:- 我的Function1.cs代码:- using Microsoft.Azure.Functions.Worker.Http; using Microsoft.Azure.Functions.Worker; using Microsoft.Extensions.Logging; using System.Net; using Console = Colorful.Console; using Colorful; using System.Drawing; public class Function1 { private readonly ILogger _logger; public Function1(ILoggerFactory loggerFactory) { _logger = loggerFactory.CreateLogger<Function1>(); } [Function("Function1")] public HttpResponseData Run([HttpTrigger(AuthorizationLevel.Function, "get", "post")] HttpRequestData req) { ColorfulConsoleLog("C# HTTP trigger function processed a request."); var response = req.CreateResponse(HttpStatusCode.OK); response.Headers.Add("Content-Type", "text/plain; charset=utf-8"); response.WriteString("Welcome to Azure Functions!"); return response; } private void ColorfulConsoleLog(string message) { var styleSheet = new StyleSheet(Color.AntiqueWhite); Console.WriteLineStyled(message, styleSheet); } } 输出:- 与Serilog:- 我的Function1.cs代码:- using Microsoft.Azure.Functions.Worker.Http; using Microsoft.Azure.Functions.Worker; using Microsoft.Extensions.Logging; using Serilog; using Serilog.Events; using Serilog.Formatting.Compact; using System.Net; public class Function1 { private readonly Microsoft.Extensions.Logging.ILogger _logger; public Function1(ILoggerFactory loggerFactory) { Log.Logger = new LoggerConfiguration() .MinimumLevel.Debug() .MinimumLevel.Override("Microsoft", LogEventLevel.Information) .WriteTo.Console(outputTemplate: "[{Timestamp:HH:mm:ss} {Level:u3}] {Message:lj} <sgr color=\"1\">{Properties:j}</sgr>{NewLine}{Exception}") .CreateLogger(); _logger = loggerFactory.CreateLogger<Function1>(); } [Function("Function1")] public HttpResponseData Run([HttpTrigger(AuthorizationLevel.Function, "get", "post")] HttpRequestData req) { _logger.LogInformation("C# HTTP trigger function processed a request."); var response = req.CreateResponse(HttpStatusCode.OK); response.Headers.Add("Content-Type", "text/plain; charset=utf-8"); response.WriteString("Welcome to Azure Functions!"); return response; } } 输出:- 代码中默认设置的 Azure CLI 颜色此处我也尝试了此Github问题中的建议,但即使我更改了代码中的控制台颜色,功能核心工具输出日志颜色也是默认的:- 我的 Function1.cs:- using Microsoft.Azure.Functions.Worker.Http; using Microsoft.Azure.Functions.Worker; using Microsoft.Extensions.Logging; using static Colors.Net.StringStaticMethods; using System.Net; using System.Drawing; using Colors.Net; // Import the required namespace namespace FunctionApp82 { public class Function1 { private readonly ILogger _logger; public Function1(ILoggerFactory loggerFactory) { _logger = loggerFactory.CreateLogger<Function1>(); } [Function("Function1")] public HttpResponseData Run([HttpTrigger(AuthorizationLevel.Function, "get", "post")] HttpRequestData req) { ConsoleColor yellow = ConsoleColor.Yellow; var logMessage = "C# HTTP trigger function processed a request."; _logger.LogInformation((logMessage)); Colors.Net.ColoredConsole.WriteLine(logMessage); Colorful.Console.WriteLine(logMessage, Color.DarkGreen); ColoredConsole.WriteLine(White(logMessage + "\n")); Colorful.Console.WriteLine(logMessage, true); var response = req.CreateResponse(HttpStatusCode.OK); response.Headers.Add("Content-Type", "text/plain; charset=utf-8"); response.WriteString("Welcome to Azure Functions!"); return response; } } } 输出:-

回答 1 投票 0

如何将过滤器与 Serilog.Sinks.EventLog 一起使用

我真的不确定我错过了什么。 Serilog.Sinks.EventLog 的过滤根本不起作用。无论我在过滤器配置中尝试什么,所有内容都会被记录下来。我使用了旧语法,...

回答 1 投票 0

Serilog 未记录到文件

我正在尝试在 .NET Core 6 项目中记录有关 API 请求的错误和信息。在我的 Program.cs 文件中进行设置后,它确实将日志条目输出到所需位置。下面是我的

回答 1 投票 0

Serilog - 在错误时记录请求正文中的特定属性

我尝试了以下答案: https://stackoverflow.com/a/68493795/897326 即这个: options.EnrichDiagnosticContext = (diagnosticContext, httpContext) => { // 字符串主体=你的lo...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.