2016-11-03 10 views
1

私はasp.netコアを紺に展開しており、Microsoft.Extentions.Loggingインターフェイスを使用してアプリケーションにログを設定しようとしています。Asp.net Core Azure Webアプリケーションのログ

現在、私のアプリはウェブアプリケーションストレージのログファイルフォルダにログを書き込みます。

enter image description here

これは私の変更をログに記録する適切な場所のように思えます。しかし、私は通常のインターフェイスでこれらのログを表示したい - 毎回テキストファイルをダウンロードすると、ちょっと迷惑です。

私はアプリケーションの洞察と紺色の診断ログを調べましたが、ILoggerインターフェイスを使用してそれを使用する方法は示唆されていません。あなたはAzureの上のアプリケーションでログを設定する必要があり、すべての

答えて

1

まず: Logs

アプリケーションのコンソール出力を見てのオプションもあります。

Output

ます。また、設定することができますStorageをAzureに保存し、そこにログを保存します(診断ログセクションで設定できます)。

+0

ありがとうございます。はるかに良いです。 – gilmishal

2

あなたはアズールで簡単な方法でログインストリームを使用する場合は、あなたがこれを行うことができます:

public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory) 
{ 
    var sourceSwitch = new SourceSwitch("DefaultSourceSwitch"); 
    sourceSwitch.Level = SourceLevels.Information; 
    loggerFactory.AddTraceSource(sourceSwitch, new TextWriterTraceListener(writer: Console.Out)); 
} 

のTraceListenerは、あなたのログが標準トレース出力に行くことを保証します。 web.configstdoutLogEnabledも有効にする必要があります(trueに設定してください)。

この2つを実行すると、すべてのログとシステムログがLogStreamに表示されます。自分でレベルをコントロールすることができます。

P.S.これは完全な.NET Frameworkでのみ機能します

P.P.S私は、BLOBへのログをONにしてAzureでDiagnostic logsの設定を有効にすると、BLOBに保存することができます。だから、コードを書いたり、手作業で書いたりしなくても、すべてのことが起こります。

関連する問題