New Relicが適用するインテリジェンスの場合、NerdGraphAPIを使用してワークフローを作成および管理できます。
ワークフローの一覧表示とフィルタリング
workflows
クエリを使用すると、アカウントごとにすべてのワークフローをページ分割できます。また、アカウントワークフローでいくつかのフィルタリング機能を使用できます。ユースケースの例を次に示します。
ワークフローを作成する
ワークフローを作成するには、最初に宛先とチャネルを作成する必要があります。
callout.note
チャネルIDは一意であるため、複数のワークフローで使用したり、同じワークフローで複数回使用したりすることはできません。
ワークフローを更新する
ワークフローを更新するときは、提供する必要がある必須の属性はワークフローIDとアカウントIDのみであることに注意してください。残りはオプションです。たとえば、名前を更新するだけの場合は、名前を指定するだけで済みます。
ワークフロー ID を取得するには、ワークフロー テーブルに移動し、行の最後にある [ ... ] をクリックします。次に、 [ワークフロー ID をクリップボードにコピー]を選択します。
ワークフローを更新する例を次に示します。
mutation { aiWorkflowsUpdateWorkflow( accountId: YOUR_ACCOUNT_ID updateWorkflowData: { name: "UPDATED_API_DEMO_WORKFLOW", id: WORKFLOW_ID } ) { workflow { id name destinationConfigurations { channelId name type notificationTriggers } enrichmentsEnabled destinationsEnabled issuesFilter { accountId id name predicates { attribute operator values } type } lastRun workflowEnabled mutingRulesHandling } errors { description type } }}
ワークフローを削除する
ワークフローを削除する例を次に示します。
mutation { aiWorkflowsDeleteWorkflow(id: WORKFLOW_ID, accountId: YOUR_ACCOUNT_ID) { id errors { description type } }}
ワークフローをテストする
テストでは、入力に一致する以前の問題を検索し、それに基づいて偽の通知を作成します。入力に一致する以前の問題が見つからなかった場合は、エラーが返されます。
例えば:
mutation { aiWorkflowsTestWorkflow( accountId: YOUR_ACCOUNT_ID testWorkflowData: { destinationConfigurations: { channelId: YOUR_CHANNEL_ID, type: SLACK } issuesFilter: { predicates: [], type: YOUR_FILTER } } ) { status notificationResponses { status evidence channelId } errors { description type } }}