AVISO EOL
A partir de abril de 2022, no admitimos la capacidad C SDK. Para obtener más detalles, consulte nuestra publicación en el foro de soporte.
Para monitor cualquier aplicación en Linux usando un lenguaje que pueda importar la biblioteca C, debe:
- Cree una configuración usando
newrelic_new_app_config()
, conéctese al daemon usandonewrelic_init()
y conecte su aplicación usandonewrelic_create_app()
. Para obtener más información, consulte los procedimientos de instalación de C SDK. - Transacción manual de instrumentos utilizando el SDK de C, como se describe en este documento.
New Relic define una web o transacción no web como una unidad lógica de trabajo en una aplicación de software. Después de realizar manualmente la transacción de instrumentos en su código fuente agregando funciones de New Relic, puede ver los datos en la páginaTransactions en New Relic. También puede instrumentar segmentos de una transacción y errores.
Instrumento una transacción
Para instrumentar una transacción y poder monitor , incluya las funciones de New Relic que inician y detienen la instrumentación alrededor de la transacción. La función que utilices depende de si quieres instrumento a web o transacción no web.
En el siguiente ejemplo, la aplicación se crea después de una llamada a newrelic_create_app()
. Para obtener más información, consulte los procedimientos de instalación de C SDK , así como la documentación de C SDK libnewrelic.h
en GitHub.
Agregue el siguiente código inmediatamente before a la transacción que desea monitor, proporcionando el parámetro requerido.
Para transacciones web:
// Example code: newrelic_txn_t *txn; /* ... */ txn = newrelic_start_web_transaction(app, "NAME_YOUR_TRANSACTION");
Para transacciones sin web:
// Example code: newrelic_txn_t *txn; /* ... */ txn = newrelic_start_non_web_transaction(app, "NAME_YOUR_TRANSACTION");
Agrega
newrelic_end_transaction()
inmediatamente after la web o transacción no web que deseas monitor, proporcionando un puntero a la transacción,&txn
, como parámetro.
Segmentos de instrumentos
Una vez que instrumente una transacción usando el SDK de C, puede implementar segmentos en ella. Al instrumentar segmentos, puede monitor las funciones y llamadas individuales dentro de una transacción.
Segments example
Tiene una transacción asociada con un proceso de pago, que procesa tanto la información de envío como la información de la tarjeta de crédito. Puede instrumentar su aplicación para dividir esa transacción en dos segmentos: un segmento para envío y otro segmento para pago.
Puede utilizar segmentos de instrumentos para monitor los siguientes tipos de llamadas:
- Servicios externos que utilizan segmentos externos
- Segmentos personalizados para código arbitrario
- Almacenes de datos que utilizan segmentos de almacenamiento de datos
- consulta lenta traza (solo base de datos SQL)
Para obtener más información, consulte los procedimientos de instalación de C SDK , así como la documentación de C SDK libnewrelic.h
en GitHub.
Errores de instrumentos
Para utilizar el SDK de C para monitor errores en transacciones, debe instrumentar manualmente su código fuente agregándole la función newrelic_notice_error()
.
Los errores de transacción y la traza de error aparecen en la páginaError analytics en New Relic. El C SDK informa el número total de errores y hasta 100 trazas de error por minuto. También puedes ver, consultar y visualizar errores de transacción como evento APM TransactionError
.
Sugerencia
Para incluir llamadas a funciones en la traza de error, use el indicador de vinculación -rdynamic
de GNU para vincular sus aplicaciones al compilar. El indicador del enlazador -rdynamic
le proporciona una traza de error más significativa.
A errores de instrumento en transacción:
- Iniciar una transacción.
- Registre un error con
newrelic_notice_error()
, proporcionando el parámetro requerido. - Finalice la transacción, suministrando el parámetro requerido.
Para obtener más información, consulte los procedimientos de instalación de C SDK , así como la documentación de C SDK libnewrelic.h
en GitHub.
Evite problemas de agrupación métrica
Cuando una cuenta o aplicación envía muchas métricas individuales que podrían gestionarse mejor en grupos, New Relic utiliza el término metric grouping issue o MGI para describir esta situación. Si su aplicación envía cantidades innecesariamente grandes de datos a New Relic, esto reduce la efectividad de los gráficos, tablas e informes.
Los problemas de agrupación métrica ocurren más comúnmente con transacciones web, especialmente si el nombre se basa en URL. Para ayudar a prevenir esta situación, consulte problemas de agrupación métrica.