Puede configurar muchas de las configuraciones de Infinite Tracing con la aplicación de configuración de Infinite Tracing. También puede realizar una variedad de estas tareas de configuración utilizando GraphQL. Con nuestro explorador NerdGraph GraphiQL puedes ejecutar y ver los resultados de consultas y mutaciones para la configuración de Infinite Tracing. Este documento explica algunas de las opciones que están disponibles.
Sugerencia
Si necesita ayuda para comenzar con GraphQL, consulte Introducción a New Relic NerdGraph.
Actualizar el muestreador aleatorio en un observador de traza.
Como se describe en nuestros documentos sobre los algoritmos de muestreo al final, hay varias formas en que Infinite Tracing elige tomar muestras de una traza. El muestreador aleatorio es configurable, permitiéndole controlar el porcentaje de traza guardada.
Sugerencia
Si necesitas ayuda sobre cuándo es apropiado cambiar el filtro aleatorio, consulta Infinite Tracing: Filtro de traza aleatorio.
El siguiente ejemplo le muestra cómo actualizar el valor predeterminado del 1%:
Vaya al explorador NerdGraph GraphiQL en api.newrelic.com/graphiql.
Ejecute la siguiente consulta para encontrar el observador de traza que contiene el muestreador aleatorio a modificar:
{actor {account(id: YOUR_ACCOUNT_ID) {edge {tracing {traceObservers {idnameproviderRegionstatustraceFilters {randomTraceFilter {percentKept}}endpoints {agent {host}}}}}}}}En la respuesta, busque el observador de traza
id
. Aquí hay un ejemplo donde el valor es123456789
:{"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}}}]}}}}}}Ejecute una mutación usando el
id
y el porcentaje que desea conservar. Por ejemplo, para aumentar el valor al 50% para el observador de traza con id123456789
que encontramos en el paso anterior, ejecute lo siguiente:mutation {edgeUpdateTraceObservers(accountId: YOUR_ACCOUNT_IDtraceObserverConfigs: {id: 123456789randomTraceFilterConfig: { percentKept: 50 }}) {responses {errors {messagetype}traceObserver {traceFilters {randomTraceFilter {percentKept}}idendpoints {agent {host}}namestatus}}}}
Aquí está la respuesta que confirma el cambio:
{ "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 } } } } ] } }}
Actualizar las fuentes de datos en un observador de traza
Si bien algunas entidades se pueden configurar para enviar sus datos de rastreo directamente a un observador de traza Infinite Tracing, New Relic puede enrutar sus datos a otras a un observador de traza. Actualmente, admitimos esta característica para dispositivos móviles, browser y entidades Lambda. En el contexto de Infinite Tracing, a estas entidades las llamamos fuentes de datos.
Sugerencia
Si necesita ayuda sobre las fuentes de datos en el observador de traza, consulte Configurar el observador de traza.
Hay tres formas de actualizar las fuentes de datos en un observador de traza:
ADD:
Si desea agregar nuevas fuentes de datos a las existentes en un observador de traza, utilice
ADD
DataSourceGroupUpdateType
. No se eliminarán fuentes de datos con esta mutación.REPLACE:
Si desea reemplazar sus fuentes de datos existentes en un observador de traza con un nuevo conjunto de valores, use
REPLACE
DataSourceGroupUpdateType
. Cualquier valor existente que no esté en el nuevo conjunto tendrá su estado establecido enINACTIVE
.REMOVE:
Si desea eliminar una o más de sus fuentes de datos existentes en un observador de traza, utilice
REMOVE
DataSourceGroupUpdateType
. Cualquier valor pasado tendrá su estado establecido enINACTIVE
.
El siguiente ejemplo le muestra cómo agregar a las fuentes de datos existentes:
Vaya al explorador NerdGraph GraphiQL en api.newrelic.com/graphiql.
Ejecute la siguiente consulta para encontrar el observador de traza que contiene el grupo de fuentes de datos que desea modificar:
{actor {account(id: YOUR_ACCOUNT_ID) {edge {tracing {traceObservers {idnamedataSourceGroup {dataSources {entity {guidnameentityType}status}}endpoints {agent {host}}}}}}}}En la respuesta, busque el observador de traza
id
. Aquí hay un ejemplo con dos observadores de traza. Supongamos que desea el que está en US-EAST-1 llamado "Servicios de producción", cuyo valorid
es259
:{"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"}]}}}}}}Ejecute una mutación utilizando el ID, uno o más guids de entidad y si desea
ADD
,REPLACE
oREMOVE
. Por ejemplo, para agregar una nueva aplicación browser y aplicación móvil al observador de trazaProduction services
con ID259
, que encontramos en el paso anterior, ejecute lo siguiente:mutation {edgeUpdateTraceObservers(traceObserverConfigs: {id: 259dataSourceGroupConfig: {updateType: ADDguids: ["MXxCUk9XU0VSfEFQUExJQ0FUSU9OfDQ5""MXxNT0JJTEV8QVBQTElDQVRJT058MTY"]}}accountId: 1) {responses {errors {messagetype}traceObserver {dataSourceGroup {dataSources {entity {guidname}status}}}}}}
Aquí está la respuesta que confirma el cambio:
{ "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" } ] } } } ] } }}
Actualizar el nombre en un observador de traza.
Así es como puedes cambiar el nombre de un observador de traza:
Vaya al explorador NerdGraph GraphiQL en api.newrelic.com/graphiql.
Encuentra el observador de traza cuyo nombre deseas actualizar:
{actor {account(id: YOUR_ACCOUNT_ID) {edge {tracing {traceObservers {idnameproviderRegionstatusendpoints {agent {host}}}}}}}}En la respuesta, busque el observador de traza
id
que se devuelve:{"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"}]}}}}}}Ejecute una mutación que incluya el nuevo valor del nombre. Por ejemplo, para cambiar el nombre a
Global Workload, US-EAST-1
para el observador de traza con id123456789
, ejecute lo siguiente:mutation {edgeUpdateTraceObservers(accountId: YOUR_ACCOUNT_IDtraceObserverConfigs: { id: 123456789, name: "Global Workload, US-EAST-1" }) {responses {errors {messagetype}traceObserver {idendpoints {agent {host}}namestatus}}}}
Aquí está la respuesta que confirma el cambio:
{ "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" } } ] } }}