From 1459f74e8510ce2cb200da552a0cf34fe1c1d51b Mon Sep 17 00:00:00 2001 From: Rolf Kristensen Date: Sat, 21 Sep 2024 15:41:37 +0200 Subject: [PATCH 1/7] Added NLog.Targets.ActiveMQ --- config/targets.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/config/targets.json b/config/targets.json index 4f595f095..6bb1ea6af 100644 --- a/config/targets.json +++ b/config/targets.json @@ -869,5 +869,13 @@ "description": "Writes NLog messages to NATS messaging server", "external": true, "category": "Integrations" + }, + { + "name": "ActiveMQ", + "page": "https://github.com/YuraSidorets/NLog.Targets.ActiveMQ", + "package": "NLog.Targets.ActiveMQ", + "description": "Writes NLog messages using Apache ActiveMQ NMS native OpenWire protocol", + "external": true, + "category": "Integrations" } ] From d9454b98c0a6e3783e1fc3f2c9445df9c7f5a754 Mon Sep 17 00:00:00 2001 From: Rolf Kristensen Date: Sat, 21 Sep 2024 16:41:20 +0200 Subject: [PATCH 2/7] Updated Loupe.Agent.NLog --- config/targets.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/config/targets.json b/config/targets.json index 6bb1ea6af..47358b0b6 100644 --- a/config/targets.json +++ b/config/targets.json @@ -601,9 +601,9 @@ }, { "name": "Loupe", - "page": "https://github.com/GibraltarSoftware/Gibraltar.Agent.NLog2", - "package": "Gibraltar.Agent.NLog4", - "description": "Writes NLog messages to Gibraltar https://www.onloupe.com", + "page": "https://github.com/gibraltarsoftware/gibraltar.agent.nlog2", + "package": "Loupe.Agent.NLog", + "description": "Writes NLog messages to Gibraltar Loupe Agent https://www.onloupe.com", "external": true, "category": "Integrations (Cloud)" }, From 498afc403145dfb3cd1a0c5d8a86bb662b7cc1f2 Mon Sep 17 00:00:00 2001 From: Rolf Kristensen Date: Sun, 29 Sep 2024 17:53:11 +0200 Subject: [PATCH 3/7] Changed Templatable to Output formats --- index.html | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index 37612bc6f..34874b502 100644 --- a/index.html +++ b/index.html @@ -7,9 +7,9 @@

Welcome to NLog!

- NLog is a flexible and free logging platform for various .NET platforms, including .NET standard. - - NLog makes it easy to write to several targets. (database, file, console) and change the logging configuration on-the-fly. + NLog is a flexible and free logging platform for various .NET platforms, including .NET standard. + + NLog makes it easy to write to several targets. (console, file, database, etc.) and change the logging configuration on-the-fly.

@@ -34,9 +34,15 @@

Easy to configure

-

Templatable

+

Output formats

- Every log message can be templated with various layout renders + NLog Layouts are available for several output formats like + Simple Text, + JSON, + XML, + CSV etc., + The output can be enriched by using the many layout renders, + that are able to automatically capture additional output details when logging.

