StreamInsight 2.0で例外を処理するためのベストプラクティスは何ですか?
例外が発生した場合(イベントの欠落については話していませんが、コード内のNullReferenceExceptionのような実際の例外については)、すべてが非同期で実行されることを考慮して、どのように処理し、アプリケーションを安全に停止しますか?
StreamInsight 2.0で例外を処理するためのベストプラクティスは何ですか?
例外が発生した場合(イベントの欠落については話していませんが、コード内のNullReferenceExceptionのような実際の例外については)、すべてが非同期で実行されることを考慮して、どのように処理し、アプリケーションを安全に停止しますか?
アプリケーションが例外を処理する方法は、アプリケーションが何を行うべきかによって異なります。少なくとも、例外をログに記録します。レガシー アダプタ モデルを使用している場合、クエリの例外によってクエリが「中止」状態になります。StreamInsight 2.1 Rx ソース/シンク モデルを使用している場合は、シンクで IObservable.OnError メソッドを使用して例外を処理できます。優れたテストとコードの防御的な記述は、成功への大きな道のりです。
StreamInsight の IObservable および IEnumerable インターフェイスに関する詳細情報