Azure Scheduler ジョブを Azure Logic Apps に移行するMigrate Azure Scheduler jobs to Azure Logic Apps

重要

Azure Logic Apps は、廃止予定の Azure Scheduler の後継です。Azure Logic Apps is replacing Azure Scheduler, which is being retired. ジョブのスケジュールを設定するには、代わりに Azure Logic Apps に移行するためのこの記事に従います。To schedule jobs, follow this article for moving to Azure Logic Apps instead.

この記事では、Azure Scheduler ではなく Azure Logic Apps を使用して自動化されたワークフローを作成することで、1 回限りのジョブと定期的なジョブをスケジュール設定する方法を示します。This article shows how you can schedule one-time and recurring jobs by creating automated workflows with Azure Logic Apps, rather than with Azure Scheduler. Logic Apps を使用してスケジュールされたジョブを作成すると、次のメリットが得られます。When you create scheduled jobs with Logic Apps, you get these benefits:

  • 各ロジック アプリは個別の Azure リソースであるため、ジョブ コレクションの概念について心配する必要はありません。You don't have to worry about the concept of a job collection because each logic app is a separate Azure resource.

  • 1 つのロジック アプリを使用して、複数の 1 回限りのジョブを実行できます。You can run multiple one-time jobs by using a single logic app.

  • Azure Logic Apps サービスでは、タイム ゾーンと夏時間 (DST) をサポートしています。The Azure Logic Apps service supports time zone and daylight savings time (DST).

詳細については、「Azure Logic Apps とは」を参照するか、To learn more, see What is Azure Logic Apps? または初めてのロジック アプリを作成するのクイック スタートで初めてのロジック アプリを作成してみてください。or try creating your first logic app in this quickstart: Create your first logic app.

前提条件Prerequisites

1 回限りのジョブをスケジュール設定するSchedule one-time jobs

ロジック アプリを 1 つだけ作成して、複数の 1 回限りのジョブを実行できます。You can run multiple one-time jobs by creating just a single logic app.

