Sobrecargas
Observe um erro e reporte à New Relic, juntamente com um atributo personalizado opcional.
NewRelic.Api.Agent.NewRelic.NoticeError(Exception $exception);NewRelic.Api.Agent.NewRelic.NoticeError(Exception $exception, IDictionary<TKey, TValue> $attributes);NewRelic.Api.Agent.NewRelic.NoticeError(string $error_message, IDictionary<TKey, TValue> $attributes);NewRelic.Api.Agent.NewRelic.NoticeError(string $error_message, IDictionary<TKey, TValue> $attributes, bool $is_expected);
Requisitos
Esta chamada de API é compatível com:
- Todas as versões do agente
- Todos os tipos de aplicativos
Descrição
Observe um erro e relate-o à New Relic junto com um atributo personalizado opcional. Para cada transação, o agente retém apenas a exceção e o atributo da primeira chamada para NoticeError()
. Você pode passar uma exceção real ou uma string para capturar uma mensagem de erro arbitrária.
Se este método for invocado em uma transação, o agente reportará a exceção na transação pai. Se for invocado fora de uma transação, o agente criará um tracede erro e categorizará o erro na interface do New Relic como uma chamada de API NewRelic.Api.Agent.NoticeError
. Se invocada fora de uma transação, a chamada NoticeError()
não contribuirá para a taxa de erros de um aplicativo.
O agente adiciona o atributo apenas ao erro de rastreamento; não os envia para a New Relic. Para obter mais informações, consulte AddCustomAttribute()
.
Os erros relatados com esta API ainda são enviados para a New Relic quando são relatados em uma transação que resulta em um código de status HTTP, como 404
, configurado para ser ignorado pela configuração do agente. Para obter mais informações, consulte nossa documentação sobre gerenciamento de erros no APM.
Revise as seções abaixo para ver exemplos de como usar esta chamada.
NoticeError (Exceção)
NewRelic.Api.Agent.NewRelic.NoticeError(Exception $exception)
Parâmetro | Descrição |
---|---|
Exceção | Obrigatório. O |
NoticeError(Exception, IDictionary)
NewRelic.Api.Agent.NewRelic.NoticeError(Exception $exception, IDictionary<TKey, TValue> $attributes)
Parâmetro | Descrição |
---|---|
Exceção | Obrigatório. O |
IDictionary<TKey, TValue> | Especifique pares de valor principal de atributo para anotar a mensagem de erro. O |
NoticeError(String, IDictionary)
NewRelic.Api.Agent.NewRelic.NoticeError(string $error_message, IDictionary<TKey, TValue> $attributes)
Parâmetro | Descrição |
---|---|
corda | Obrigatório. Especifique uma string para reportar ao New Relic como se fosse uma exceção. Este método cria eventos de erro e rastreamentos de erro. Somente os primeiros 1.023 caracteres são retidos no evento de erro, enquanto o rastreamento de erro retém a mensagem completa. |
IDictionary<TKey, TValue> | Obrigatório (pode ser nulo). Especifique pares de valor principal de atributo para anotar a mensagem de erro. O |
NoticeError(String, IDictionary, bool)
NewRelic.Api.Agent.NewRelic.NoticeError(string $error_message, IDictionary<TKey, TValue> $attributes, bool $is_expected)
Parâmetro | Descrição |
---|---|
corda | Obrigatório. Especifique uma string para reportar ao New Relic como se fosse uma exceção. Este método cria eventos de erro e rastreamentos de erro. Somente os primeiros 1.023 caracteres são retidos no evento de erro, enquanto o rastreamento de erro retém a mensagem completa. |
IDictionary<TKey, TValue> | Obrigatório (pode ser nulo). Especifique pares de valor principal de atributo para anotar a mensagem de erro. O |
bool | Marque o erro como esperado para que não afete a pontuação do Apdex e a taxa de erros. |
Passe uma exceção sem atributo personalizado
try{ string ImNotABool = "43"; bool.Parse(ImNotABool);}catch (Exception ex){ NewRelic.Api.Agent.NewRelic.NoticeError(ex);}
Passe uma exceção com atributo personalizado
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);}
Passar uma string de mensagem de erro com atributo personalizado
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);}
Passar uma string de mensagem de erro sem atributo personalizado
try{ string ImNotABool = "43"; bool.Parse(ImNotABool);}catch (Exception ex){ NewRelic.Api.Agent.NewRelic.NoticeError("String error message", null);}
Passe uma string de mensagem de erro e marque-a como esperado
try{ string ImNotABool = "43"; bool.Parse(ImNotABool);}catch (Exception ex){ NewRelic.Api.Agent.NewRelic.NoticeError("String error message", null, true);}