Puede utilizar NerdGraph en api.newrelic.com/graphiql para crear, consultar y administrar sus reglas de análisis de registros. NerdGraph es nuestro explorador de API en formato GraphQL.
Esquema de análisis de datos
Los campos de reglas de análisis disponibles incluyen:
Campos | Descripción |
---|---|
identificación | Identificador de análisis de datos único. |
parsingRules | El nombre de la regla de análisis. |
descripción | Una descripción de lo que representa esta regla de análisis. |
grok | El patrón de Grok para esta regla de análisis. Por ejemplo, puede incluir el |
lucene | El valor de búsqueda utilizado en la UI de New Relic; por ejemplo, |
ID de la cuenta | El ID de cuenta de New Relic para el usuario. |
NRQL | La consulta NRQL utilizada para consultas, si corresponde; Por ejemplo:
|
createdBy | El usuario que creó la regla. Opcional: también puede incluir |
updatedBy | El usuario que actualizó la regla por última vez. Opcional: también puede incluir |
activado | Si esta regla de análisis está habilitada o no. |
eliminado | Si esta regla de análisis se ha eliminado o no. Eliminar una regla de análisis no elimina el registro ya enrutado. |
Ejemplo de consulta de reglas de análisis de logs
Este ejemplo de solicitud de API de NerdGraph obtiene todas las reglas de análisis para una cuenta determinada. En este ejemplo, se solicitan todos los campos disponibles.
query { actor { account(id: 12345678) { logConfigurations { parsingRules { accountId createdBy { email gravatar id name } deleted description enabled grok id lucene nrql updatedAt updatedBy { email gravatar id name } } } } }}
La respuesta devuelta será similar a esta:
{ "data": { "actor": { "account": { "id": 12345678, "logConfigurations": { "parsingRules": [ { "accountId": 12345678, "createdBy": { "email": "myname@ncompany.com", "gravatar": "https://secure.gravatar.com/avatar/d0a88888888d666d111111111111111f", "id": 7777777, "name": "My Name" }, "deleted": false, "description": "Integer Test", "enabled": true, "grok": "source=%{NUMBER:test:int}", "id": "123", "lucene": , "nrql": "SELECT * FROM Log WHERE `logtype` = 'integer'", "updatedAt": "2021-08-23T17:25:06.553Z[UTC]", "updatedBy": { "email": "myname@ncompany.com", "gravatar": "https://secure.gravatar.com/avatar/d0a88888888d666d111111111111111f", "id": 7777777, "name": "My Name" } }...
Crear reglas de análisis
Este ejemplo crea una nueva regla de análisis de registros. Antes de crear la regla, asegúrese de revisar la documentación sobre análisis de registros y reglas de análisis integradas.
mutation { logConfigurationsCreateParsingRule( accountId: 12345678 rule: { description: "example parsing rule" enabled: false grok: "sampleattribute=%{NUMBER:test:int}" lucene: "logtype:testLogs" nrql: "SELECT * FROM Log WHERE `logtype` = 'testLogs'" } ) { rule { id enabled description grok } errors { message type } }}
Actualizar reglas de análisis
Este ejemplo actualiza la regla de análisis cuyo id
es "123"
. Puede actualizar cualquiera de los siguientes campos según sea necesario: description
, enabled
, grok
, lucene
y nrql
.
mutation { logConfigurationsUpdateParsingRule( accountId: 12345678 rule: { description: "example parsing rule" enabled: false grok: "sampleattribute=%{NUMBER:test:int}" lucene: "logtype:testLogs" nrql: "SELECT * FROM Log WHERE `logtype` = 'testLogs'" } id: "123" ) { errors { message type } rule { id grok description enabled } }}
Eliminar reglas de análisis
Eliminar una regla de análisis no elimina los datos que ya se han analizado. Los datos se conservan durante un período de tiempo determinado definido por el campo retentionPolicy
.
mutation { logConfigurationsDeleteParsingRule(accountId: 123456789, id: "123") { errors { message type } }}