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. Scheduler で設定したジョブを使用し続けるには、この記事に従って、できるだけ早く Azure Logic Apps に移行してください。To continue working with the jobs that you set up in Scheduler, please move to Azure Logic Apps as soon as possible by following this article.

この記事では、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 Blob Storage、Azure Service Bus、Office 365 Outlook、SAP などの数百のサービスのすぐに使用できるコネクタを使用して、ジョブを構築します。Build your job by using a visual designer and ready-to-use connectors from hundreds of services, such as Azure Blob Storage, Azure Service Bus, Office 365 Outlook, and SAP.

  • スケジュールされた各ワークフローを最上級の Azure リソースとして管理します。Manage each scheduled workflow as a first-class Azure resource. 各ロジック アプリは個別の Azure リソースであるため、ジョブ コレクションの概念について心配する必要はありません。You don't have to worry about the concept of a job collection because each logic app is an individual Azure resource.

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

  • タイム ゾーンをサポートし、夏時間 (DST) に合わせて自動調整されるスケジュールを設定します。Set schedules that support time zones and automatically adjust to 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

スクリプトを使用して移行するMigrate by using a script

Scheduler ジョブはそれぞれ固有であるため、Azure Logic Apps へのすべての Scheduler ジョブの移行に 1 つで対応できるツールは存在しません。Each Scheduler job is unique, so no one-size-fits-all tool exists for migrating Scheduler jobs to Azure Logic Apps. ただし、このスクリプトを編集することにより、ニーズを満たすことができます。However, you can edit this script to meet your needs.

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

ロジック アプリを 1 つだけ作成して、複数の 1 回限りのジョブを実行できます。You can run multiple one-time jobs by creating just a single 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, select Use sample payload to generate schema.

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

      サンプル ペイロード

  4. トリガーで、 [次のステップ] を選択します。Under the trigger, select 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 select Send to make the request.

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

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

[raw] ボックスに、要求で送信するペイロードを入力します。In the raw box, enter the payload that 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, select 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

  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, select 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 ellipses (...) menu, and select Settings.

    アクションの設定を開く

  2. 目的の再試行ポリシーを選択します。Select the retry policy that 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 that you want to handle, move your pointer over the arrow between steps, and select 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 ellipses (...) 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, select 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 年 12 月 31 日に完全に廃止される予定です。A: Azure Scheduler is scheduled to fully retire on December 31, 2019. この日付より前に行う必要がある重要な手順と詳細なタイムラインについては、「Scheduler のサービス停止日を 2019 年 12 月 31 日まで延長」を参照してください。For important steps to take before this date and a detailed timeline, see Extending retirement date for Scheduler to December 31, 2019. 一般的な更新については、Azure の更新情報 - スケジューラを参照してください。For general updates, see Azure updates - Scheduler.

Q: サービスの廃止後、ジョブ コレクションとジョブはどうなりますか。Q: What happens to my job collections and jobs after the service retires?
A: Scheduler のすべてのジョブ コレクションとジョブが実行を停止され、システムから削除されます。A: All Scheduler job collections and jobs stop running and are 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. ただし、ニーズに基づき、このスクリプトを編集して Azure Scheduler ジョブを Azure Logic Apps に移行することができます。However, based on your needs, you can edit this script to migrate Azure Scheduler jobs to Azure Logic Apps.

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. [サポート] メニューの [新しいサポート リクエスト] を選択します。From the Support menu, select New support request. リクエストに関して次の情報を入力します。Provide this information about for your request:

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

コミュニティCommunity

次の手順Next steps