ピースペース

例外ログをElmahで行う

leave a comment »

WebAPIの機能チェックでGlobal Error Handlingを調べていて、
http://miso-soup3.hateblo.jp/entry/2014/01/22/022129

ELMAHというエラーログツールに知り合った
https://elmah.github.io/

歴史は古いようなのに、まったく知らなかった。
開発プロジェクトで例外処理は後回しになったりして、なかなか深くつっこめない。
ログをとるだけなら巷のサンプルコードで十分な気もするし。
が、知り合った以上、使ってみることにする。

WebAPI側は、misoさん記事に紹介があるサンプルのとおりに、
Global Error HandlingをElmah対応する。
MVC側は、Elmah.MVCをインストールするだけだった。
HandleError属性とか追加する必要はないらいしい。

Elmahはインストールするだけで使えるようになる。
既存のコードに手を加えないでエラーがログされるようになる!
なんでっ?? できる人はなんでもできるらしい。
web.configには結構な追加があるが、触る必要がある部分は多くなく、
コメントもついている。親切は行き届いている感じ。
完成されたログビューアもあるので、それを作る必要がある場合なら、
作るより使う。という選択でいいのだ!

Elmahを組み込んだサイトをAzure Webに発行する場合、
ログビューアをリモートアクセス可能にして、アクセス制御を構成する必要がある。
のために、ASP.NET IdentityのRole機能を有効にし、
対象ユーザーにRoleを割り当てる必要がある。
すでにIdentityのIoc対応を行っていたので、同様にRoleManagerも追加できた。

あと、Azureの場合はログがファイルだとアクセスが面倒そうなので、
errorLogをDBに変更しておくことにする。
web.configの構成を変えるだけではだめで、
DBに必要なテーブルやストアドなどを準備する必要がある。
スクリプトは、https://elmah.github.io/downloads/からダウンロードできた。

例外ログに対して何か作る。前なら、これを使う。がいいかもしれない。

Written by nasu38yen

2016年8月30日 @ 10:16 AM

カテゴリー: .NET, プログラム

Tagged with

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。