api.newrelic.com/graphiql で NerdGraph を使用して、 ログの解析ルール を作成、照会、管理することができます。NerdGraphは、GraphQL形式のAPIエクスプローラーです。
データ解析用のスキーマ
利用可能な構文解析ルールのフィールドは以下の通りです。
フィールド | 説明 |
---|---|
id | データ解析用のユニークな識別子。 |
パーシングルール | パーシングルールの名前です。 |
description | この解析ルールが何を表しているかの説明。 |
grok | この解析ルールの Grok パターン。たとえば、組み込みの解析ルール( |
ルーセント | New Relic UI から使用される検索値。たとえば、 |
アカウントID | ユーザーのNew RelicアカウントIDです。 |
nrql | クエリに使用される NRQL クエリ(該当する場合)。
|
によって作成された | ルールを作成したユーザー。オプション: |
updatedBy | ルールを最後に更新したユーザー。オプション: |
有効 | この解析ルールが有効であるかどうか。 |
削除 | この構文解析ルールが削除されたかどうか。解析ルールを削除しても、すでにルーティングされているログは削除されません。 |
ログ解析ルールのクエリ例
このNerdGraph APIリクエストの例では、指定されたアカウントのすべての解析ルールを取得しています。この例では、利用可能なすべてのフィールドを要求しています。
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 } } } } }}
返されるレスポンスは以下のようになります。
{ "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" } }...
構文解析ルールの作成
この例では、新しいログ解析ルールを作成します。ルールを作成する前に、 ログ解析 と ビルトイン解析ルール に関するドキュメントを必ず確認してください。
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 } }}
構文解析ルールの更新
この例では、 id
が"123"
である解析ルールを更新します。必要に応じて次のフィールドを更新できます: description
、 enabled
、 grok
、 lucene
、および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 } }}
構文解析ルールの削除
解析ルールを削除しても、解析済みのデータは削除されません。データは、 retentionPolicy
フィールドで定義された一定期間保持されます。
mutation { logConfigurationsDeleteParsingRule(accountId: 123456789, id: "123") { errors { message type } }}