ロジック アプリを作成するCreate your logic app

  1. Azure portal のロジック アプリ デザイナーで空のロジック アプリを作成します。In the Azure portal, create a blank logic app in Logic App Designer.

    基本的な手順については、クイック スタート: 初めてのロジック アプリの作成に関するページを参照してください。For the basic steps, follow Quickstart: Create your first logic app.

  2. 検索ボックスに、フィルターとして「HTTP 要求の」と入力します。In the search box, enter "when a http request" as your filter. トリガーの一覧から、HTTP 要求の受信時From the triggers list, select this trigger: When a HTTP request is received

    "要求" トリガーの追加

  3. 要求トリガーに対して、必要に応じて JSON スキーマを指定できます。これは、ロジック アプリ デザイナーが、受信要求からの入力の構造を理解するのに役立ち、出力をこの後のワークフローで選択しやすくします。For the Request trigger, you can optionally provide a JSON schema, which helps the Logic App Designer understand the structure for the inputs from the incoming request and makes the outputs easier for you to select later in your workflow.

    スキーマを指定するには、 [要求本文の JSON スキーマ] ボックスにスキーマを入力します。その例を次に示します。To specify a schema, enter the schema in the Request Body JSON Schema box, for example:

    要求スキーマ

    スキーマはなくても JSON 形式のサンプル ペイロードがあれば、そのペイロードからスキーマを生成することができます。If you don't have a schema, but you have a sample payload in JSON format, you can generate a schema from that payload.

    1. 要求トリガーで [サンプルのペイロードを使用してスキーマを生成する] を選択します。In the Request trigger, choose Use sample payload to generate schema.

    2. 次の例のように、 [サンプルの JSON ペイロードを入力するか、貼り付けます] でサンプル ペイロードを指定し、 [完了] を選択します。Under Enter or paste a sample JSON payload, provide your sample payload, and then choose Done, for example:

      サンプル ペイロード

  4. トリガーで、 [次のステップ] を選択します。Under the trigger, choose Next step.

  5. 検索ボックスに、フィルターとして「延期期限」と入力します。In the search box, enter "delay until" as your filter. アクションの一覧で、アクション [延期期限]Under the actions list, select this action: Delay until

    このアクションは、指定した日時までロジック アプリ ワークフローを一時停止します。This action pauses your logic app workflow until a specified date and time.

    「延期期限」アクションの追加

  6. ロジック アプリのワークフローを開始するタイムスタンプを入力します。Enter the timestamp for when you want to start the logic app's workflow.

    [タイムスタンプ] ボックス内をクリックすると、動的コンテンツ リストが表示され、必要に応じてトリガーから出力を選択できます。When you click inside the Timestamp box, the dynamic content list appears so you can optionally select an output from the trigger.

    「延期期限」の詳細を指定

  7. 数百単位のすぐに使えるコネクタから選択して、実行するその他のアクションを追加できます。Add any other actions you want to run by selecting from hundreds of ready-to-use connectors.

    たとえば、URL に要求を送信する HTTP アクションや、Storage キュー、Service Bus キューまたは Service Bus トピックを使用するアクションを含めることができます。For example, you can include an HTTP action that sends a request to a URL, or actions that work with Storage Queues, Service Bus queues, or Service Bus topics:

    HTTP アクション

  8. 完了したら、ロジック アプリを保存します。When you're done, save your logic app.

    ロジック アプリを保存する

    初めてロジック アプリを保存するときに、そのロジック アプリの要求トリガーの URL エンドポイントが [HTTP POST の URL] ボックスに表示されます。When you save your logic app for the first time, the endpoint URL for your logic app's Request trigger appears in the HTTP POST URL box. ロジック アプリを呼び出して入力を処理するためにロジック アプリに送信する場合に、呼び出し先としてこの URL を使用します。When you want to call your logic app and send inputs to your logic app for processing, use this URL as the call destination.

    要求トリガーのエンドポイント URL を保存する

  9. 後で手動でロジック アプリをトリガーする要求を送信できるように、このエンドポイント URL をコピーして保存します。Copy and save this endpoint URL so you can later send a manual request that triggers your logic app.

1 回限りのジョブを開始するStart a one-time job

1 回限りのジョブを手動で実行またはトリガーするには、ロジック アプリの要求トリガーのエンドポイント URL への呼び出しを送信します。To manually run or trigger a one-time job, send a call to the endpoint URL for your logic app's Request trigger. この呼び出しでは、送信する入力またはペイロードを指定します。これはスキーマを指定することで既に記述している可能性があります。In this call, specify the input or payload to send, which you might have described earlier by specifying a schema.

たとえば、Postman アプリを使用して、このサンプルと同じような設定で POST 要求を作成し、 [送信] を選択して要求を行うことができます。For example, using the Postman app, you can create a POST request with the settings similar to this sample, and then choose Send to make the request.

要求メソッドRequest method URLURL 本文Body headersHeaders
POSTPOST <endpoint-URL><endpoint-URL> rawraw

JSON(application/json)JSON(application/json)

[raw] ボックスに、要求で送信するペイロードを入力します。In the raw box, enter the payload you want to send in the request.

メモ:この設定により、 [ヘッダー] 値が自動的に構成されます。Note: This setting automatically configures the Headers values.

[キー] :Content-TypeKey: Content-Type
: application/jsonValue: application/json

ロジック アプリを手動でトリガーする要求を送信する

呼び出しを送信すると、ロジック アプリからの応答が [本文] タブの [raw] ボックスの下に表示されます。After you send the call, the response from your logic app appears under the raw box on the Body tab.

重要

後でジョブをキャンセルする場合は、 [ヘッダー] タブを選択します。応答で x-ms-workflow-run-id ヘッダー値を見つけてコピーします。If you want to cancel the job later, choose the Headers tab. Find and copy the x-ms-workflow-run-id header value in the response.

