ワークフロー エンティティの概要ページには、実行メトリクス、実行履歴、スケジュール、ログなど、特定のワークフローに関する詳細情報が表示されます。 このページから、ワークフローを手動で実行したり、自動的に実行するようにスケジュールしたりできます。
あなたが始める前に
API を使用してワークフローをトリガーまたはスケジュールする前に、次の事項を確認してください。
- 作成されたワークフロー:テンプレートまたはカスタム構築されたワークフロー定義がアカウントにすでにデプロイされています。
- アカウント ID : New Relic アカウント ID は、アカウント設定で確認できます。
- ワークフロー名: ワークフロー定義の正確な名前。
- 必須入力: ワークフローが期待するすべての値。
- 構成されたシークレット: AWS 認証情報、Slack トークン、または シークレット マネージャーに保存されているその他のシークレット。
アクセスエンティティの概要
ワークフロー自動化ダッシュボード から、[ワークフロー] タブのワークフロー名をクリックして、エンティティの概要ページを開きます。
ヒント
ナビゲーションの変更: ワークフロー名をクリックすると、エンティティの概要ページが開くようになりました。ワークフローを編集するには、行アクション メニューから Open in editor [エディターで開く]オプションを使用します。
エンティティの概要ページには、次のタブが表示されます。
概要
ワークフローレベルのメトリクスと情報:
- Run count [実行回数]: このワークフローが実行された合計回数
- Total steps [合計ステップ]数: すべての実行で実行されたステップ数
- Failed runs [失敗した実行]: 失敗した実行の数と失敗したステップ
- 各メトリクス ウィジェットには、書き込みを表示、画像を取得、またはアラート条件を作成するためのコンテキスト メニューが含まれています
実行履歴
すべてのワークフロー実行のリスト:
- 各実行のログを表示する
- 実行ステータスとタイムスタンプを確認する
- 詳細な実行情報にアクセスする
ログ
実行ログを表示します。
- リストページからワークフローを実行するときのアクセスログ
- ワークフロー実行後のView logs [ログ表示]ボタンからのリダイレクト
API経由でワークフローを実行する
StartWorkflowRun APIを使用して、プログラムでワークフローをトリガーします。これにより、指定した入力に基づいてワークフローが直ちに実行されます。
例: AWS Lambda関数を呼び出す
次のワークフロー定義は、 AWS Lambda関数を呼び出し、出力をログに記録します。 12345678 New Relic アカウント ID に置き換えます。
name: lambda1
workflowInputs: username: type: String defaultValue: "User" key: type: String defaultValue: "${{ :secrets:12345678:USERNAME_AWS_ACCESS_KEY_ID }}" access: type: String defaultValue: "${{ :secrets:12345678:USERNAME_AWS_SECRET_ACCESS_KEY }}" token: type: String defaultValue: "${{ :secrets:12345678:USERNAME_AWS_SESSION_TOKEN }}" region: type: String defaultValue: us-east-1
steps: - name: invoke1 type: action action: aws.lambda.invoke version: 1 inputs: awsAccessKeyId: ${{ .workflowInputs.key }} awsSecretAccessKey: ${{ .workflowInputs.access }} awsSessionToken: ${{ .workflowInputs.token }} region: ${{ .workflowInputs.region }} functionName: hello-you payload: user: ${{ .workflowInputs.username }}
- name: logOutput type: action action: newrelic.ingest.sendLogs version: 1 inputs: logs: - message: 'The lambda function message output is:${{ .steps.invoke1.outputs.payload.body }}'このワークフローを開始するには、次の NerdGraph ミューテーションを使用します。このミューテーションを実行する前に、 secretsManagementCreateSecretミューテーションを使用して AWS 認証情報を保存していることを確認してください。詳細については、 シークレット マネージャーを参照してください。
mutation { workflowAutomationStartWorkflowRun( # Specify the account where the workflow is defined scope: { type: ACCOUNT id: "12345678" }
# Reference the workflow definition by name definition: { name: "lambda1" }
# Provide input values for the workflow workflowInputs: [ {key: "key" value: "${{ :secrets:testUser123_AWS_ACCESS_KEY_ID }}"} {key: "access" value: "${{ :secrets:testUser123_AWS_SECRET_ACCESS_KEY }}"} {key: "token" value: "${{ :secrets:testUser123_AWS_SESSION_TOKEN }}"} {key: "region" value:"us-east-2"} {key: "username" value: "Julien"} ] ) { runId } }問題は次のように説明しました。
scope: ワークフロー定義が保存されているアカウントIDdefinition: 実行するワークフローの名前(ワークフロー定義のnameフィールドと一致する必要があります)workflowInputs: ワークフロー定義のworkflowInputsセクションのデフォルト値をオーバーライドするキーの値のペア
ミューテーションはrunId (たとえば、 7bd25287-2af8-42e1-b783-80f4e760a40b ) を返します。この ID を使用してログをクエリし、出力を表示します。

スケジュール
このワークフローのスケジュールされた実行を管理します。
- すべてのアクティブなスケジュールを表示
- 新しいスケジュールを作成する
- 既存のスケジュールを削除する
CreateSchedule API を使用して、ワークフローが特定の時間に自動的に実行されるようにスケジュールします。スケジュールされたワークフローは、手動による介入なしに定期的なタスクを実行します。
重要
ワークフロー自動化を無効にしますか?機能制御管理 (FCM) を通じてワークフロー オートメーションをオフにする場合は、混乱やアラートを防ぐために、スケジュールされたワークフローをすべて削除してください。 詳細な手順については、 「ワークフロー自動化を無効にする」を参照してください。
ワークフローをスケジュールするタイミング:
- 定期的な健康診断
- 定期的なデータ処理
- 日次/週次レポート
- スケジュールされたメンテナンスウィンドウ
- 定期的なバックアップまたはクリーンアップ
Cron式リファレンス
スケジュールでは、cron 式を使用してワークフローの実行タイミングを定義します。形式: minute hour day month weekday
パターン | 説明 | 使用例 |
|---|---|---|
| 毎日午前9時 | 毎朝の健康チェック |
| 平日午前9時 | 営業日の運営 |
| 6時間ごと | 定期的な同期操作 |
| 月初めの日の深夜0時 | 月次レポート |
| 10分ごと(最小間隔) | 頻繁なポーリング、ヘルスチェック |
| 毎週日曜日の深夜 | 毎週のクリーンアップタスク |
重要
最小スケジュール間隔:スケジュールは少なくとも 10 分間隔にする必要があります。ワークフローを 10 分間隔より頻繁に実行するようにスケジュールすることはできません。10 分未満の間隔の場合は、10 分ごとにスケジュールを設定し、ワークフロー内で待機ステップを使用することを検討してください。すべてのスケジュール制約については、ワークフローの制限を参照してください。
ヒント
Cron構文: * everyを意味し、 / every nthを意味し、 -はrangeを意味します。例: 0 9 * * 1-5 = At minute 0, hour 9, every day, every month, Monday through Friday 。
例: 毎日の健康診断をスケジュールする
次の例では、 lambda1ワークフローを毎日東部標準時の午前 9 時に実行するようにスケジュールします。
mutation { workflowAutomationCreateSchedule( scope: {type: ACCOUNT, id: "1"} definition: {name: "outdated_agents_multiple_nrql", version: 22} workflowInputs: [{key: "emailDestinationId", value: "04ea4bf6-e52a-4df1-bd5d-9c0271652a93"}, {key: "accountId", value: "1"}] timezone: "America/New_York" cronExpression: "0 12 * * *" ) { scheduleId } }返される値: scheduleId 、スケジュールの一意の識別子 (後でスケジュールを更新または削除するために使用します)
回避策: 10分未満の間隔
10 分間隔よりも頻繁に確認する必要がある場合は、ワークフローを最小 10 分間隔でスケジュールし、ワークフロー定義内の待機ステップを使用して追加のポーリング間隔を作成します。
5 分間隔のポーリングを使用したワークフローの例:
name: frequent-health-check
steps: # First check happens immediately when scheduled - name: firstCheck type: action action: newrelic.nrdb.query version: 1 inputs: query: "FROM Transaction SELECT count(*) WHERE appName = 'MyApp' SINCE 5 minutes ago"
# Wait 5 minutes - name: waitStep type: wait seconds: 300
# Second check happens 5 minutes after the workflow started - name: secondCheck type: action action: newrelic.nrdb.query version: 1 inputs: query: "FROM Transaction SELECT count(*) WHERE appName = 'MyApp' SINCE 5 minutes ago"*/10 * * * *を使用して、このワークフローを 10 分ごとに実行するようにスケジュールします。これにより、効果的な 5 分間のポーリングが可能になります。
- 0:00 - ワークフローが開始し、最初にチェックを実行します
- 0:05 - secondCheck 実行 (待機ステップ後)
- 0:10 - 次のスケジュールされたワークフローが開始され、最初に実行されるチェック
- 0:15 - secondCheck 実行 (待機ステップ後)
ヒント
ワークフローの期間制限:ワークフローの期間は最大 7 日間であることに注意してください。 それに応じて待機手順とポーリング頻度を設計します。詳細については、ワークフローの制限を参照してください。
スケジュールを管理する
スケジュールを作成した後:
- アクティブなスケジュールの表示: このエンティティ概要ページのスケジュールタブで、スケジュールされているすべての実行を表示します。
- 更新スケジュール: UpdateSchedule APIを使用して頻度または入力を変更します
- スケジュールの削除: 定期的な実行を停止するには、DeleteSchedule API を使用します。
完全な API ドキュメントについては、 「ワークフロー自動化 API」を参照してください。
設定
ワークフロー設定を表示:
- ワークフローの設定と問題を表示する
- 設定情報のみ(編集はエディタで行います)
このページからワークフローを実行します
エンティティ概要ページからワークフローを手動で実行するには:
- Run workflow [ワークフローの実行]をクリック
- ワークフローはすぐに実行されます
- 実行が完了したら、 View logs [ログの表示]をクリックして、Logs [ログ]タブに実行の詳細を表示します。
ワークフローを編集するには、Edit [編集]ボタンをクリックして、エディターでワークフローを開きます。
ヒント
アラート条件に違反した場合、 New Relicワークフロー オートメーションを宛先として設定することでワークフローを自動的にトリガーできます。 issueIdとaccountIdは自動的に渡されます。セットアップ手順については、 「ワークフローから通知を送信する」を参照してください。