이 기사 here을보십시오.
WebApi는 현재 범주 또는 수준과 관련하여 추적 기록기를 구성 할 수있는 방법을 제공하지 않습니다.
그리고 현재 사용되는 범주와 수준을 결정
는 ITraceWriter 구현의 책임입니다. 웹 API 프레임 워크에는 추적 구성 또는 어떤 범주와 수준이 사용되는지 결정하는 개념이 없습니다.
이 방법의 목적은 ITraceWriter 구현 자체의 메커니즘을 사용하여 추적 대상을 구성하고 위치를 사용하는 것입니다.
예를 들어, NLog 관련 ITraceWriter를 사용하는 경우 NLog 구성 메커니즘을 통해 추적을 구성해야합니다.
요약하면 추적을 사용하거나 사용하지 않도록 설정하거나 특정 수준의 추적을 기록하지 않기로 결정한 경우 사용자가 SimpleTracer
내부에 구현할 수 있습니다.
고유 한 스레드 세이프 싱글 톤 TraceConfiguration (GlobalConfiguration과 유사) 구현을 작성하여 코드 내에서 토글을 켜거나 끌 수 있도록 추적 구성을 제어 할 수 있습니다.
public void Trace(HttpRequestMessage request, string category, TraceLevel level, Action<TraceRecord> traceAction)
{
if(TraceConfiguration.Configuration.IsEnabled)
{
//trace
}
}
또는 요청 개체의 속성을 설정하고 액세스하여 추적을 사용할지 여부를 결정할 수 있습니다. 액션 및 컨트롤러의 ActionFilters로 설정하거나 컨트롤러 내에서 설정할 수도 있습니다. 당신이 NLog 또는 Log4Net 등을 사용하는 경우
public void Trace(HttpRequestMessage request, string category, TraceLevel level, Action<TraceRecord> traceAction)
{
if(request.Properties["SupressTracing"] as string != "true")
{
//trace
}
}
또는 기사로
당신이 수준을 통해 설정 등 u는 무엇을 의미합니까
"서버가 실행"을 사용 설정은 최대입니다 제안? 서버가 "실행 중이 지 않을 때 어떻게 사용할 수 있습니까?" 누가 당신의 코드를 실행할 것입니까? – tugberk