Vous pouvez utiliser NerdGraph sur api.newrelic.com/graphiql pour créer, interroger et gérer vos règles d'analyse pour les logs. NerdGraph est notre explorateur d'API au format GraphQL.
Schéma d'analyse des données
Les champs de règles d’analyse disponibles incluent :
Champs | Description |
---|---|
| Identifiant unique d’analyse des données. |
| Le nom de la règle d'analyse. |
| Une description de ce que représente cette règle d’analyse. |
| Le modèle Grok pour cette règle d'analyse. Par exemple, vous pouvez inclure le |
| La valeur de recherche utilisée depuis l'UI de New Relic ; par exemple,. |
| L'ID de compte New Relic pour l'utilisateur. |
| La chaîne de requête NRQL utilisée pour la requête, le cas échéant ; par exemple : |
| L'utilisateur qui a créé la règle. Facultatif : vous pouvez également inclure |
| L'utilisateur qui a mis à jour la règle en dernier. Facultatif : vous pouvez également inclure |
| Si cette règle d'analyse est activée ou non. |
| Si cette règle d'analyse a été supprimée ou non. La suppression d’une règle d’analyse ne supprime pas les logs déjà acheminés. |
Exemple de requête de règles d'analyse des log
Cet exemple de demande d'API NerdGraph obtient toutes les règles d'analyse pour un compte donné. Dans cet exemple, tous les champs disponibles sont demandés.
query { actor { account(id: YOUR_ACCOUNT_ID) { logConfigurations { parsingRules { accountId createdBy { email gravatar id name } deleted description enabled grok id lucene nrql updatedAt updatedBy { email gravatar id name } } } } }}
La réponse renvoyée ressemblera à ceci :
{ "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" } }...
Créer des règles d'analyse
Cet exemple crée une nouvelle règle d'analyse des log . Avant de créer la règle, assurez-vous de consulter la documentation sur l'analyse des log et les règles d'analyse intégrées.
mutation { logConfigurationsCreateParsingRule( accountId: YOUR_ACCOUNT_ID 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 } }}
Mettre à jour les règles d'analyse
Cet exemple met à jour la règle d’analyse dont id
est "123"
. Vous pouvez mettre à jour l'un des champs suivants selon vos besoins : description
, enabled
, grok
, lucene
et nrql
.
mutation { logConfigurationsUpdateParsingRule( accountId: YOUR_ACCOUNT_ID 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 } }}
Supprimer les règles d'analyse
La suppression d’une règle d’analyse ne supprime pas les données qui ont déjà été analysées. Les données sont conservées pendant une durée donnée définie par le champ retentionPolicy
.
mutation { logConfigurationsDeleteParsingRule(accountId: YOUR_ACCOUNT_ID, id: "123") { errors { message type } }}