dotnet-core, angular, 4.6.1 framework: 6.8.1 Current log4net configuration reads:
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%-5level %date [%-5.5thread] %-40.40logger - %message%newline" />
</layout>
Whereas the standard outlines at Apache log4netâ„¢ Config Examples reads:
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
Can anyone tell me what [%-5.5thread]
and %-40.40logger
(note decimal) denotes and what is [%property{NDC}]
and why don't we have it?
I would like to push my logs to Application Insights and I'm trying to get some more detail on what to capture. Any help anyone? Any pointers to documentation?
7 Answer(s)
-
0
[%-5.5thread]
is the current thread name/id.%-40.40logger
is the name of the class that writes the log line. 5 & 40 are the spaces allocated in the log line for the information. I don't know the[%property{NDC}]
:) You can find more info on the web, log4net has an independent library and we are directly using it. -
0
@hilkakan, thanks. Is that why the first two characters are always missing from the line
%-40.40logger
variable? Should I raise a github issue for this?WARN 2019-11-24 23:32:37,541 [4 ] calization.RequestLocalizationMiddleware - AbpUserRequestCultureProvider returned the following unsupported cultures 'null'. WARN 2019-11-24 23:32:37,567 [4 ] calization.RequestLocalizationMiddleware - AbpUserRequestCultureProvider returned the following unsupported UI Cultures 'null'. WARN 2019-11-24 23:32:37,569 [4 ] calization.RequestLocalizationMiddleware - AbpDefaultRequestCultureProvider returned the following unsupported cultures 'null'. WARN 2019-11-24 23:32:37,570 [4 ] calization.RequestLocalizationMiddleware - AbpDefaultRequestCultureProvider returned the following unsupported UI Cultures 'null'. INFO 2019-11-24 23:32:37,544 [99 ] uthentication.JwtBearer.JwtBearerHandler - Successfully validated the token. INFO 2019-11-24 23:32:37,594 [47 ] soft.AspNetCore.Hosting.Internal.WebHost - Request starting HTTP/1.1 GET http://localhost:22742/api/services/app/UserLink/GetLinkedUsers?MaxResultCount=7&SkipCount=0 WARN 2019-11-24 23:32:37,594 [99 ] calization.RequestLocalizationMiddleware - AbpUserRequestCultureProvider returned the following unsupported cultures 'null'. WARN 2019-11-24 23:32:37,617 [99 ] calization.RequestLocalizationMiddleware - AbpUserRequestCultureProvider returned the following unsupported UI Cultures 'null'. INFO 2019-11-24 23:32:37,571 [4 ] ft.AspNetCore.Routing.EndpointMiddleware - Executing endpoint 'Nuagecare.Authorization.Users.UserLinkAppService.GetRecentlyUsedLinkedUsers (Nuagecare.Application)' WARN 2019-11-24 23:32:37,618 [99 ] calization.RequestLocalizationMiddleware - AbpDefaultRequestCultureProvider returned the following unsupported cultures 'null'. WARN 2019-11-24 23:32:37,642 [99 ] calization.RequestLocalizationMiddleware - AbpDefaultRequestCultureProvider returned the following unsupported UI Cultures 'null'. INFO 2019-11-24 23:32:37,594 [47 ] pNetCore.Cors.Infrastructure.CorsService - CORS policy execution successful.
-
0
Should I raise a github issue for this?
I think it makes the log line too long. Even if we make it longer, some namespaces will be too deep and it will not cover all names. The essential point is the class name (like
RequestLocalizationMiddleware
in the log you've shared), namespace is not so important. But if you like, you can do it for your own solution. -
0
Hi @hilkakan, Sorry I don't get that. Are you saying that if the %-40.40logger variable is 128 characters long the log will just show the last 40 characters and ignore the first 88? Is this so the text file created by the log will always have the - %message%newline variable starting at exactly the same column number? It's not a criticism, just a simple question, my logs are being sent to Application Insights so I can make changes to my own project. I would just like confirmation on what the standard default is.
-
0
@bobingham
Yes, that is exactly how it works.
-
0
Thanks.
-
0
Hello,
I want to log some info: client ip, current user => I configed and it work with .net framework project but i does't work with .net core project.
%identity => user name %aspnet-request{REMOTE_ADDR} => client ip
What properties are the same with .net core?
Thanks!