2016-09-09 7 views
2

私はLog4netを使用してWebApiコントローラのメソッド呼び出しをログに記録し、メソッド情報、実行時間、例外をログファイルに記録します(ElmahまたはNLogに変更できます)。私は開発者によって書かれたカスタムメッセージログもいくつか持っています。すべてのログファイルは同じWebサーバー上にあり、解析したい場合は別のマシンに移動する必要があります。WebApiカスタムログとAzureストレージ

Azure Storageに直接書き込む方法はありますか。どのストレージタイプ(Blob/Table/File)が最適ですか?

おかげ

答えて

1

おそらくlog4netのためのAzureのアペンダになります。http://stemarie.github.io/log4net.Azure/。 BLOBストレージとテーブルストレージの両方で動作します。テーブルストレージに保存することを選択します。これは、BLOBストレージでは利用できない基本的な検索機能があるためです。

ELMAHとNLogの両方に、Azureストレージにログするための類似の機能があります。

0

完全に自動化されたソリューションの場合は、Audit.WebAPIAudit.log4netの拡張子を使用してAudit.NETを使用できます。

[AuditApi] 
public class UsersController : ApiController 
{ ... } 

と静的初期化コード:ちょうどあなたのコントローラ/メソッドに属性を追加すること

Audit.Core.Configuration.Setup() 
    .UseLog4net(); 

そして、それはそれだ、あなたは、あなたのWeb API呼び出しに取り組んで監査システムを持っており、デフォルトのlog4net構成を使用してログを記録します。

関連する問題