From a1bf84541b9a3bdb8a622d808ddda552c0970ee8 Mon Sep 17 00:00:00 2001 From: Rolf Kristensen Date: Sun, 15 Sep 2024 13:39:41 +0200 Subject: [PATCH 4/7] Initial draft of NLog v6 goals --- _posts/2024-10-01-nlog-6-0-goals.md | 36 +++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 _posts/2024-10-01-nlog-6-0-goals.md diff --git a/_posts/2024-10-01-nlog-6-0-goals.md b/_posts/2024-10-01-nlog-6-0-goals.md new file mode 100644 index 000000000..6e9cad516 --- /dev/null +++ b/_posts/2024-10-01-nlog-6-0-goals.md @@ -0,0 +1,36 @@ +--- +layout: post +title: NLog 6.0 goals +--- + +NLog v6.0 has the following goals: + +- Support Ahead-of-Time (AOT) builds without warnings +- Support Nullable references +- Cleanup interfaces for `Logger` / `ILogger` to remove unnecessary boxing optimizations from .NET v1 +- Remove Systeml.RegularExpression dependency since a heavy dependency for AOT + - Need to implement a minimal syntax-support for NLog Logging Rules. Ex. `?` and `.*` +- Remove Systeml.Xml dependency since a heavy dependency for AOT + - Need to implement a minimal XML reader to continue loading `NLog.config` XML files +- Extract NLog.Targets.WebServiceTarget to its own nuget-package +- Extract NLog.Targets.NetworkTarget to its own nuget-package +- Extract NLog.Targets.MailTarget to its own nuget-package +- Extract NLog.Targets.FileTarget to its own nuget-package NLog.Targets.ConcurrentFileTarget + - NLog will instead have a simple FileTarget without ConcurrentWrites-support but only KeepFileOpen = false + +The overall goal for NLog v6.0 is still to be a fully working logging-library in a single nuget-package. +The NLog-package will out of the box only handle file- and console-output, which probably covers 90 pct. of the use cases. +When needing other output destinations or formats, then additional nuget-packages must be included. + +The planned interface cleanup for `Logger` / `ILogger` will probably give a lot of headache, +as it will require all dependencies to be upgraded before upgrading the main-application. +Where NLog v5 was mostly an update of default values for the main-application to handle, +then the upgrade to NLog v6 will affect the entire dependency- / project-tree. + +The goal is that all existing nuget-packages with custom NLog targets should continue to function with NLog v6. +This means NLog v6 will probably continue to support obsolete API-methods, that are relevant for custom NLog targets. + +.NET8 already have great support for AOT, but many Microsoft teams are still working with updating +their nuget-packages to support AOT. Believe the goal for .NET9 is to update more nuget-packkage +to fully support AOT, so more aplications that depend on ASP.NET or MAUI have full AOT support. +NLog should not become a blocker, when people wants to make AOT builds. \ No newline at end of file From 4ce66786937601bc343f4881311adff6257f32ad Mon Sep 17 00:00:00 2001 From: Rolf Kristensen Date: Sun, 15 Sep 2024 19:40:06 +0200 Subject: [PATCH 5/7] NLog v5 changing to maintenance mode --- _posts/2024-10-01-nlog-6-0-goals.md | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/_posts/2024-10-01-nlog-6-0-goals.md b/_posts/2024-10-01-nlog-6-0-goals.md index 6e9cad516..c0dedc53f 100644 --- a/_posts/2024-10-01-nlog-6-0-goals.md +++ b/_posts/2024-10-01-nlog-6-0-goals.md @@ -19,18 +19,21 @@ NLog v6.0 has the following goals: - NLog will instead have a simple FileTarget without ConcurrentWrites-support but only KeepFileOpen = false The overall goal for NLog v6.0 is still to be a fully working logging-library in a single nuget-package. -The NLog-package will out of the box only handle file- and console-output, which probably covers 90 pct. of the use cases. -When needing other output destinations or formats, then additional nuget-packages must be included. +The NLog-package will out of the box only handle file- and console-output, which will probably cover 90 pct. +of the use cases. When needing other output destinations or formats, then additional nuget-packages must be included. The planned interface cleanup for `Logger` / `ILogger` will probably give a lot of headache, as it will require all dependencies to be upgraded before upgrading the main-application. Where NLog v5 was mostly an update of default values for the main-application to handle, then the upgrade to NLog v6 will affect the entire dependency- / project-tree. -The goal is that all existing nuget-packages with custom NLog targets should continue to function with NLog v6. -This means NLog v6 will probably continue to support obsolete API-methods, that are relevant for custom NLog targets. +Another goal is that all existing nuget-packages that depends on NLog v4, should continue to function with NLog v6. +This means NLog v6 will continue to support obsolete API-methods, that are relevant for custom NLog targets. -.NET8 already have great support for AOT, but many Microsoft teams are still working with updating -their nuget-packages to support AOT. Believe the goal for .NET9 is to update more nuget-packkage -to fully support AOT, so more aplications that depend on ASP.NET or MAUI have full AOT support. -NLog should not become a blocker, when people wants to make AOT builds. \ No newline at end of file +.NET8 already have great support for AOT, but many Microsoft teams are still working on updating +their nuget-packages to support AOT. Believe the goal for .NET9 is to ensure even more nuget-packages +will fully support AOT, to allow more ASP.NET or MAUI applications to start using AOT. +NLog should not become a blocker, when wanting to try out AOT builds. + +This means NLog v5 will now go into maintenance mode (together with NLog v4), and focus +will now be on getting NLog v6 preview build ready. \ No newline at end of file From 429aa2028b389ab3021708f5e5b64ab3c7b2f7d9 Mon Sep 17 00:00:00 2001 From: Rolf Kristensen Date: Sun, 29 Sep 2024 10:29:05 +0200 Subject: [PATCH 6/7] Remove old target platforms --- _posts/2024-10-01-nlog-6-0-goals.md | 1 + 1 file changed, 1 insertion(+) diff --git a/_posts/2024-10-01-nlog-6-0-goals.md b/_posts/2024-10-01-nlog-6-0-goals.md index c0dedc53f..52067d907 100644 --- a/_posts/2024-10-01-nlog-6-0-goals.md +++ b/_posts/2024-10-01-nlog-6-0-goals.md @@ -7,6 +7,7 @@ NLog v6.0 has the following goals: - Support Ahead-of-Time (AOT) builds without warnings - Support Nullable references +- Remove old target platforms `NetStandard1.3` + `NetStandard1.5` - Cleanup interfaces for `Logger` / `ILogger` to remove unnecessary boxing optimizations from .NET v1 - Remove Systeml.RegularExpression dependency since a heavy dependency for AOT - Need to implement a minimal syntax-support for NLog Logging Rules. Ex. `?` and `.*` From 3b5f480b7a17919021884f4dcffd98295dcce1df Mon Sep 17 00:00:00 2001 From: Rolf Kristensen Date: Tue, 1 Oct 2024 20:38:35 +0200 Subject: [PATCH 7/7] Invite for comments --- _posts/2024-10-01-nlog-6-0-goals.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/_posts/2024-10-01-nlog-6-0-goals.md b/_posts/2024-10-01-nlog-6-0-goals.md index 52067d907..cefb00c6e 100644 --- a/_posts/2024-10-01-nlog-6-0-goals.md +++ b/_posts/2024-10-01-nlog-6-0-goals.md @@ -9,9 +9,9 @@ NLog v6.0 has the following goals: - Support Nullable references - Remove old target platforms `NetStandard1.3` + `NetStandard1.5` - Cleanup interfaces for `Logger` / `ILogger` to remove unnecessary boxing optimizations from .NET v1 -- Remove Systeml.RegularExpression dependency since a heavy dependency for AOT - - Need to implement a minimal syntax-support for NLog Logging Rules. Ex. `?` and `.*` -- Remove Systeml.Xml dependency since a heavy dependency for AOT +- Remove `System.Text.RegularExpressions` dependency since a heavy dependency for AOT + - Need to implement a minimal syntax-support for NLog Logging Rules. Ex. `?` and `*` +- Remove `System.Xml` dependency since a heavy dependency for AOT - Need to implement a minimal XML reader to continue loading `NLog.config` XML files - Extract NLog.Targets.WebServiceTarget to its own nuget-package - Extract NLog.Targets.NetworkTarget to its own nuget-package @@ -19,9 +19,9 @@ NLog v6.0 has the following goals: - Extract NLog.Targets.FileTarget to its own nuget-package NLog.Targets.ConcurrentFileTarget - NLog will instead have a simple FileTarget without ConcurrentWrites-support but only KeepFileOpen = false -The overall goal for NLog v6.0 is still to be a fully working logging-library in a single nuget-package. +The overall goal for NLog v6.0 to continue being a fully working logging-library in a single nuget-package. The NLog-package will out of the box only handle file- and console-output, which will probably cover 90 pct. -of the use cases. When needing other output destinations or formats, then additional nuget-packages must be included. +of the use cases. When needing other output targets or formats, then additional nuget-packages must be included. The planned interface cleanup for `Logger` / `ILogger` will probably give a lot of headache, as it will require all dependencies to be upgraded before upgrading the main-application. @@ -37,4 +37,5 @@ will fully support AOT, to allow more ASP.NET or MAUI applications to start usin NLog should not become a blocker, when wanting to try out AOT builds. This means NLog v5 will now go into maintenance mode (together with NLog v4), and focus -will now be on getting NLog v6 preview build ready. \ No newline at end of file +will now be on getting NLog v6 preview build ready. If having suggestions for the future direction +of the [NLog v6 milestone](https://github.com/NLog/NLog/milestone/29) then [comments are wellcome](https://github.com/NLog/NLog/issues/4931). \ No newline at end of file