MVVM パターンを使用して WPF アプリケーションを開発しています。
バグにつながるシナリオを再生できるように、使用状況データを収集できるようにしたいと考えています。
ビューモデルはユーザー インタラクション データが入る場所であるため、開始する場所であると想定しています。
私の考えは、重要なデータとともにすべてのプロパティとメソッドの呼び出しを記録することから始めることです。どう思いますか ?共有する経験はありますか?
ティア。
MVVM パターンを使用して WPF アプリケーションを開発しています。
バグにつながるシナリオを再生できるように、使用状況データを収集できるようにしたいと考えています。
ビューモデルはユーザー インタラクション データが入る場所であるため、開始する場所であると想定しています。
私の考えは、重要なデータとともにすべてのプロパティとメソッドの呼び出しを記録することから始めることです。どう思いますか ?共有する経験はありますか?
ティア。
おそらく、それらのログがどれだけ詳細に必要かによって異なります...すべてのプロパティとメソッド呼び出しをログに記録すると、パフォーマンスに影響を与える可能性があります。
また、プロパティにバインドすると、CLR プロパティを介してではなく、GetValue
直接呼び出されるため、すべての呼び出しを実際に取得することはできません...
いずれにせよ、ViewModel をログに記録するという概念は良いものです。すべての VM が何らかの種類の から継承しているViewModelBase
場合、そこに配置すると、ロギングを簡単に実装できます。
log4netなどの専用のロギング ツールを使用することから始めることをお勧めします。用途:
いつでも EVERY 関数への EVERY 呼び出しをログに記録できますが、代わりに途中でウェイポイントをログに記録する方が簡単かもしれません。