Comments (4)
Yes NLog cannot recognize ${aspnet-request-url}
until having registered/loaded the extensions from NLog.Web.AspNetCore.
You can also do this:
LogManager.Setup().RegisterNLogWeb();
var layout = new JsonLayout()
{
Attributes =
{
new JsonAttribute("message", "${message}"),
new JsonAttribute("url","${aspnet-request-url:IncludeQueryString=true}"),
}
};
LogManager.Setup().LoadConfiguration(c => {
c.ForLogger().WriteTo(new ColoredConsoleTarget { Layout = layout });
});
from nlog.web.
Thanks, I actually just moved the code inside the LoadConfiguration lambda and it does work as well.
May I suggest that this string is just being remembered by the json attribute, and the first time it would indeed be used, it will do the resolution.
The way it works now is a bit unexpected.
from nlog.web.
When using unknown layoutrenderers (either because not registered or having misspelled the type-alias), then NLog will react early to tell where the issue is detected (and not late in the game).
But at the same time NLog really likes to swallow errors unless requested to throw exceptions. This mean that most issues leads to NLog complaining silently and not generating any output.
When troubleshooting "no output" then one either decide to activate ThrowConfigExceptions or enable the NLog InternalLogger.
from nlog.web.
Closing issue as answered due to inactivity.
from nlog.web.
Related Issues (20)
- Apply ArgumentNullException.ThrowIfNull to NLog source-code HOT 2
- Introduce ObjectPath as alternative to EvaluateAsNestedProperties for HttpContext.Items HOT 3
- UseNLog doesn't accept configuration file name HOT 8
- 2 spaces are output when OutputFormat is JsonDictionary and QueryString is empty in AspNetQueryStringLayoutRenderer. HOT 3
- Appsettings loglevel does not work in 5.x.x version HOT 2
- Naming inconsistency in Nuget-package repository HOT 2
- The base path for the `appsettings.json` do not match the base path of the web host. HOT 5
- NuGet server returned 403: The specified API key is invalid, has expired
- AspNetBufferingTargetWrapper should not depend on NLogHttpModule HOT 1
- Mark NLogBuilder as obsolete and redirect to LoadConfigurationFromAppSettings()
- Extend ${aspnet-response-statuscode} to include Enum-ToString value HOT 4
- Extend AspNetUserClaimLayoutRenderer to handle multi-values HOT 2
- Use of asp-session causing stack overflow HOT 26
- Better diagnostics for AspNetBufferingTargetWrapper without HttpModule or Middleware HOT 2
- Better diagnostics for AspNetRequestPostedBodyLayoutRenderer without HttpModule or MiddleWare HOT 1
- Version support for.net 7 HOT 2
- app.UseMiddleware<NLogRequestPostedBodyMiddleware>() does not work in dotnet 7 HOT 5
- NLog.Web.AspNetCore dependencies HOT 3
- LoadConfigurationFromAppSettings with reloadOnChange = true should force enable autoReload HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nlog.web.