2016-06-15 1 views
-2

사용자가 DEBUG 플래그로 WebApi2에 요청을 보낼 수있는 솔루션이 있습니다. 플래그가 설정되면 WebApi2는 log4net을 사용하여 디버그 명령문을 기록합니다.디버그 추적 유지

코드의 플래그를 어떻게 추적합니까? 디버그 문을 로깅해야하는지 결정하기 위해 모든 함수에 전달해야한다는 사실을 좋아하지 않습니다. log4net 또는 WebApi2와 함께 할 수있는 방법이 있습니까?

세션과 같은 것이 좋지만 RESTful 디자인 원칙에 위배됩니다. 나는 우아한 해결책이 있는지 궁금해했다.

답변

-1

ThreadContext.Stacks [ "Debug"]를 사용했습니다. 내 문제를 해결 한 Push ("True").

0

왜 클라이언트가 서버의 로깅 수준을 제어하도록 하시겠습니까? log4net 보통은 web.config를 통해 연결되므로 서버 측과 서버 측에서 로깅 수준을 변경할 수 있습니다.

말하자면, 당신은 정말로 그 정도의 세밀도가 필요하겠습니까? DB에 저장된 일종의 사용자 프로필이 있으면이를 저장할 수 있습니다.

질문에 정확하게 대답하려면 custom header을 사용하는 좀 더 우아한 해결책이 필요합니다.

+0

log4net에서이를 수행 할 수있는 방법이 있습니까? 나는 다른 요청에 영향을주지 않고 단일 요청 (실행 경로)에 대한 로깅 수준을 변경할 수 있다고 생각하지 않습니다. – Husain

+0

잘 디버그, 정보, 경고 등을 기록 할 수 있습니다; 나에게 이전에했던 것처럼 로깅 수준이라는 용어를 사용하면 실제로 기록 될 최소 * 수준에 대해 사과드립니다. –

+0

다시. 그게 무슨 뜻 이냐면, log4net은 요청 당 로그 수준을 추적하지 않습니다. – Husain

관련 문제