Response

1 回限りのジョブをキャンセルするCancel a one-time job

Logic Apps では、1 回限りのジョブはそれぞれ 1 つのロジック アプリの実行インスタンスとして実行されます。In Logic Apps, each one-time job executes as a single logic app run instance. 1 回限りのジョブをキャンセルするには、Logic Apps REST API でワークフロー実行 - キャンセルを使用できます。To cancel a one-time job, you can use Workflow Runs - Cancel in the Logic Apps REST API. トリガーへの呼び出しを送信するときに、ワークフロー実行 ID を指定します。When you send a call to the trigger, provide the workflow run ID.

定期的なジョブをスケジュール設定するSchedule recurring jobs

ロジック アプリを作成するCreate your logic app

  1. Azure portal のロジック アプリ デザイナーで空のロジック アプリを作成します。In the Azure portal, create a blank logic app in Logic App Designer.

    基本的な手順については、クイック スタート: 初めてのロジック アプリの作成に関するページを参照してください。For the basic steps, follow Quickstart: Create your first logic app.

  2. 検索ボックスに、フィルターとして「recurrence」と入力します。In the search box, enter "recurrence" as your filter. トリガーの一覧から、定期的なアイテムFrom the triggers list, select this trigger: Recurrence

    "繰り返し" トリガーの追加

  3. 必要に応じて、より詳細なスケジュールを設定します。Set up a more advanced schedule, if you want.

    詳細なスケジュール

    詳細なスケジュール オプションの詳細については、「定期的に実行されるタスクとワークフローを Azure Logic Apps で作成、実行する」を参照してください。For more information about advanced scheduling options, see Create and run recurring tasks and workflows with Azure Logic Apps

  4. 数百単位のすぐに使えるコネクタから選択し、実行するその他のアクションを追加できます。Add other actions you want by selecting from hundreds of ready-to-use. トリガーで、 [次のステップ] を選択します。Under the trigger, choose Next step. 目的のアクションを探して選択します。Find and select the actions you want.

    たとえば、URL に要求を送信する HTTP アクションや、Storage キュー、Service Bus キューまたは Service Bus トピックを使用するアクションを含めることができます。For example, you can include an HTTP action that sends a request to a URL, or actions that work with Storage Queues, Service Bus queues, or Service Bus topics:

    HTTP アクション

  5. 完了したら、ロジック アプリを保存します。When you're done, save your logic app.

    ロジック アプリを保存する

詳細設定Advanced setup

ここでは、ジョブをカスタマイズできるその他の方法を示します。Here are other ways you can customize your jobs.

再試行ポリシーRetry policy

断続的なエラーが発生したときに、ロジック アプリでアクションが再実行を試行する方法を制御するために、各アクションの設定で再試行ポリシーを設定できます。次に例を示します。To control the way that an action tries to rerun in your logic app when intermittent failures happen, you can set the retry policy in each action's settings, for example:

  1. アクションの [...] メニューを開き、 [設定] を選択します。Open the action's (...) menu, and select Settings.

    アクションの設定を開く

  2. 目的の再試行ポリシーを選択します。Select the retry policy you want. 各ポリシーの詳細については、「Retry policies」(再試行ポリシー) を参照してください。For more information about each policy, see Retry policies.

    再試行ポリシーの選択

例外とエラーを処理するHandle exceptions and errors

