• /
  • EnglishEspañolFrançais日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

ワークフローを開始してスケジュールする

プレビュー

この機能はまだ開発中ですが、ぜひお試しください。

この機能は現在、弊社のプレリリース ポリシーに従ってプレビュー プログラムの一部として提供されています。

ワークフローを作成したら、オンデマンドで手動で実行したり、特定の時間に自動的に実行するようにスケジュールしたりできます。どちらの方法でも、 NerdGraph API を使用してワークフローの実行をトリガーします。

トリガー方法を選択してください

ユースケースに適したアプローチを選択してください。

オンデマンドで使用スケジュール使用
新しいワークフローのテスト定期的な健康診断
手動承認ワークフロー定期的なデータ処理
集中トリガーの応答日次/週次レポート
アドホックメンテナンスタスクスケジュールされたメンテナンスウィンドウ
1回限りの操作定期的なバックアップまたはクリーンアップ

あなたが始める前に

ワークフローをトリガーする前に、次のことを確認してください。

  • ワークフローが作成されました: ワークフロー定義はすでにアカウントにデプロイされています (テンプレートまたはカスタム構築から)。
  • アカウント ID : New Relic アカウント ID (アカウント設定で確認できます)。
  • ワークフロー名: ワークフロー定義の正確な名前。
  • 必須入力: ワークフローが期待するすべての値。
  • 構成されたシークレット: AWS 認証情報、Slack トークン、またはシークレット マネージャーに保存されているその他のシークレット。

ヒント

ワークフローは初めてですか?ワークフローをトリガーする前に、最初のワークフローを作成します。事前に構築されたワークフローのテンプレートの使用から始めます。

オンデマンドでワークフローを実行する

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: ワークフロー定義が保存されているアカウントID
  • definition: 実行するワークフローの名前(ワークフロー定義のnameフィールドと一致する必要があります)
  • workflowInputs: ワークフロー定義のworkflowInputsセクションのデフォルト値をオーバーライドするキーの値のペア

ミューテーションはrunId (たとえば、 7bd25287-2af8-42e1-b783-80f4e760a40b ) を返します。この ID を使用してログをクエリし、出力を表示します。

Workflow automation logs showing the Lambda function output

ワークフローのスケジュール

CreateSchedule API を使用して、ワークフローが特定の時間に自動的に実行されるようにスケジュールします。スケジュールされたワークフローは、手動による介入なしに定期的なタスクを実行します。

ワークフローをスケジュールするタイミング:

  • 定期的な健康診断
  • 定期的なデータ処理
  • 日次/週次レポート
  • スケジュールされたメンテナンスウィンドウ
  • 定期的なバックアップまたはクリーンアップ

Cron式リファレンス

スケジュールでは、cron 式を使用してワークフローの実行タイミングを定義します。形式: minute hour day month weekday

パターン説明使用例
0 9 * * *毎日午前9時毎朝の健康チェック
0 9 * * 1-5平日午前9時営業日の運営
0 */6 * * *6時間ごと定期的な同期操作
0 0 1 * *月初めの日の深夜0時月次レポート
*/15 * * * *15分ごと頻繁な投票
0 0 * * 0毎週日曜日の深夜毎週のクリーンアップタスク

ヒント

Cron 構文: *は「すべて」、 /は「n 番目ごと」、 - 「範囲」を意味します。例: 0 9 * * 1-5 = 毎月、毎日、月曜日から金曜日の 0 分、9 時。

例: 毎日の健康診断をスケジュールする

次の例では、 lambda1ワークフローを毎日東部標準時の午前 9 時に実行するようにスケジュールします。

mutation {
workflowAutomationCreateSchedule(
# Specify the account where the workflow is defined
scope: { type: ACCOUNT, id: "12345678" }
# Reference the workflow definition by name
definition: { name: "lambda1" }
# Configure the schedule
schedule: {
# Cron expression: minute hour day month weekday
# "0 9 * * *" = every day at 9:00 AM
cronExpression: "0 9 * * *"
# Timezone for the schedule
timezone: "America/New_York"
# Optional: Schedule name for identification
name: "daily-lambda-health-check"
# Optional: Add a description
description: "Runs Lambda health check every morning at 9 AM"
}
# 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: "HealthCheckBot" }
]
) {
scheduleId
}
}

返されるもの:

  • scheduleId: スケジュールの一意の識別子(後でスケジュールを更新または削除するために使用します)

スケジュールを管理する

スケジュールを作成した後:

  • アクティブなスケジュールの表示:ワークフロー ダッシュボードでスケジュールされたすべての実行を表示します。
  • 更新スケジュール: UpdateSchedule APIを使用して頻度または入力を変更します
  • スケジュールの削除: 定期的な実行を停止するには、DeleteSchedule API を使用します。

完全な API ドキュメントについては、 「ワークフロー自動化 API」を参照してください。

次のステップ

ワークフローが実行中です。次に行うべきことは次のとおりです。

以下を監視および管理します。

生産向けに最適化:

ワークフローを拡張します。

Copyright © 2025 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.