From 64e7338b4e32210a3f19dee6ee2ab4d91be4a5eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Pilgaard=20Gr=C3=B8ndahl?= Date: Mon, 1 Apr 2024 20:49:48 +0200 Subject: [PATCH] only write to elmah and loki in prod --- .../SerilogExtensions.cs | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/shared/Jordnaer.Shared.Infrastructure/SerilogExtensions.cs b/src/shared/Jordnaer.Shared.Infrastructure/SerilogExtensions.cs index 95e1047c..ed55548d 100644 --- a/src/shared/Jordnaer.Shared.Infrastructure/SerilogExtensions.cs +++ b/src/shared/Jordnaer.Shared.Infrastructure/SerilogExtensions.cs @@ -1,5 +1,6 @@ using System.ComponentModel.DataAnnotations; using Microsoft.AspNetCore.Builder; +using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Options; @@ -36,8 +37,11 @@ public static WebApplicationBuilder AddSerilog(this WebApplicationBuilder builde loggerConfiguration.WriteTo.Console(outputTemplate: "[{Timestamp:HH:mm:ss}] [{Level}] {SourceContext}: {Message:lj}{NewLine}{Exception}"); - loggerConfiguration.WriteToLoki(provider); - loggerConfiguration.WriteToElmahIo(provider); + if (context.HostingEnvironment.IsDevelopment() is false) + { + loggerConfiguration.WriteToLoki(provider); + loggerConfiguration.WriteToElmahIo(provider); + } }); return builder; @@ -67,18 +71,16 @@ private static void WriteToLoki(this LoggerConfiguration loggerConfiguration, IServiceProvider provider) { var grafanaLokiOptions = provider.GetRequiredService>().Value; - + var configuration = provider.GetRequiredService(); var labels = new LokiLabel[] { - new() - { - Key = "environment_machine_name", - Value = Environment.MachineName - }, new() { Key = "environment", - Value = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT") ?? "Not Configured" + Value = configuration["ENVIRONMENT"] ?? + configuration["ASPNETCORE_ENVIRONMENT"] ?? + configuration["DOTNET_ENVIRONMENT"] ?? + "Not Configured" } };