serilog 相关问题

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

无法使用 Serilog 将日志写入控制器中的 Azure Application Insights

我有一个 .net6 Web API,我正在尝试将日志写入 Azure 应用程序见解。当我尝试在 Program.cs 中编写时它起作用了。但是当我试图在 Controller 动作中写入时它并没有写入......

回答 2 投票 0

日志未写入 Azure Application Insights

我正在使用 3.4.0 版本的 Serilog.Settings.Configuration 和 Serilog.Sinks.ApplicationInsights 版本:4.0.0 下面是我的 appsettings.json。 “系列”:{ “使用”: [ ...

回答 1 投票 0

如何通过 Serilog 限制 EF Core 命令文本记录

使用 Serilog 进行 EFCore 日志记录时如何限制 commandText 大小? (和 Serilog MS 日志扩展。)

回答 1 投票 0

WCF 服务器记录客户端操作(Devexpress、XPO、serilog)

我有 XPO 的 WCF 服务,我想建立一个统一的日志系统来记录所有事件。我们正在使用工作单元的会话实例,我们正在使用 .NET 和 Winform。日志数据示例:服务...

回答 0 投票 0

如何在Serilog中配置一个程序的多个实例写入不同的日志文件?

我有一个 Core 7 应用程序,它使用 Serilog 和 Serilog.Sink.Files 写入滚动日志文件。我的问题是我想运行这个应用程序的两个实例,我怎样才能让这两个实例...

回答 0 投票 0

带有版本控制的 Serilog 文件路径

我对 API 版本控制还很陌生。我正在使用 ASP.NET 6.0 和 Serilog 写入日志文件。 现在我已经实现了版本控制,我想让应用程序的 v1.0 写入“Logs/V1.0/logfile....

回答 0 投票 0

如何配置 serilog 以在非 ASP Core 项目的类库中使用?

我有一个库,我想在其中使用日志记录,因此在构造函数中,我传递了一个 Microsoft.Extensions.Logging.ILogger 参数。 我的库的使用者不是 ASP Core 项目,我...

回答 0 投票 0

读取当前 Serilog 的配置

Serilog 中是否有我可以(以编程方式)检查当前配置的属性/方法? (水槽,最低水平) 例如如果有这个配置: Log.Logger = 新的 LoggerConfiguration() ...

回答 2 投票 0

如何在代码中将 Azure 存储连接字符串传递给 Serilog,同时从 appSettings.json 读取其他设置?

我的 appsettings.json 看起来像这样: “系列”:{ “使用”:[“Serilog.Sinks.Console”,“Serilog.Sinks.AzureBlobStorage”], “最低级别”:{...

回答 1 投票 0

从 Serilog appsettings.json 禁用 Http 请求跟踪

我正在 Azure 上开发 .netcore6 Web 应用程序,使用 Serilog 和 Serilog AzureInsights Sink 作为核心调试机制。我想禁用默认情况下发送到 Azure Insights 的 HttpRequest 日志记录...

回答 0 投票 0

Serilog 通过 ASP.NET Web API 将日志从 Unity(或任何应用程序)转发到 Elasticsearch 实例

我想将日志从 Unity 应用程序发送到 Elasticsearch。然而,Serilog.Sinks.Elasticsearch 在统一内部运行似乎很复杂(如果可能的话)。可能的解决方案是拥有一个 ASP.NET We...

回答 1 投票 0

Serilog 中时间跨度的自定义格式

我正在尝试使用 Serilog 记录一些指标,以监控后台进程的运行情况。一些指标是 TimeSpans,它跟踪运行的总时间、每次迭代的时间、e...

回答 1 投票 0

Serilog 如何将 SignalR 的跟踪日志写入日志文件?

我有以下代码来启用 SignalR 调用的记录跟踪日志。但是,代码不起作用? 使用 Microsoft.Extensions.Logging; 使用 SeriLog; var seriLoglogger = new LoggerConfigurat...

回答 1 投票 0

Serilog 和 AWS cloudwatch 的问题

我决定将 AWS cloudwatch 登录添加到我的应用程序中,但似乎有问题。有很多网站描述了如何将 Serilog 接收器添加到 AWS 云手表,我使用了 2 种不同的

回答 0 投票 0

SeriLog 记录到 Cassandra 数据库

使用.NET 6 SeriLog,是否可以登录到Cassandra DB?我知道有一个 MSSQL Server Sink,但没有找到使用 Cassandra 的方法。 var logger = new LoggerConfiguration()...

回答 1 投票 0

Serilog 记录器在每个端点调用时冻结

怎么了? 执行请求时发生未处理的异常。 System.InvalidOperationException:记录器已被冻结。 在 Serilog.Extensions.Hosting.ReloadableLogger.

回答 1 投票 0

Serilog Graylog无法登录Graylog

我是 graylog 的新手。我无法登录 graylog。当我搜索消息时,我寻找 source:xxx-yyy 或只是一个关键字 test9999,寻找所有最新的日志,我的消息不在那里。什么...

回答 2 投票 0

将 Serilog LogContext 添加到每个日志调用

有没有一种方法可以将 LogContext 调用“注入”到项目中的所有 Serilog 日志调用中? 我想添加一个 ExecutionContext 属性,它只是一个在共享类中生成的十六进制字符串

回答 1 投票 0

带有 Azure 表存储的 Serilog .NET

我听说 Serilog 很棒,我想在我的 .NET Core API 中使用它。 由于 Azure Table Storage 的成本低,它是我首选的“数据库”。我看到 Serilog 有一个水槽

回答 1 投票 0

如何使用 Azure Functions v4 正确设置 Serilog?

我想在 Azure Function v4 (.net 6) 中使用 Serilog(日志应该发送到 Datadog)。为此,我安装了以下 nuget 包: 我想在 Azure Function v4 (.net 6) 中使用 Serilog(日志应该发送到 Datadog)。为此,我安装了以下 nuget 包: <PackageReference Include="Serilog" Version="2.10.0" /> <PackageReference Include="Serilog.Extensions.Logging" Version="3.1.0" /> <PackageReference Include="Serilog.Formatting.Compact" Version="1.1.0" /> <PackageReference Include="Serilog.Sinks.Console" Version="4.0.1" /> <PackageReference Include="Serilog.Sinks.Datadog.Logs" Version="0.3.5" /> 下面是Startup.cs类中的配置: public override void Configure(IFunctionsHostBuilder builder) { builder.Services.AddHttpClient(); //... adding services etc. Log.Logger = new LoggerConfiguration() .MinimumLevel.Override("Microsoft", LogEventLevel.Warning) .MinimumLevel.Override("Worker", LogEventLevel.Warning) .MinimumLevel.Override("Host", LogEventLevel.Warning) .MinimumLevel.Override("System", LogEventLevel.Error) .MinimumLevel.Override("Function", LogEventLevel.Error) .MinimumLevel.Override("Azure.Storage.Blobs", LogEventLevel.Error) .MinimumLevel.Override("Azure.Core", LogEventLevel.Error) .Enrich.WithProperty("Application", "Comatic.KrediScan.AzureFunctions") .Enrich.FromLogContext() .WriteTo.DatadogLogs("XXXXXXXXXXX", configuration: new DatadogConfiguration() { Url = "https://http-intake.logs.datadoghq.eu" }, logLevel: LogEventLevel.Debug) .WriteTo.Console() .CreateLogger(); builder.Services.AddSingleton<ILoggerProvider>(sp => new SerilogLoggerProvider(Log.Logger, true)); builder.Services.AddLogging(lb => { //lb.ClearProviders(); //--> if used nothing works... lb.AddSerilog(Log.Logger, true); }); 基本上日志记录工作,但所有日志语句都写了两次(有几毫秒的差异,Datadog 和控制台)。 很明显我在配置上做了一些根本性的错误。我不使用 appsettings.json,Serilog 的配置只在代码中进行。我搜索了整个互联网并阅读了几乎所有关于 Serilog 和 Azure Functions 的文章。在 Stackoverflow 上,我几乎还阅读了所有关于它的问题并尝试了所有答案。不幸的是,到目前为止没有成功。 SO-问题例如: 将 Serilog 与 Azure 日志流结合使用 如何将 Serilog 与 Azure WebJobs 一起使用? Serilog enricher Dependency Injection with Azure Functions https://github.com/hgmauri/sample-azure-functions/blob/main/src/Sample.AzureFunctions.DotNet31/Startup.cs 是否有使用 Azure Functions v4 / .net 6 设置 Serilog 的示例? 非常感谢您的帮助! 迈克尔哈臣 知道了!在用 ILogger 替换所有 ILogger<T> 并删除线 builder.Services.AddSingleton<ILoggerProvider>(sp => new SerilogLoggerProvider(Log.Logger, true)); 后,一切都按预期工作。 对于那些因为无法使用 app insights sink 正确配置登录 azure 功能而来到这里的人,这对我有用: private static void ConfigureLogging(IServiceCollection services) { Log.Logger = new LoggerConfiguration() .MinimumLevel.Information() .MinimumLevel.Override("Microsoft", LogEventLevel.Warning) .MinimumLevel.Override("System", LogEventLevel.Warning) .MinimumLevel.Override("Worker", LogEventLevel.Warning) .MinimumLevel.Override("Host", LogEventLevel.Warning) .MinimumLevel.Override("Function", LogEventLevel.Warning) .MinimumLevel.Override("Azure", LogEventLevel.Warning) .MinimumLevel.Override("DurableTask", LogEventLevel.Warning) .Enrich.FromLogContext() .Enrich.WithExceptionDetails() .WriteTo.ApplicationInsights( TelemetryConfiguration.CreateDefault(), TelemetryConverter.Events, LogEventLevel.Information) .CreateLogger(); services.AddLogging(configure => configure.AddSerilog(Log.Logger)); } 在撰写本文时此处的示例似乎不起作用。 日志记录范围不会在输出中捕获。 Serilog 版本:2.11.0 Serilog.Sinks.ApplicationInsights 版本:4.0.0 未来的链接示例: [assembly: FunctionsStartup(typeof(MyFunctions.Startup))] namespace MyFunctions { public class Startup : FunctionsStartup { public override void Configure(IFunctionsHostBuilder builder) { builder.Services.AddSingleton<ILoggerProvider>((sp) => { Log.Logger = new LoggerConfiguration() .Enrich.FromLogContext() .WriteTo.ApplicationInsights(sp.GetRequiredService<TelemetryClient>(), TelemetryConverter.Traces) .CreateLogger(); return new SerilogLoggerProvider(Log.Logger, true); }); } } } 要设置Serilog.ILogger而不是ILogger<T>,您可以将Serilog添加为Singletonbuilder.AddSingleton<ILogger>(Log.Logger);而不是services.AddLogging(configure => configure.AddSerilog(Log.Logger));,然后在函数中从Serilog注入ILogger而不是ILoggerFactory并记录为_logger.Information("awesome log"); 我在 .net7 中运行隔离函数

回答 3 投票 0

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.