Azure Sheduler では、既定のアクションが実行に失敗した場合、エラー状態に対処する代替アクションを実行できます。In Azure Scheduler, if the default action fails to run, you can run an alterative action that addresses the error condition. Azure Logic Apps でも、同じタスクを実行することができます。In Azure Logic Apps, you can also perform the same task.

  1. ロジック アプリ デザイナーでは、処理したいアクションの上で、ポインターを手順の間の矢印の上に移動し、 [並列分岐の追加] を選択します。In Logic App Designer, above the action you want to handle, move your pointer over the arrow between steps, and select and Add a parallel branch.

    並列分岐を追加する

  2. 代替アクションとして代わりに実行するアクションを見つけて選択します。Find and select the action you want to run instead as the alternative action.

    並列アクションを追加する

  3. 代替アクションで、 [...] メニューを開き、 [実行条件の構成] を選択します。On the alternative action, open the (...) menu, and select Configure run after.

    実行条件の構成

  4. [に成功しました] プロパティのボックスをオフにします。Clear the box for the is successful property. [に失敗しました][がスキップされます] 、および [がタイムアウトしました] のプロパティを選択します。Select these properties: has failed, is skipped, and has timed out

    "実行条件" プロパティの設定

  5. 完了したら、 [完了] を選択します。When you're finished, choose Done.

例外処理の詳細については、エラーと例外処理 - RunAfter プロパティに関するセクションを参照してください。To learn more about exception handling, see Handle errors and exceptions - RunAfter property.

FAQFAQ

Q: Azure Scheduler が廃止になるのはいつですか。Q: When is Azure Scheduler retiring?
A: Azure Scheduler は、2019 年 9 月 30 日に廃止される予定です。A: Azure Scheduler is scheduled to retire on September 30, 2019.

Q: サービスの廃止後、Scheduler のジョブ コレクションとジョブはどうなりますか。Q: What happens to my Scheduler job collections and jobs after the service retires?
A: Scheduler のすべてのジョブ コレクションとジョブがシステムから削除されます。A: All Scheduler job collections and jobs will be deleted from the system.

Q: Scheduler ジョブを Logic Apps に移行する前に、バックアップまたはその他のタスクを実行する必要がありますか。Q: Do I have to back up or perform any other tasks before migrating my Scheduler jobs to Logic Apps?
A: ベスト プラクティスとして、作業は常にバックアップしてください。A: As a best practice, always back up your work. Scheduler ジョブを削除または無効にする前に、作成したロジック アプリが期待どおりに実行されていることを確認します。Check that the logic apps you created are running as expected before deleting or disabling your Scheduler jobs.

Q: ジョブを Scheduler から Logic Apps に移行するために役立つツールはありますか。Q: Is there a tool that can help me migrate my jobs from Scheduler to Logic Apps?
A: 各 Scheduler ジョブは独特であるため、すべてに対応できるツールは存在しません。A: Each Scheduler job is unique, so a one-size-fits-all tool doesn't exist. ただし、必要に応じた変更を行うために使用できるさまざまなスクリプトがあります。However, various scripts will be available for you to modify for your needs. スクリプトの可用性については、後で確認します。For script availability, check back later.

Q: Scheduler ジョブを移行するためのサポートはどこで受けられますか。Q: Where can I get support for migrating my Scheduler jobs?
A: サポートを受けるためのいくつかの方法を次に示します。A: Here are some ways to get support:

Azure PortalAzure portal

Azure サブスクリプションに有料サポート プランがある場合は、Azure portal でテクニカル サポート要求を作成できます。If your Azure subscription has a paid support plan, you can create a technical support request in the Azure portal. それ以外の場合は、さまざまなサポート オプションを選択できます。Otherwise, you can select a different support option.

  1. Azure portal のメイン メニューで、 [ヘルプとサポート] を選択します。On the Azure portal main menu, select Help + support.

  2. [サポート] の下で、 [新しいサポート要求] を選びます。Under Support, select New support request. 要求に対して次の詳細を指定します。Provide these details for your request:

    SettingSetting Value
    問題の種類Issue type テクニカルTechnical
    サブスクリプションSubscription <ご使用の Azure サブスクリプション><your-Azure-subscription>
    サービスService [監視 + 管理] の下で、 [Scheduler] を選択します。Under Monitoring & Management, select Scheduler.
  3. 必要なサポート オプションを選択します。Select the support option you want. 有料サポート プランがある場合は、 [次へ] を選択します。If you have a paid support plan, choose Next.

コミュニティCommunity

次の手順Next steps