Vous pouvez configurer de nombreux paramètres pour Infinite Tracing avec l'application Paramètres Infinite Tracing. Vous pouvez également effectuer diverses de ces tâches de configuration à l’aide de GraphQL. Avec notre explorateur NerdGraph GraphiQL, vous pouvez exécuter et voir les résultats des requêtes et des mutations pour configuration Infinite Tracing. Ce document explique certaines des options disponibles.
Conseil
Si vous avez besoin d’aide pour démarrer avec GraphQL, consultez Introduction à New Relic NerdGraph.
Mettre à jour l'échantillonneur aléatoire sur un observateur de trace
Comme décrit dans notre documentation sur les algorithmes d'échantillonnage en fin de workflow, Infinite Tracing choisit plusieurs manières d'échantillonner une trace. L'échantillonneur aléatoire est configurable, vous permettant de contrôler le pourcentage de trace conservé.
Conseil
Si vous avez besoin d'aide sur le moment approprié pour modifier le filtre aléatoire, consultez Traçage infini : filtre de traçage aléatoire.
L'exemple suivant vous montre comment mettre à jour la valeur par défaut de 1 % :
Accédez à l'explorateur NerdGraph GraphiQL à l'adresse api.newrelic.com/graphiql.
Exécutez la requête suivante pour trouver l’observateur de trace qui contient l’échantillonneur aléatoire à modifier :
{actor {account(id: YOUR_ACCOUNT_ID) {edge {tracing {traceObservers {idnameproviderRegionstatustraceFilters {randomTraceFilter {percentKept}}endpoints {agent {host}}}}}}}}Dans la réponse, recherchez l’observateur de trace
id
. Voici un exemple où la valeur est123456789
:{"data": {"actor": {"account": {"edge": {"tracing": {"traceObservers": [{"endpoints": [{"agent": {"host": "YOUR_UUID_GOES_HERE.aws-us-east-1.tracing.edge.nr-data.net"}}],"id": 123456789,"name": "Production Workload, US-EAST-1","providerRegion": "AWS_US_EAST_1","status": "CREATED","traceFilters": {"randomTraceFilter": {"percentKept": 1}}}]}}}}}}Exécutez une mutation en utilisant le
id
et le pourcentage que vous souhaitez conserver. Par exemple, pour augmenter la valeur à 50 % pour l'observateur de trace avec l'ID123456789
que nous avons trouvé à l'étape précédente, exécutez la commande suivante :mutation {edgeUpdateTraceObservers(accountId: YOUR_ACCOUNT_IDtraceObserverConfigs: {id: 123456789randomTraceFilterConfig: { percentKept: 50 }}) {responses {errors {messagetype}traceObserver {traceFilters {randomTraceFilter {percentKept}}idendpoints {agent {host}}namestatus}}}}
Voici la réponse confirmant le changement :
{ "data": { "edgeUpdateTraceObservers": { "responses": [ { "errors": null, "traceObserver": { "endpoints": [ { "agent": { "host": "YOUR_UUID_GOES_HERE.aws-us-east-1.tracing.edge.nr-data.net" } } ], "id": 123456789, "name": "Production Workload, US-EAST-1", "status": "CREATED", "traceFilters": { "randomTraceFilter": { "percentKept": 50 } } } } ] } }}
Mettre à jour les sources de données sur un observateur de trace
Alors que certaines entités peuvent être configurées pour envoyer leurs données de traçage directement à un observateur trace Infinite Tracing, d'autres peuvent faire acheminer leurs données par New Relic vers un observateur trace . Actuellement, nous prenons en charge cette fonctionnalité pour les entités mobiles, navigateurs et Lambda . Dans le contexte du traçage infini, nous appelons ces sources de données d'entité.
Conseil
Si vous avez besoin d'aide sur les sources de données dans l'observateur de trace, consultez Configurer l'observateur de trace.
Il existe trois manières de mettre à jour les sources de données sur un observateur de trace :
- ADD: Si vous souhaitez ajouter de nouvelles sources de données à celles existantes sur un observateur de trace, utilisez
ADD
DataSourceGroupUpdateType
. Aucune source de données ne sera supprimée avec cette mutation. - REPLACE: Si vous souhaitez remplacer vos sources de données existantes sur un observateur de trace par un nouvel ensemble de valeurs, utilisez
REPLACE
DataSourceGroupUpdateType
. Toutes les valeurs existantes qui ne font pas partie du nouvel ensemble auront leur statut défini surINACTIVE
. - REMOVE: Si vous souhaitez supprimer une ou plusieurs de vos sources de données existantes sur un observateur de trace, utilisez
REMOVE
DataSourceGroupUpdateType
. Toutes les valeurs transmises auront leur statut défini surINACTIVE
.
L'exemple suivant vous montre comment ajouter des éléments aux sources de données existantes :
Accédez à l'explorateur NerdGraph GraphiQL à l'adresse api.newrelic.com/graphiql.
Exécutez la requête suivante pour trouver l’observateur de trace qui contient le groupe de sources de données que vous souhaitez modifier :
{actor {account(id: YOUR_ACCOUNT_ID) {edge {tracing {traceObservers {idnamedataSourceGroup {dataSources {entity {guidnameentityType}status}}endpoints {agent {host}}}}}}}}Dans la réponse, recherchez l’observateur de trace
id
. Voici un exemple avec deux observateurs trace . Disons que vous voulez celui de US-EAST-1 appelé « Services de production », dont la valeurid
est259
:{"data": {"actor": {"account": {"edge": {"tracing": {"traceObservers": [{"dataSourceGroup": {"dataSources": [{"entity": {"entityType": "BROWSER_APPLICATION_ENTITY","guid": "MXxCUk9XU0VSfEFQUExJQ0FUSU9OfDE","name": "My 1st Browser App"},"status": "ACTIVE"},{"entity": {"entityType": "MOBILE_APPLICATION_ENTITY","guid": "MXxNT0JJTEV8QVBQTElDQVRJT058Mg","name": "My 1st iOS App"},"status": "ACTIVE"},{"entity": {"entityType": "INFRASTRUCTURE_AWS_LAMBDA_FUNCTION_ENTITY","guid": "MXxJTkZSQXxOQXwz","name": "My 1st Lambda Function"},"status": "ACTIVE"}]},"endpoints": [{"agent": {"host": "YOUR_UUID_GOES_HERE.aws-us-east-1.tracing.edge.nr-data.net"}}],"id": 259,"name": "Production services"},{"dataSourceGroup": {"dataSources": [{"entity": {"entityType": "BROWSER_APPLICATION_ENTITY","guid": "MXxCUk9XU0VSfEFQUExJQ0FUSU9OfDEw","name": "My Staging Browser App"},"status": "ACTIVE"},{"entity": {"entityType": "MOBILE_APPLICATION_ENTITY","guid": "MXxNT0JJTEV8QVBQTElDQVRJT058MTE","name": "My Staging Android App"},"status": "ACTIVE"},{"entity": {"entityType": "INFRASTRUCTURE_AWS_LAMBDA_FUNCTION_ENTITY","guid": "MXxJTkZSQXxOQXwxMg","name": "My Staging Lambda Function"},"status": "ACTIVE"}]},"endpoints": [{"agent": {"host": "YOUR_UUID_GOES_HERE.aws-us-west-2.tracing.edge.nr-data.net"}}],"id": 632,"name": "Staging Environment"}]}}}}}}Exécutez une mutation en utilisant l'ID, un ou plusieurs GUID d'entité et si vous souhaitez les
ADD
,REPLACE
ouREMOVE
. Par exemple, pour ajouter une nouvelle application de navigateur et une application mobile à l'observateur de traceProduction services
avec l'ID259
, que nous avons trouvé à l'étape précédente, exécutez la commande suivante :mutation {edgeUpdateTraceObservers(traceObserverConfigs: {id: 259dataSourceGroupConfig: {updateType: ADDguids: ["MXxCUk9XU0VSfEFQUExJQ0FUSU9OfDQ5""MXxNT0JJTEV8QVBQTElDQVRJT058MTY"]}}accountId: 1) {responses {errors {messagetype}traceObserver {dataSourceGroup {dataSources {entity {guidname}status}}}}}}
Voici la réponse confirmant le changement :
{ "data": { "edgeUpdateTraceObservers": { "responses": [ { "errors": null, "traceObserver": { "dataSourceGroup": { "dataSources": [ { "entity": { "guid": "MXxCUk9XU0VSfEFQUExJQ0FUSU9OfDE", "name": "My 1st Browser App" }, "status": "ACTIVE" }, { "entity": { "guid": "MXxNT0JJTEV8QVBQTElDQVRJT058Mg", "name": "My 1st iOS App" }, "status": "ACTIVE" }, { "entity": { "guid": "MXxJTkZSQXxOQXwz", "name": "My 1st Lambda Function" }, "status": "ACTIVE" }, { "entity": { "guid": "MXxCUk9XU0VSfEFQUExJQ0FUSU9OfDQ5", "name": "My 2nd Browser App" }, "status": "ACTIVE" }, { "entity": { "guid": "MXxNT0JJTEV8QVBQTElDQVRJT058MTY", "name": "My 2nd Mobile App" }, "status": "ACTIVE" } ] } } } ] } }}
Mettre à jour le nom sur un observateur de trace
Voici comment vous pouvez modifier le nom d’un observateur de trace :
Accédez à l'explorateur NerdGraph GraphiQL à l'adresse api.newrelic.com/graphiql.
Recherchez l'observateur de trace dont vous souhaitez mettre à jour le nom :
{actor {account(id: YOUR_ACCOUNT_ID) {edge {tracing {traceObservers {idnameproviderRegionstatusendpoints {agent {host}}}}}}}}Dans la réponse, recherchez l'observateur de trace
id
qui est renvoyé :{"data": {"actor": {"account": {"edge": {"tracing": {"traceObservers": [{"endpoints": [{"agent": {"host": "YOUR_UUID_GOES_HERE.aws-us-east-1.tracing.edge.nr-data.net"}}],"id": 123456789,"name": "Production Workload, US-EAST-1","providerRegion": "AWS_US_EAST_1","status": "CREATED"}]}}}}}}Exécutez une mutation qui inclut la nouvelle valeur du nom. Par exemple, pour modifier le nom en
Global Workload, US-EAST-1
pour l'observateur de trace avec l'ID123456789
, exécutez la commande suivante :mutation {edgeUpdateTraceObservers(accountId: YOUR_ACCOUNT_IDtraceObserverConfigs: { id: 123456789, name: "Global Workload, US-EAST-1" }) {responses {errors {messagetype}traceObserver {idendpoints {agent {host}}namestatus}}}}
Voici la réponse confirmant le changement :
{ "data": { "edgeUpdateTraceObservers": { "responses": [ { "errors": null, "traceObserver": { "endpoints": [ { "agent": { "host": "YOUR_UUID_GOES_HERE.aws-us-east-1.tracing.edge.nr-data.net" } } ], "id": 123456789, "name": "Global Workload, US-EAST-1", "status": "CREATED" } } ] } }}