私は例外ロガークラスを作成しています。私の質問は、現在の方法をマークするために何を使用するのですか?その名前を除いて、コードは難読化されるので、使用することはできません。ログファイルに現在のメソッドをマークする方法はありますか?
1
A
答えて
3
独自の属性を作成し、その属性でメソッドを修飾することができます。 何かのようなもの[MethodName("WriteXMLData")]
ロガーでは、ロギング中に渡されたMemberInfoオブジェクトでリフレクションを実行できます。
Thisは、独自の属性を定義してクエリするための優れたチュートリアルです。
-1
あなたはuが特定の例外について必要なすべてのデータを取得し、データ・ソースにログインすることができます:
ここでuは指定された例外にはほとんど情報を抽出することができます。
protected void Application_Error(object sender, EventArgs e)
{
Exception Exc = null;
try
{
Exc = Server.GetLastError();
if(Exc.InnerException != null)
Exc = Exc.InnerException;
// Method name + line number + column
System.Diagnostics.StackTrace trace = new System.Diagnostics.StackTrace(Exc, true);
string ExtraData = "Name : {0}, Line : {1}, Column : {2}";
ExtraData = String.Format(ExtraData, trace.GetFrame(0).GetMethod().Name, trace.GetFrame(0).GetFileLineNumber(), trace.GetFrame(0).GetFileColumnNumber());
// exception message
Exc.Message;
// page name
Request.Url.ToString();
// stack trace
Exc.StackTrace;
}
}
0
あなたは可能性がありますそこにあるいくつかのログフレームワークを見てみたいと思います。私はNLogに部分的です。構成が簡単で、柔軟性があります。
関連する問題
- 1. メソッドアトミックをマークする方法はありますか?
- 2. NSManagedObjectをダーティとマークする方法はありますか?
- 3. iPhoneでログファイルを作成する方法はありますか
- 4. コントローラ内に現在のURLをプルする方法はありますか?
- 5. ViewPagerの現在のフォーカスされたビューに私のカスタムonClickメソッドを与える方法はありますか?
- 6. ドメインサービスから、現在のURLを取得する方法はありますか?
- 7. アプリケーションの現在の状態を取得する方法はありますか?
- 8. NServiceBusの現在のサブスクリプションを確認する方法はありますか
- 9. ファイルバッファの現在の状態を確認する方法はありますか?
- 10. PHP(Ubuntu)で現在のユーザを変更する方法はありますか?
- 11. Pythonで「現在の」ファイルをリロードする方法はありますか?
- 12. リフレクションを使用して実行時に現在のスレッドから現在のメソッド名を取得する方法はありますか?
- 13. Railsのエラーを別のログファイルに記録する方法はありますか?
- 14. FORTRAN 77の現在のファイル名を返す方法はありますか
- 15. ファイルサイズごとにログファイルをローリングする方法はありますか?
- 16. 参照クラスを使用する代わりに、現在のクラスをエイリアスする方法はありますか?
- 17. 現在のセレクタに展開するプリプロセッサマクロはありますか?
- 18. Rails 3で現在のメソッドを取得する方法は?
- 19. デバッギングソースファイルを現在のモジュールにルックアップするようにIntelliJを制約する方法はありますか?
- 20. ログファイルのEclipseプラグインはありますか?
- 21. メソッドをマークする方法は無条件にスローされますか?
- 22. IResultListenerメソッドの前に@afterメソッドを実行する方法はありますか?
- 23. mediawiki:現在のページにリダイレクトするリダイレクトページを自動的に作成する方法はありますか?
- 24. ログファイルを監視する良い方法はありますか?(linux/python)
- 25. LWUIT:tabs - 現在選択されているタブをマークする方法
- 26. 現在のビューに表示されるbackBarButtonItemを無効にする方法はありますか?
- 27. 現在のクラス/ dllがC#にあるディレクトリを取り出す方法は?
- 28. iPhoneのようにNSAnimationを「現在の状態から開始する」方法はありますか?
- 29. オブジェクトを現在の位置から別の位置に変換する方法はありますか?
- 30. jQuery:divの存在を知る方法はありますか?
もちろん、そうするつもりならば、難読化者に名前を変更しないように指示することもできます。あるいは、難読化ツールの使用を完全に止めてください。 – Timwi