2016-05-06 13 views
0

NLogを学習しており、データベースのログに移行しました。私はウェブ上で複数の例を試したが、実際にレコードを挿入することはできません。 NLogがそれを取得した場合の例外が発生したため、ログの取得が失敗した理由はわかりません。私のロガーと設定は問題なく見つけられます。行を実行したように実行しますが、テーブルは空のままです。私はNlogの例で一歩を踏み出しましたが、どちらもうまくいきません! :( Nlog Database ExampleNlogデータベースのログに行が挿入されない

UPDATE:私は削除して設定に最初からやり直すことになったし、それは今、私はそれらを取り除くように、ASPがエラーを引き起こしていた描画を行う新しい設定ファイルから問題を修正しましたが、私も実現わからない動作します。 。

<target name="db" 
    xsi:type="Database" 
    dbProvider="System.Data.SqlClient" 
    connectionString="Data Source=Server;Initial Catalog=Database;Persist Security Info=True;Integrated Security=SSPI;" 
    commandType="StoredProcedure" 
    commandText="[dbo].[NLog_AddEntry_p]"> 
    <parameter name="@machineName" layout="${machinename}" /> 
    <parameter name="@siteName"  layout="${iis-site-name}" /> 
    <parameter name="@logged"   layout="${date}" /> 
    <parameter name="@level"   layout="${level}" /> 
    <parameter name="@username"  layout="${aspnet-user-identity}" /> 
    <parameter name="@message"  layout="${message}" /> 
    <parameter name="@logger"   layout="${logger}" /> 
    <parameter name="@properties"  layout="${all-event-properties:separator=|}" /> 
    <parameter name="@serverName"  layout="${aspnet-request:serverVariable=SERVER_NAME}" /> 
    <parameter name="@port"   layout="${aspnet-request:serverVariable=SERVER_PORT}" /> 
    <parameter name="@url"   layout="${aspnet-request:serverVariable=HTTP_URL}" /> 
    <parameter name="@https"   layout="${when:inner=1:when='${aspnet-request:serverVariable=HTTPS}' == 'on'}${when:inner=0:when='${aspnet-request:serverVariable=HTTPS}' != 'on'}" /> 
    <parameter name="@serverAddress" layout="${aspnet-request:serverVariable=LOCAL_ADDR}" /> 
    <parameter name="@remoteAddress" layout="${aspnet-request:serverVariable=REMOTE_ADDR}:${aspnet-request:serverVariable=REMOTE_PORT}" /> 
    <parameter name="@callSite"  layout="${callsite}" /> 
    <parameter name="@exception"  layout="${exception:tostring}" /> 
</target> 
try 
{ 
    int zero = 0; 
    int result = 100/zero; 
} 
catch (Exception ex) 
{ 
    Logger filelogger = LogManager.GetLogger("filelogger"); 
    Logger dblogger = LogManager.GetLogger("dblogger"); 
    //filelogger.Error(ex, "Whoops"); 
    dblogger.Error(ex, "Whoops"); 
} 
+0

Updateは私が得ました内部ログ私はNlogが投げているエラーを見ています。それはUnknown Log Level:trueエラーで戻ってきます。ウェブはnlogのこのエラーについて非常に制限されているように見えますが、設定を何度も行ってしまい、問題を見ることができません。これがNlogのバグかどうか疑問に思っています。 – user1732364

+0

'true'はログレベルではありません。デバッグ、情報、エラーなどのようなものでなければなりません。ログレベルが期待されている間はおそらくあなたの設定に 'true'があったはずです。 – Julian

+0

それは正しいです、それは問題の一つでした:) – user1732364

答えて

0

問題は、ASPのレイアウトは、レンダリングし、それらのパッケージを欠落しています。また、私は無効な値にinternalLoggingフラグを設定していたとあった。これらの修正は、問題を修正しました。

関連する問題