ホームページ >バックエンド開発 >C++ >.NET アプリケーションでスタック トレースを取得するにはどうすればよいですか?

.NET アプリケーションでスタック トレースを取得するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-27 06:36:10923ブラウズ

How Can I Retrieve Stack Traces in .NET Applications?

.NET でのスタック トレースの取得: 総合ガイド

多くのシナリオでは、たとえ例外がないこと。これは、デバッグや実行フローの理解に役立ちます。

System.Diagnostics.StackTrace の紹介

.NET では、System.Diagnostics 名前空間は分析のための強力なツールを提供します。スタックトレース。現在のスタック トレースを取得するには、次のように StackTrace クラスをインスタンス化します。

System.Diagnostics.StackTrace t = new System.Diagnostics.StackTrace();

StackTrace クラスは、現在のコール スタックに関する詳細情報を提供する大量のプロパティとメソッドを公開します。

スタック トレースのログ

スタック トレースをログに記録するには、次のことができます。 GetFrame メソッドを呼び出して、スタック内の特定のフレームを表す StackFrame オブジェクトを取得します。

StackFrame frame = t.GetFrame(0);
Console.WriteLine("Current Stack Trace:");
Console.WriteLine("\tMethod: {0}", frame.GetMethod());
Console.WriteLine("\tLine Number: {0}", frame.GetFileLineNumber());

代替アプローチ

あるいは、ロギング フレームワークの活用を検討できます。 NLog やエンタープライズ ライブラリなど。これらのフレームワークは、スタック トレースのキャプチャなどの包括的なロギング機能を提供します。

// NLog example
var logger = LogManager.GetCurrentClassLogger();
logger.Debug("Stack Trace:\n{0}", t.ToString());

以上が.NET アプリケーションでスタック トレースを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。