문제

NLOG가 데이터베이스 로그 테이블에 로그인하려고하지만 소용이 없습니다. 내 연결 문자열이 내 Web.config의 다른 곳에서 사용 된 것과 동일하기 때문에 내 연결 문자열이 정확하다고 확신합니다. 파일에 쓰는 것은 잘 작동하므로 NLOG만이 아니라 내가 잘못하고있는 일이어야한다는 것을 알고 있습니다. 아래는 내 NLOG 구성입니다.

<!-- NLOG CONFIGURATION -->
  <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <targets>
      <target name="file" xsi:type="File" fileName="${basedir}/logs/Log ${shortdate}.txt" layout="${longdate} ${callsite} ${level}: ${message} ${exception:format=Message,StackTrace} ${stacktrace}" />
      <target type="Database" name="database" connectionstring="MyConnectionString">
        <commandText>
          insert into MyLog ([CreateDate], [Origin], [LogLevel], [Message], [Exception], [StackTrace]) values (@createDate, @origin, @logLevel, @message, @exception, @stackTrace);
        </commandText>
        <parameter name="@createDate" layout="${longdate}"/>
        <parameter name="@origin" layout="${callsite}"/>
        <parameter name="@logLevel" layout="${level}"/>
        <parameter name="@message" layout="${message}"/>
        <parameter name="@exception" layout="${exception:format=Message,StackTrace}"/>
        <parameter name="@stackTrace" layout="${stacktrace}"/>
      </target>
    </targets>
    <rules>
      <logger name="*" writeTo="file"/>
      <logger name="*" appendTo="database"/>
      <!--<logger name="*" writeTo="mail" minlevel="Error"/>-->
    </rules>
  </nlog>
도움이 되었습니까?

해결책

NLOG 태그에 다음을 넣으십시오.

<nlog throwExceptions="true" internalLogFile="c:\nlog.txt" internalLogLevel="Debug" />

그것은 문제가 무엇인지 결정하는 데 도움이 될 수 있습니다

다른 팁

NLOG를 사용하면 프레임 워크 자체의 내부를 기록 할 수 있습니다.

할 수 있게 하다 "내부 로깅의 디버그 레벨"NLOG를 위해 무엇이 잘못되고 있는지 확인하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top