我使用IdentityServer3(build 2.3.0.0)和Enterprise库进行日志记录。 目前,我将日志选项设置如下
var options = new IdentityServerOptions
{
LoggingOptions = new LoggingOptions()
{
EnableHttpLogging = false,
EnableKatanaLogging = false,
EnableWebApiDiagnostics = false,
WebApiDiagnosticsIsVerbose = false
},
EventsOptions = new EventsOptions()
{
RaiseErrorEvents = true,
RaiseFailureEvents = true,
RaiseInformationEvents = false,
RaiseSuccessEvents = false
}
}
以上配置不会禁用以下条目的记录
Returning token response.
End token request
Creating JWT access token
Setting a sliding lifetime: 29100
Creating refresh token
Creating access token
Processing token request
Creating token response
Start password token request validation
Start token request validation
Client validation success
Secret validator success: HashedSharedSecretValidator
Secret id found: JSApp
Parser found secret: PostBodySecretParser
Start parsing for secret in post body
X.509 certificate not found.
Start parsing for X.509 certificate
Start client validation
Start token request
CorsPolicyService allowed origin
如何禁用上述日志记录并仅允许错误日志条目?
答案 0 :(得分:2)
这只是将日志记录框架配置为不显示INFO日志记录的问题。而是仅记录ERROR和FATAL。
答案 1 :(得分:0)
如果要完全禁用日志记录,可以为LibLog配置NoopLogger,如:
recyclerView
https://github.com/IdentityServer/IdentityServer3/blob/master/source/Core/Logging/NoopLogProvider.cs
答案 2 :(得分:0)
我已经想出如何配置EntLib配置以避免信息日志记录。
如果将CategoryFilter
用作logFilter
,则可以通过将switchValue
设置为Warning
(或根据您的需要提供任何其他值)来停用信息记录。
<add switchValue="Warning" name="Information">
<listeners>
<add name="Database Trace Listener" />
</listeners>
</add>
如果将PriorityFilter
用作logFilter
,则需要注意的一点是LibLog
未设置LogEntry
的优先级参数。
因此,EntLib默认priority
为“-1”
但是,EntLib不会使用priority
过滤LogEntries(即使minimumPriority
设置为“-1”)。
https://msdn.microsoft.com/en-us/library/dn440731(v=pandp.60).aspx
因此,在这种情况下,logEntires会在特殊类别源
处结束<specialSources>
<allEvents switchValue="All" name="All Events" />
<notProcessed switchValue="Warning" name="Unprocessed Category">
<listeners>
<add name="Database Trace Listener" />
</listeners>
</notProcessed>
<errors switchValue="All" name="Logging Errors & Warnings"/>
</specialSources>
在此处,将notProcessed
类别的switchValue
设置为Warning
以避免信息记录。