Sintaxis
Java
NewRelic.recordHandledException(Exception $exceptionToHandle)NewRelic.recordHandledException(Exception $exceptionToHandle, Map of String, Object $exceptionAttributes)
NewRelic.recordHandledException(Throwable $throwableToHandle)NewRelic.recordHandledException(Throwable $throwableToHandle, Map of String, Object $exceptionAttributes)
Kotlin [#android-syntax-kotlin]
NewRelic.recordHandledException( exception: Exception?, exceptionAttributes: Map<String?, Any?>?)
NewRelic.recordHandledException(throwable: Throwable?)NewRelic. recordHandledException( throwable: Throwable?, attributes: Map<String?, Any?>?)
Descripción [#android-description]
Registra una excepción manejada u otro tipo que se puede lanzar. Opcionalmente toma un mapa con un atributo adicional que muestra el contexto.
Utilice recordHandledException()
dentro de un bloque try{...} catch(){...}
para ayudar a comprender con qué frecuencia su aplicación genera excepciones y bajo qué condiciones.
Además del atributo personalizado asociado, el evento también tendrá asociado el atributo de sesión. Puede ver los datos del evento en la UI de monitoreo de móviles en la traza de evento de Crash, o vía NRQL.
Parámetros [#android-parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. La excepción que debe registrarse. |
|
| Opcional. Un mapa de atributo que se asociará con la excepción. |
Valores de retorno [#android-return-values]
Devuelve true
si se registró correctamente, o false
en caso contrario.
Ejemplos [#android-examples]
A continuación se muestra un ejemplo de grabación de un ClassCastException
desde un detector al hacer clic:
Java [#android-examples-java]
public class MainActivity extends Activity { ... coolButton.setOnClickListener(new View.OnClickListener() { Map myMap = new HashMap<>(); @Override public void onClick(View view) { try { myMap.put("Key", "Value"); Integer stringVar = (Integer) myMap.get("Key"); // throws ClassCastException } catch(Exception e) { NewRelic.recordHandledException(e, myMap); } } }); ...}
Kotlin [#android-examples-kotlin]
class MainActivity : AppCompatActivity() { ... binding.fab.setOnClickListener { view -> val myMap = mutableMapOf<String,Any>() try { myMap["Key"] = "Value" Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAnchorView(R.id.fab) .setAction("Action", null).show() } catch(exception:Exception) { NewRelic.recordHandledException(exception,myMap) } } ...}
Sintaxis
C objetivo
recordHandledException:(NSException* __nonnull)exception withAttributes:(NSDictionary* __nullable)attributes;
Descripción [#ios-description]
Registra una excepción manejada (solo Objective-c). Opcionalmente toma un mapa con un atributo adicional que muestra el contexto.
La API recordHandledException
es útil para el análisis de fallos; El evento capturado lo ayudará a comprender con qué frecuencia su aplicación genera excepciones y bajo qué condiciones. Además del atributo personalizado asociado, el evento también tendrá asociado el atributo de sesión.
Esta API toma una instancia de un NSException
y un diccionario de atributos NSDictionary
opcional, luego crea un evento recordHandledException
. Puede ver los datos del evento en la UI de Crash traza de evento y consultarlos con NRQL.
Importante
Esta función no debe emplear con código Swift. Emplee recordError
para realizar un seguimiento de los errores manejados en el código Swift.
Parámetros [#ios-parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. La excepción que debe registrarse. |
|
| Opcional. Diccionario de atributos que dan contexto. |
Valores de retorno [#ios-return-values]
Devuelve true
si el evento se registra correctamente, o false
en caso contrario.
Ejemplos [#ios-examples]
A continuación se muestra un ejemplo de una excepción manejada simple:
try { @throw [NSException exceptionWithName:@"versionException" reason:@"App version no longer supported" userInfo:nil];} @catch(NSException* e) { [NewRelic recordHandledException:e];}
Aquí hay otro ejemplo o una excepción manejada con un diccionario:
NSException* exception = [NSException exceptionWithName:@"MyException" reason:@"I have my reason" userInfo:nil];
NSDictionary* dictionary = @{@"int" : @1, @"Test Group" : @"A | B"};
[NewRelic recordHandledException:exception withAttributes:dictionary];
Sintaxis
recordError(error, StackTrace.current, attributes: attributes);
Descripción [#maui-description]
Registre manualmente las excepciones no fatales.
Parámetros [#maui-parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. La excepción que debe registrarse. |
Valores de retorno [#maui-return-values]
Devuelve true
si el evento se registra correctamente, o false
en caso contrario.
Ejemplo [#maui-example]
try { some_code_that_throws_error();} catch(ex) { NewrelicMobile.instance .recordError(error, StackTrace.current, attributes: attributes);}
Sintaxis
RecordException(System.Exception exception) : void;
Descripción [#unity-description]
Registra una excepción manejada. Opcionalmente toma un mapa con un atributo adicional que muestra el contexto.
Parámetros [#unity-parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. La excepción que debe registrarse. |
Valores de retorno [#unity-return-values]
Devuelve true
si el evento se registra correctamente, o false
en caso contrario.
Ejemplo [#unity-example]
try { some_code_that_throws_error();} catch(Exception ex) { CrossNewRelic.Current.RecordException(ex);}
Sintaxis
RecordException(System.Exception exception) : void;
Descripción [#xamarin-description]
Registre manualmente cualquier excepción manejada.
Parámetros [#xamarin-parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. La excepción que debe registrarse. |
Valores de retorno [#xamarin-return-values]
Devuelve true
si el evento se registra correctamente, o false
en caso contrario.
Ejemplo [#xamarin-example]
try { some_code_that_throws_error();} catch(Exception ex) { NewRelicAgent.RecordException(e);}