From 8023a855b9a211c7234b168506528c8c4408106e Mon Sep 17 00:00:00 2001 From: Victor Vogelpoel Date: Wed, 26 Jan 2022 11:43:01 +0100 Subject: [PATCH 1/7] build: update copyright year to 2022 --- Directory.Build.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Build.props b/Directory.Build.props index a9cee1e..79ded11 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -2,7 +2,7 @@ Victor Vogelpoel Dramatic Development - Copyright (c) 2021 Dramatic Development - Victor Vogelpoel + Copyright (c) 2022 Dramatic Development - Victor Vogelpoel $([System.DateTime]::Now.ToString("yyyy.MM.dd.HHmm")) \ No newline at end of file From 3d6cc4c5663cb805dea91223feddda91013b4833 Mon Sep 17 00:00:00 2001 From: Victor Vogelpoel Date: Wed, 26 Jan 2022 11:43:29 +0100 Subject: [PATCH 2/7] build: update version to 0.3 and copyright year to 2022 --- samples/SampleVaultApplication/Properties/AssemblyInfo.cs | 2 +- samples/SampleVaultApplication/appdef.xml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/SampleVaultApplication/Properties/AssemblyInfo.cs b/samples/SampleVaultApplication/Properties/AssemblyInfo.cs index 7d468eb..0661660 100644 --- a/samples/SampleVaultApplication/Properties/AssemblyInfo.cs +++ b/samples/SampleVaultApplication/Properties/AssemblyInfo.cs @@ -28,7 +28,7 @@ [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Dramatic Development - Victor Vogelpoel")] [assembly: AssemblyProduct("SampleVaultApplication")] -[assembly: AssemblyCopyright("Copyright © 2021 Dramatic Development - Victor Vogelpoel")] +[assembly: AssemblyCopyright("Copyright © 2022 Dramatic Development - Victor Vogelpoel")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] diff --git a/samples/SampleVaultApplication/appdef.xml b/samples/SampleVaultApplication/appdef.xml index a8a7ee5..f4e2979 100644 --- a/samples/SampleVaultApplication/appdef.xml +++ b/samples/SampleVaultApplication/appdef.xml @@ -7,8 +7,8 @@ MFilesSysUtilsEventLog Sample sink SampleVaultApplication Sample Vault Application for demonstrating Serilog logging using the Serilog.Sinks.MFilesSysUtilsEventLog Dramatic Development - 0.2 - Copyright 2021 Dramatic Development + 0.3 + Copyright 2022 Dramatic Development 20.5.0.0 false From a1a4ba5e728d4da21f16d770d690aea75e469282 Mon Sep 17 00:00:00 2001 From: Victor Vogelpoel Date: Wed, 26 Jan 2022 11:45:28 +0100 Subject: [PATCH 3/7] build(deps): update nuget MFiles.VAF from 2.3.623.3 to 2.3.623.6 --- samples/SampleVaultApplication/SampleVaultApplication.csproj | 2 +- .../Serilog.Sinks.MFilesSysUtilsEventLog.csproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/samples/SampleVaultApplication/SampleVaultApplication.csproj b/samples/SampleVaultApplication/SampleVaultApplication.csproj index d8d9bd8..17635bf 100644 --- a/samples/SampleVaultApplication/SampleVaultApplication.csproj +++ b/samples/SampleVaultApplication/SampleVaultApplication.csproj @@ -68,7 +68,7 @@ - 2.3.623.2 + 2.3.623.6 1.5.0.235 diff --git a/src/Serilog.Sinks.MFilesSysUtilsEventLog/Serilog.Sinks.MFilesSysUtilsEventLog.csproj b/src/Serilog.Sinks.MFilesSysUtilsEventLog/Serilog.Sinks.MFilesSysUtilsEventLog.csproj index 5878dc7..13499ca 100644 --- a/src/Serilog.Sinks.MFilesSysUtilsEventLog/Serilog.Sinks.MFilesSysUtilsEventLog.csproj +++ b/src/Serilog.Sinks.MFilesSysUtilsEventLog/Serilog.Sinks.MFilesSysUtilsEventLog.csproj @@ -29,7 +29,7 @@ Aligning versioning to Vault Application Framework. - + From 31b434512284f3aee8f444b55577e3ac88de6896 Mon Sep 17 00:00:00 2001 From: Victor Vogelpoel Date: Wed, 26 Jan 2022 11:47:11 +0100 Subject: [PATCH 4/7] feat: fix OnConfigurationUpdated and add Now using a separate logger to log the change to the configuration level. This way, the log change message gets outputted regardless of logging level. See it as "system" logging vs business logging. --- .../SampleVaultApplication/VaultApplication.cs | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/samples/SampleVaultApplication/VaultApplication.cs b/samples/SampleVaultApplication/VaultApplication.cs index 1acbcb0..6834bd8 100644 --- a/samples/SampleVaultApplication/VaultApplication.cs +++ b/samples/SampleVaultApplication/VaultApplication.cs @@ -93,21 +93,27 @@ private void ConfigureLoggingLevelSwitch(string logLevel) /// /// Update the Serilog loggingLevelSwitch, when the LogLevel configuration for the Vault Application is changed in M-Files Admin. /// - /// - /// - /// - protected override void OnConfigurationUpdated(IConfigurationRequestContext context, ClientOperations clientOps, Configuration oldConfiguration) + /// old vaultapp configuration + /// + protected override void OnConfigurationUpdated(Configuration oldConfiguration, bool updateExternals) { if (oldConfiguration.LogLevel != Configuration.LogLevel) { ConfigureLoggingLevelSwitch(Configuration.LogLevel); + + // Use separate logger to log the configuration level change, regardless of the old logging level. + var configLogger = new LoggerConfiguration() + .WriteTo.MFilesSysUtilsEventLogSink() + .WriteTo.MFilesSysUtilsEventLogSink(formatter: new RenderedCompactJsonFormatter ()) + .CreateLogger(); + + configLogger.Information("Log level changed to {LogLevel} bij an administrator", Configuration.LogLevel); } - Log.Information("Log level changed to {LogLevel}", Configuration.LogLevel); + base.OnConfigurationUpdated(oldConfiguration, updateExternals); } - /// /// Sample Event that fired upon checkin of a Builtin Document object type. /// It logs the event using Serilog. From e88f518be4146a16d37fc4df77342007c7326182 Mon Sep 17 00:00:00 2001 From: Victor Vogelpoel Date: Wed, 26 Jan 2022 11:47:43 +0100 Subject: [PATCH 5/7] build: update version to 2.3.623.6, release notes and copyright year --- .../Serilog.Sinks.MFilesSysUtilsEventLog.csproj | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Serilog.Sinks.MFilesSysUtilsEventLog/Serilog.Sinks.MFilesSysUtilsEventLog.csproj b/src/Serilog.Sinks.MFilesSysUtilsEventLog/Serilog.Sinks.MFilesSysUtilsEventLog.csproj index 13499ca..671592f 100644 --- a/src/Serilog.Sinks.MFilesSysUtilsEventLog/Serilog.Sinks.MFilesSysUtilsEventLog.csproj +++ b/src/Serilog.Sinks.MFilesSysUtilsEventLog/Serilog.Sinks.MFilesSysUtilsEventLog.csproj @@ -12,12 +12,12 @@ https://github.com/serilog-contrib/Serilog.Sinks.MFilesSysUtilsEventLog https://github.com/serilog-contrib/Serilog.Sinks.MFilesSysUtilsEventLog git - 2.3.623.2 - Updating reference to Vault Application Framework nuget version 2.3.623.2. -Aligning versioning to Vault Application Framework. - 2.3.623.2 + 2.3.623.6 + Updating reference to Vault Application Framework nuget version 2.3.623.6. + 2.3.623.6 true Serilog.Sinks.MFilesSysUtilsEventLog.snk + Copyright (c) 2022 Dramatic Development - Victor Vogelpoel From 0de5c9cf636c82e09de5f99e81a08c0314ef17f3 Mon Sep 17 00:00:00 2001 From: Victor Vogelpoel Date: Wed, 26 Jan 2022 11:48:08 +0100 Subject: [PATCH 6/7] build: bump file version (build timestamp) --- samples/SampleVaultApplication/Properties/FileVersionInfo.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/SampleVaultApplication/Properties/FileVersionInfo.cs b/samples/SampleVaultApplication/Properties/FileVersionInfo.cs index 40c5140..ae638c4 100644 --- a/samples/SampleVaultApplication/Properties/FileVersionInfo.cs +++ b/samples/SampleVaultApplication/Properties/FileVersionInfo.cs @@ -1 +1 @@ -[assembly:System.Reflection.AssemblyFileVersion("2021.06.11.1741")] +[assembly:System.Reflection.AssemblyFileVersion("2022.01.26.1141")] From 3d8510f7d9954febb62a55f3ece3ccca607d5089 Mon Sep 17 00:00:00 2001 From: Victor Vogelpoel Date: Wed, 26 Jan 2022 11:49:02 +0100 Subject: [PATCH 7/7] build: archive package version 2.3.623.6 --- ...ks.MFilesSysUtilsEventLog.2.3.623.6.nupkg} | Bin 26734 -> 26715 bytes 1 file changed, 0 insertions(+), 0 deletions(-) rename current/{Serilog.Sinks.MFilesSysUtilsEventLog.1.1.1.nupkg => Serilog.Sinks.MFilesSysUtilsEventLog.2.3.623.6.nupkg} (77%) diff --git a/current/Serilog.Sinks.MFilesSysUtilsEventLog.1.1.1.nupkg b/current/Serilog.Sinks.MFilesSysUtilsEventLog.2.3.623.6.nupkg similarity index 77% rename from current/Serilog.Sinks.MFilesSysUtilsEventLog.1.1.1.nupkg rename to current/Serilog.Sinks.MFilesSysUtilsEventLog.2.3.623.6.nupkg index 032e0728fce7b54f7fe5445b357749412006e8e1..877c84b00c2923106151cea8351d5be62a938073 100644 GIT binary patch delta 5089 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 delta 5092 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 KZ{gYe-TVi;D1UPR