2017-02-24 6 views
1

私はnlogをAzure webapp Log Streamと連携させようとしています。Azure Log Streaming with NLog

ログは、nlogを使用しない場合に表示され、System.Diagnostics.Trace.WriteLineを使用してください。

私は私のnlog.configでTraceタイプを使用する場合は、それはトレースログを表示しません...

<?xml version="1.0" encoding="utf-8" ?> 
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <targets> 
     <target xsi:type="Trace" name="trace" layout="${message}" /> 
    </targets> 

    <rules> 
     <logger name="*" minlevel="Trace" writeTo="trace" /> 
    </rules> 
</nlog> 

私は違ったからやっている何かを見ることができませんここでは受け入れ答え...私はnlog.configファイルだけでトレースを表示することを切り倒し

How to integrate NLog to write log to Azure Streaming log

注 - しかし、私はまたFileターゲット・タイプを持っている通常ん - 私は、これなしで試してみました。

デプロイされたAzure Webサイトにログオンし、nlog設定ファイルが正常にアップロードされました。私はGithub展開を使用して展開しています。

ファイルシステムのロギングだけを使用するためにAzureでロギングを設定しましたが、これはverboseに設定されています。

アイデア?

答えて

3

たぶん、ここに示されているカスタムMyTraceTargetを試してみてください私のweb.config。これは、私のnlog.configファイルがまったく使用されていないことを意味していました。私はweb.configからそのnlog設定セクションを削除し、代わりにApplication Insightsターゲットをnlog.configファイルにコピーすることで修正しました。 'Trace'ターゲットタイプが、期待どおりに動作し、Azure Streaming Logsに表示されるようになりました。

1

NLog-Trace-Targetは、デバッグレベルのログイベントに対してのみTrace.WriteLineを実行します。それは、Visual Studioは、アプリケーションの洞察(私はプロジェクトに追加最近のもの)を有効にした場合、それはにnlog configセクションを挿入していたことが判明し

https://github.com/NLog/NLog/issues/1968

+0

ありがとうございます。カスタムターゲットについてのあなたの提案は、カスタムターゲットがうまくいかず、正しいパスを導いたので、デバッガのLogManger.Configurationを調べると、実際の問題がわかりました。 Upvoted :) – Dan