構文
NewRelic.Api.Agent.NewRelic.NoticeError(exception $exception[, IDictionary $attributes])NewRelic.Api.Agent.NewRelic.NoticeError(string $error_message, IDictionary $attributes)NewRelic.Api.Agent.NewRelic.NoticeError(string $error_message, IDictionary $attributes, bool $is_expected)
エラーを通知し、オプションのカスタム属性とともに、New Relicに報告します。
要件
すべてのAgentバージョンに対応しています。
すべてのアプリタイプに対応しています。
説明
エラーに気づき、オプションのカスタム属性とともにNewRelicに報告してください。トランザクションごとに、エージェントはNoticeError()
への最初の呼び出しからの例外と属性のみを保持します。実際の例外を渡すか、文字列を渡して任意のエラーメッセージをキャプチャできます。
このメソッドがトランザクション内で呼び出された場合、エージェントは親トランザクション内で例外を報告します。トランザクションの外部で呼び出された場合、エージェントはエラートレースを作成し、NewRelicUIでエラーをNewRelic.Api.Agent.NoticeError
API呼び出しとして分類します。トランザクションの外部で呼び出された場合、 NoticeError()
呼び出しはアプリケーションのエラー率に影響しません。
エージェントは、トレースされたエラーにのみ属性を追加します。 NewRelicには送信されません。詳細については、 AddCustomAttribute()
を参照してください。
このAPIで報告されたエラーは、エージェント構成によって無視されるように構成された404
などのHTTPステータスコードをもたらすトランザクション内で報告された場合でも、NewRelicに送信されます。詳細については、APMでのエラーの管理に関するドキュメントを参照してください。
パラメーター
パラメータ | 説明 |
---|---|
| |
例外 | 必須。計測したい例外。スタックトレースの最初の10,000文字のみが保持されます。 |
IDictionary | オプションです。エラー・メッセージに注釈を付ける属性のキー/値のペアを指定します。 |
| |
ストリング | 必須。例外であるかのようにNewRelicに報告する文字列を指定します。このメソッドは、エラーイベントとエラートレースの両方を作成します。エラーイベントでは最初の1023文字のみが保持され、エラートレースではメッセージ全体が保持されます。 |
IDictionary | 必須(nullの場合もあります)。エラーメッセージに注釈を付けるには、属性のキーと値のペアを指定します。属性を送信しない場合は、 |
| |
ストリング | 必須。例外であるかのようにNewRelicに報告する文字列を指定します。このメソッドは、エラーイベントとエラートレースの両方を作成します。エラーイベントでは最初の1023文字のみが保持され、エラートレースではメッセージ全体が保持されます。 |
IDictionary | 必須(nullの場合もあります)。エラーメッセージに注釈を付けるには、属性のキーと値のペアを指定します。属性を送信しない場合は、 |
bool | Apdexのスコアやエラーレートに影響を与えないように、エラーを予想通りにマークします。 |
例
カスタム属性を持たない例外を渡す
try{ string ImNotABool = "43"; bool.Parse(ImNotABool);}catch (Exception ex){ NewRelic.Api.Agent.NewRelic.NoticeError(ex);}
カスタム属性を持つ例外を渡す
try{ string ImNotABool = "43"; bool.Parse(ImNotABool);}catch (Exception ex){ var errorAttributes = new Dictionary<string, string>() {{"foo", "bar"},{"baz", "luhr"}}; NewRelic.Api.Agent.NewRelic.NoticeError(ex, errorAttributes);}
カスタム属性を持つエラーメッセージ文字列を渡す
try{ string ImNotABool = "43"; bool.Parse(ImNotABool);}catch (Exception ex){ var errorAttributes = new Dictionary<string, string>{{"foo", "bar"},{"baz", "luhr"}}; NewRelic.Api.Agent.NewRelic.NoticeError("String error message", errorAttributes);}
カスタム属性のないエラーメッセージ文字列を渡す
try{ string ImNotABool = "43"; bool.Parse(ImNotABool);}catch (Exception ex){ NewRelic.Api.Agent.NewRelic.NoticeError("String error message", null);}
エラーメッセージ文字列を渡し、期待通りのマークを付ける
try{ string ImNotABool = "43"; bool.Parse(ImNotABool);}catch (Exception ex){ NewRelic.Api.Agent.NewRelic.NoticeError("String error message", null, true);}