Syntaxe
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?>?)
Description [#android-description]
Enregistre une exception gérée ou un autre type jetable. Prend éventuellement une carte avec un attribut supplémentaire indiquant le contexte.
Utilisez recordHandledException()
dans un bloc try{...} catch(){...}
pour vous aider à comprendre à quelle fréquence votre application génère des exceptions et dans quelles conditions.
En plus de l'attribut personnalisé associé, l'événement aura également un attribut de session associé. Vous pouvez visualiser les données d'événements dans l'interface utilisateur monitoring des applications mobiles dans le Crash suivi des événements, ou via NRQL.
Paramètres [#android-parameters]
paramètres | Type | Description |
---|---|---|
|
| Requis. L'exception à enregistrer. |
|
| Facultatif. Une carte d’attribut à associer à l’exception. |
Valeurs de retour [#android-return-values]
Renvoie true
si l'enregistrement a réussi, ou false
dans le cas contraire.
Exemples [#android-examples]
Voici un exemple d'enregistrement d'un ClassCastException
à partir d'un écouteur au 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) } } ...}
Syntaxe
Objectif-C
recordHandledException:(NSException* __nonnull)exception withAttributes:(NSDictionary* __nullable)attributes;
Description [#ios-description]
Enregistre une exception gérée (Objective-c uniquement). Prend éventuellement une carte avec un attribut supplémentaire indiquant le contexte.
L'API recordHandledException
est utile pour l'analyse des plantages ; l'événement capturé vous aidera à comprendre à quelle fréquence votre application génère des exceptions et dans quelles conditions. En plus de l'attribut personnalisé associé, l'événement aura également un attribut de session associé.
Cette API prend une instance d'un dictionnaire d'attributs NSException
et NSDictionary
facultatif, puis crée un événement recordHandledException
. Vous pouvez afficher les données d'événement dans l'interface utilisateur de Crash suivi des événements et les requêter avec NRQL.
Important
Cette fonction ne doit pas être utilisée avec du code Swift. Veuillez utiliser recordError
pour suivre les erreurs traitées dans le code Swift.
Paramètres [#ios-parameters]
paramètres | Type | Description |
---|---|---|
|
| Requis. L'exception à enregistrer. |
|
| Facultatif. Dictionnaire des attributs qui donnent un contexte. |
Valeurs de retour [#ios-return-values]
Renvoie true
si l'événement est enregistré avec succès, ou false
dans le cas contraire.
Exemples [#ios-examples]
Voici un exemple d’exception simple gérée :
try { @throw [NSException exceptionWithName:@"versionException" reason:@"App version no longer supported" userInfo:nil];} @catch(NSException* e) { [NewRelic recordHandledException:e];}
Voici un autre exemple d'exception gérée avec un dictionnaire :
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];
Syntaxe
recordError(error, StackTrace.current, attributes: attributes);
Description [#maui-description]
Enregistrez manuellement les exceptions non fatales.
Paramètres [#maui-parameters]
paramètres | Type | Description |
---|---|---|
|
| Requis. L'exception à enregistrer. |
Valeurs de retour [#maui-return-values]
Renvoie true
si l'événement est enregistré avec succès, ou false
dans le cas contraire.
Exemple [#maui-example]
try { some_code_that_throws_error();} catch(ex) { NewrelicMobile.instance .recordError(error, StackTrace.current, attributes: attributes);}
Syntaxe
RecordException(System.Exception exception) : void;
Description [#unity-description]
Enregistre une exception gérée. Prend éventuellement une carte avec un attribut supplémentaire indiquant le contexte.
Paramètres [#unity-parameters]
paramètres | Type | Description |
---|---|---|
|
| Requis. L'exception à enregistrer. |
Valeurs de retour [#unity-return-values]
Renvoie true
si l'événement est enregistré avec succès, ou false
dans le cas contraire.
Exemple [#unity-example]
try { some_code_that_throws_error();} catch(Exception ex) { CrossNewRelic.Current.RecordException(ex);}
Syntaxe
RecordException(System.Exception exception) : void;
Description [#xamarin-description]
Enregistrez manuellement toutes les exceptions traitées.
Paramètres [#xamarin-parameters]
paramètres | Type | Description |
---|---|---|
|
| Requis. L'exception à enregistrer. |
Valeurs de retour [#xamarin-return-values]
Renvoie true
si l'événement est enregistré avec succès, ou false
dans le cas contraire.
Exemple [#xamarin-example]
try { some_code_that_throws_error();} catch(Exception ex) { NewRelicAgent.RecordException(e);}