• EnglishEspañol日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Crea una propuesta

noticeError

Sintaxis

newrelic.noticeError(error object $error, [object $customAttributes])

Identifica un error browser sin interrumpir las operaciones de su aplicación.

Requisitos

Descripción

Utilice esta llamada para notar o log los errores manejados por su aplicación u otros errores diversos. Esto es útil cuando ha detectado y manejado un error, pero aún desea identificarlo sin interrumpir el funcionamiento de su aplicación.

También puede utilizar la API para detectar errores que, de otro modo, se informarían sin ningún detalle, como errores que ocurren durante la inicialización del script o en un controlador de eventos en línea. Los errores aparecerán en la páginaErrors junto con otros errores que New Relic normalmente detecta. También se registrarán como un eventoJavaScriptError . Por ejemplo:

var err = new Error('Report caught error to New Relic');
newrelic.noticeError(err);

Nota: Si se envían más de 1000 eventos JavaScriptError en una sola solicitud, solo se registran 1000 eventos por separado. Sin embargo, el número total de eventos se conserva internamente y se puede acceder a él mediante la cláusula de consultaEXTRAPOLATE .

Parámetros

Parámetro

Descripción

$error

objeto de error

Requerido. Proporcione un mensaje de error significativo que pueda utilizar al analizar datos en la páginaErrors del navegador.

$customAttributes objeto

Opcional. Un objeto que contiene pares de nombre/valor que representan un atributo personalizado.

Ejemplos

Errores no críticos

Este ejemplo muestra cómo utilizar la API newrelic.noticeError para informar errores detectados que no desea que interrumpan su aplicación. Esto es útil cuando los errores no críticos no tienen un impacto en la experiencia del usuario, pero aun así deseas informarlos a los desarrolladores. El código de ejemplo utiliza de forma segura un objeto foo predeterminado en caso de que el JSON sea incorrecto.

var foo;
try {
foo = JSON.parse('{ "bar"');
} catch (err) {
//Report caught error to New Relic
newrelic.noticeError(err);
foo = { bar: 'default value' };
}
alert(foo.bar);

Devolución de llamada con error opcional

Este ejemplo muestra cómo informar un error a New Relic cuando se utiliza el patrón de error y respuesta devolución de llamada popularizado por Node.js y común en el desarrollo de Browserify. Puede reemplazar alert(body); con su propio mensaje relevante.

var xhr = require('xhr');
xhr('http://localhost:8080', function(err, resp, body) {
//Report unthrown error to New Relic
if (err) return newrelic.noticeError(err);
//Handle successful response
alert(body);
});

Ejemplo de API basada en promesas

Las promesas proporcionan un patrón único para manejar la interacción asincrónica, lo que facilita el manejo de errores asincrónicos. Sin embargo, esto también hace que sea fácil omitir el error por completo, dejando la aplicación defectuosa de maneras que los desarrolladores no pueden ver. Este ejemplo informa esos errores asincrónicos a New Relic para evitar que se pasen por alto.

var rest = require('rest');
rest('/').then(function(res) {
//Handle successful response
alert(res.entity);
}, function(err) {
//Report unthrown error to New Relic
newrelic.noticeError(err);
});

Ejemplo de captura de atributo personalizado

try {
// code that throws an error
} catch (err) {
newrelic.noticeError(err, { attribute1: 'value1', attribute2: 2 });
}

Limitaciones browser (solo Apple Safari y Microsoft Internet Explorer)

Si no se arroja un error, no tendrá un rastreo del stack. Si desea que la API newrelic.noticeError informe un rastreo del stack con todos los tipos browser , debe generar manualmente y luego detectar el error antes de pasarlo a la API.

try {
throw errorObject;
} catch (err) {
newrelic.noticeError(err);
}
Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.