Sintaxis
Java
NewRelic.startInteraction(string $interactionName)
Kotlin [#kotlin]
NewRelic.startInteraction(actionName: String)
Descripción [#description]
Cree una interacción para instrumentar un método en el código de su aplicación de Android.
Para nombrar una interacción que ya existe y de la que ya se está realizando un seguimiento, consulte setInteractionName()
.
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Valores de retorno [#return-values]
Devuelve un número de identificación de interacción que se puede utilizar para finalizar la interacción en un momento determinado.
Ejemplo [#example]
A continuación se muestra un ejemplo de cómo comenzar a realizar el seguimiento de una interacción denominada RefreshContacts
:
Java [#java]
public class MainActivity extends Activity { ... @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_refresh: NewRelic.startInteraction("RefreshContacts"); ... return true; default: return super.onOptionsItemSelected(item); } } ...}
Kotlin [#kotlin]
class MainActivity : AppCompatActivity() {
... var client: OkHttpClient = OkHttpClient();
binding.fab.setOnClickListener { view ->
val interActionId = NewRelic.startInteraction("Getting Data From Server")
lifecycleScope.launch(Dispatchers.IO) { val result = getRequest() NewRelic.endInteraction(interActionId) } } } ...
Sintaxis
C objetivo
+ (NSString*) startInteractionWithName:(NSString*)interactionName;
Swift [#swift]
NewRelic.startInteraction(string: "myInteractionName")
Descripción [#description]
Este método iniciará una traza de interacción usando interactionName
como nombre. La interacción registrará todos los métodos instrumentados hasta que se agote el tiempo de espera o se llame a stopCurrentInteraction
.
Para nombrar una interacción que ya existe y de la que ya se está realizando un seguimiento, consulte setInteractionName()
.
Sugerencia
Si utiliza estos métodos, la interacción instrumentada no aparecerá en la página de interacción , pero aún se pueden encontrar con una consulta NRQL, como por ejemplo:
SELECT name FROM Mobile SINCE 7 DAYS AGO
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Valores de retorno [#return-values]
Si se llama a startInteractionWithName
, el valor de retorno es un interactionIdentifier
que se debe pasar a stopCurrentInteraction
. Pero no es necesario llamar stopCurrentInteraction
después de llamar a start porque startInteractionWithName
eventualmente se completará de manera inteligente.
Ejemplos [#examples][#examples]
Objective-C [#obj-c]
NSString *identifier = [NewRelic startInteractionWithName: @"myInteractionName"];[NewRelic stopCurrentInteraction: identifier];
Swift [#swift]
let identifier = NewRelic.startInteraction(withName: "myInteractionName")NewRelic.stopCurrentInteraction(identifier)
Sintaxis
startInteraction(options: { value: string; }) => Promise<{ value: string; }>
Descripción [#description]
Seguimiento de un método como una interacción.
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Ejemplo [#example]
const badApiLoad = async () => { const id = await NewRelicCapacitorPlugin.startInteraction({ value: 'StartLoadBadApiCall' }); console.log(id); const url = 'https://fakewebsite.com/moviessssssssss.json'; fetch(url) .then((response) => response.json()) .then((responseJson) => { console.log(responseJson); NewRelicCapacitorPlugin.endInteraction({ interactionId: id.value }); }) .catch((error) => { NewRelicCapacitorPlugin.endInteraction({ interactionId: id.value }); console.error(error); });};
Sintaxis
startInteraction(interactionName: string, cb?: function): Promise<InteractionId>;
Descripción [#description]
Seguimiento de un método como una interacción.
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Ejemplo [#example]
const badApiLoad = async () => { const interactionId = await NewRelic.startInteraction('StartLoadBadApiCall'); console.log(interactionId); const url = 'https://cordova.apache.org/moviessssssssss.json'; fetch(url) .then((response) => response.json()) .then((responseJson) => { console.log(responseJson); NewRelic.endInteraction(interactionId); }) .catch((error) => { NewRelic.endInteraction(interactionId); console.error(error); });}
Sintaxis
StartInteraction(string interactionName): string;
Descripción [#description]
Seguimiento de un método como una interacción.
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Ejemplo [#example]
HttpClient myClient = new HttpClient(CrossNewRelic.Current.GetHttpMessageHandler());
string interactionId = CrossNewRelic.Current.StartInteraction("Getting data from service");
var response = await myClient.GetAsync(new Uri("https://jsonplaceholder.typicode.com/todos/1"));if (response.IsSuccessStatusCode){ var content = await response.Content.ReadAsStringAsync();} else{ Console.WriteLine("Unsuccessful response code");}
CrossNewRelic.Current.EndInteraction(interactionId);
Sintaxis
startInteraction(String actionName);
Descripción [#description]
Seguimiento de un método como una interacción.
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Ejemplo [#example]
var id = await NewrelicMobile.instance.startInteraction("Getting Data from Service");
try { var dio = Dio(); var response = await dio.get( 'https://reqres.in/api/users?delay=15'); print(response); NewrelicMobile.instance.endInteraction(id); Timeline.finishSync();} catch (e) { print(e);}
Sintaxis
startInteraction(interactionName: string): Promise<InteractionId>;
Descripción [#description]
Seguimiento de un método como una interacción.
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Ejemplo [#example]
const badApiLoad = async () => { const interactionId = await NewRelic.startInteraction('StartLoadBadApiCall'); console.log(interactionId); const url = 'https://facebook.github.io/react-native/moviessssssssss.json'; fetch(url) .then((response) => response.json()) .then((responseJson) => { console.log(responseJson); NewRelic.endInteraction(interactionId); }) .catch((error) => { NewRelic.endInteraction(interactionId); console.error(error); });;};
Sintaxis
StartInteractionWithName(string interactionName): string;
Descripción [#description]
Seguimiento de un método como una interacción.
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Ejemplo [#example]
string interActionId = NewRelicAgent.StartInteractionWithName("Unity InterAction Example");
for(int i = 0; i < 4; i++){ Thread.Sleep(1000);}
NewRelicAgent.StopCurrentInteraction(interActionId);
Sintaxis
startInterAction(FString interActionName):FString;
Descripción [#description]
Seguimiento de un método como una interacción.
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Ejemplo [#example]
#include "NewRelicBPLibrary.h"
FString id = UNewRelicBPLibrary::startInterAction("test Unreal InterAction");
FPlatformProcess::Sleep(6.0);
UNewRelicBPLibrary::endInterAction(id);
Sintaxis
StartInteraction(string interactionName): string;
Descripción [#description]
Seguimiento de un método como una interacción.
Parámetros [#parameters]
Parámetro | Tipo | Descripción |
---|---|---|
|
| Requerido. El nombre que le quieres dar a la interacción. |
Ejemplo [#example]
HttpClient myClient = new HttpClient(CrossNewRelicClient.Current.GetHttpMessageHandler());
string interactionId = CrossNewRelicClient.Current.StartInteraction("Getting data from service");
var response = await myClient.GetAsync(new Uri("https://jsonplaceholder.typicode.com/todos/1"));if (response.IsSuccessStatusCode){ var content = await response.Content.ReadAsStringAsync();} else{ Console.WriteLine("Unsuccessful response code");}
CrossNewRelicClient.Current.EndInteraction(interactionId);