---
schema_version: "1"
id: 3856e8cc83eed137ef0cde0781c49700c42d18416f8fedcb969640b2ad0b8b03
title: Mule アプリケーションのスケジュールの管理
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/runtime-fabric/2.8/manage-schedules.md
canonical_url: https://docs.mulesoft.com/jp/runtime-fabric/2.8/manage-schedules
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 2ce5c8a6ac8b68e1d7fd198bafce08b9f78b859bcaf408150c7205aecd752194
description: MuleSoft Documentation Site
release: "2.8"
latest: false
---
# Mule アプリケーションのスケジュールの管理

Anypoint Runtime Manager を使用して、実行中のアプリケーションを変更することなく、デプロイされたアプリケーションのフロー内の Scheduler コンポーネントの表示と制御を行うことができます。 たとえば、アプリケーションのうちの 1 つがメンテナンス中である間に、スケジュールされたジョブを無効にすることができます。

**\[Schedules (スケジュール)\]**​ タブでは以下を行うことができます。

- 実行中のアプリケーションでスケジュールを表示する。
- アプリケーションでスケジュールを変更する。
- スケジュールを変更せずに、スケジュールされたジョブを直ちに実行する。
- フローのスケジュールを無効または有効にする。

定期的な間隔でトリガーする​_一定間隔_​、または指定した Cron 式に基づいた日時にトリガーする ​_Cron_​ として、Scheduler コンポーネントの種類を設定します。

<table><tbody><tr><td class="icon"><i class="fa icon-important" title="Important"></i></td><td class="content">スケジュールタイプを (一定間隔から Cron、またはその逆に) 変更するには、アプリケーションを更新して再デプロイする必要があります。 デプロイされたアプリケーションのスケジュールタイプを変更することはできません。</td></tr></tbody></table>

<table><tbody><tr><td class="icon"><i class="fa icon-note" title="Note"></i></td><td class="content">この機能を使用するための必要な最小 Mule Runtime Engine バージョンは 4.1.2 以降であり、最小 Runtime Fabric Agent バージョンは 2.0.0 以降です。</td></tr></tbody></table>

## [](#design-schedule)スケジュールの設計に関する考慮事項

スケジュールを設計するときには、次の点を考慮してください。

- Runtime Fabric スケジューラーは、毎回の実行時にジョブ設定を読み取ります。
    
    スケジューラー設定を更新した場合、次回スケジューラーが実行されるときに変更が有効になります。
- スケジュールを変更すると、アプリケーションが再デプロイされます。
- アプリケーションが実行されていないためにスケジュールされたジョブがトリガーされない場合は、アプリケーションが再起動すると、Runtime Fabric はすぐにジョブをトリガーします。
- スケジュールは、スケジューラーの定義されたタイムゾーンに基づきます。
- 複数のレプリカがあるアプリケーションの場合、Runtime Fabric はスケジュールされたジョブをすべてのレプリカで実行します。
    
    **\[Run (実行)\]**​ をクリックしてスケジュールされたジョブを直ちに実行する場合、スケジューラーは 1 つのレプリカで実行されます。
    
    Runtime Fabric は、レプリカ全体に複数の同時スケジューラーを分散します。
- スクリプトを使用して Runtime Fabric のスケジュールを管理することはできません。
    
    Runtime Fabric のスケジュールを管理するには、​**\[Schedules (スケジュール)\]**​ タブまたは Runtime Fabric API を使用してください。
- フロー名には、文字、数字、ハイフン (​`-`​)、アンダースコア (​`_`​)、ピリオド (​`.`​) のみを含めることができます。文字 ​`/`​、​`[`​、​`]`​、​`{`​、​`}`​、​`#`​ は無効です。
- プレースホルダーのあるスケジューラーを使用してスケジュールを作成する場合、スケジュールの作成時に表示される値は、プレースホルダーがいつ検出されるかによって異なります。次に例を示します。
    
    - アプリケーションがデプロイされる前に値が使用可能な場合、その値が表示されます。
    - 値がデプロイメントの前に使用可能で、デプロイメントのプロパティに依存する場合、推定値が表示されます。
    - 値がデプロイメント時に提供されるプレースホルダー (​`${cronExpression}`​ など) である場合、プレースホルダーの正確な値はユーザーインターフェースに表示されません。
    - Runtime Fabric ではデフォルト値の ​`60000`​ が使用されます。
- スケジューラーに変更を加えた場合は、アプリケーションを Exchange に再アップロードして、スケジューラーが期待どおりに動作するようにする必要があります。

## [](#始める前に)始める前に

Runtime Manager のスケジュール機能を使用するには、Anypoint Studio 7.13 を使用して 1 つ以上の Scheduler 要素を含むアプリケーションをデプロイします。

![Anypoint Studio キャンバスの Scheduler コンポーネント](/mulesoft/current/ja-jp/runtime-fabric/2.8/_images/ch2-scheduler-studio.png)

アプリケーションをデプロイしたら、Runtime Manager でスケジュールを管理できます。 アプリケーションが実行されている必要はありません。

Runtime Manager UI にスケジュールを表示するには、Mule Maven Facade v3 を使用して Maven 経由で Runtime Fabric にデプロイしてください。

## [](#runtime-manager-でアプリケーションを表示して管理する)Runtime Manager でアプリケーションを表示して管理する

アプリケーションを Runtime Fabric にデプロイしたら、Runtime Manager で Scheduler 要素を表示して管理します。

1. Anypoint Platform から、​**\[Runtime Manager\]**​ > ​**\[Applications (アプリケーション)\]**​ を選択します。
2. アプリケーション名をクリックします。
3. ナビゲーションメニューで ​**\[Schedules (スケジュール)\]**​ をクリックします。
    
    Runtime Manager では、Scheduler 要素がアプリケーションに表示される順序でリストされます。
    
    ![「Schedules (スケジュール)」 ページの (1) フロー名と (2) 頻度リンク。](/mulesoft/current/ja-jp/runtime-fabric/2.8/_images/ch2-scheduler-rtm.png)
    
    - **\[Name (名前)\]**​ 列には、Scheduler 要素を含むフローの名前 (1) が表示されます。
    - **\[Schedule (スケジュール)\]**​ 列の頻度リンク (2) には、要素のスケジュールが表示されます。
4. ジョブが開始および終了した日時の詳細を確認する場合は、ナビゲーションメニューで ​**\[Logs (ログ)\]**​ をクリックします。
    
    ![ナビゲーションメニューの \[Logs (ログ)\] オプション。](_images/ch2-logs-rtm.png)
5. 要素の頻度リンクをクリックして、スケジュールエディターを開きます。
    
    表示されるスケジュールエディターは、スケジュールタイプによって異なります。
    
    - [一定間隔](#change-fixed-frequency-schedule)
    - [Cron](#change-cron-schedule)
6. スケジュールエディターで、スケジュールを変更するか、または ​**\[Enabled (有効)\]**​ チェックボックスをオフにしてスケジュールを無効にします。
7. **\[Update (更新)\]**​ をクリックして設定の変更内容を保存するか、または ​**\[Cancel (キャンセル)\]**​ をクリックして保存せずに終了します。

### [](#change-fixed-frequency-schedule)一定間隔スケジュールを変更する

1. Anypoint Platform から、​**\[Runtime Manager\]**​ > ​**\[Applications (アプリケーション)\]**​ を選択します。
2. アプリケーション名をクリックします。
3. ナビゲーションメニューで ​**\[Schedules (スケジュール)\]**​ をクリックします。
    
    **\[Schedule (スケジュール)\]**​ 列には、要素のスケジュールが表示されます。
    
    ![一定間隔スケジュールタイプ](/mulesoft/current/ja-jp/runtime-fabric/2.8/_images/ch2-scheduler-fixed-rtm.png)
4. 要素の頻度リンクをクリックして、スケジュールエディターを開きます。
5. スケジュールエディターで、スケジュールを変更するか、または ​**\[Enabled (有効)\]**​ チェックボックスをオフにしてスケジュールを無効にします。
    
    ![一定間隔スケジュール設定](/mulesoft/current/ja-jp/runtime-fabric/2.8/_images/ch2-scheduler-editor-fixed.png)
    
    頻度には、ミリ秒、秒、分、時間、または日を指定できます。 コール間の最小の推奨頻度は 10 秒です。
    
    Unresolved include directive in modules/ROOT/pages/manage-schedules.adoc - include::cloudhub::partial$ch-app-schedule-freq.adoc\[\]
6. **\[Update (更新)\]**​ をクリックして設定の変更内容を保存するか、または ​**\[Cancel (キャンセル)\]**​ をクリックして保存せずに終了します。

### [](#change-cron-schedule)Cron スケジュールを変更する

Cron 式を使用すると、「毎週金曜日の午前 9 時 00 分から午前 10 時 00 分まで 5 分おき」といった複雑なスケジュール頻度を作成できます。

Cron スケジュールタイプの頻度を変更する手順は、次のとおりです。

1. Anypoint Platform から、​**\[Runtime Manager\]**​ > ​**\[Applications (アプリケーション)\]**​ を選択します。
2. アプリケーション名をクリックします。
3. ナビゲーションメニューで ​**\[Schedules (スケジュール)\]**​ をクリックします。
    
    **\[Schedule (スケジュール)\]**​ 列には、要素のスケジュールが表示されます。
    
    ![Cron スケジュールタイプ](/mulesoft/current/ja-jp/runtime-fabric/2.8/_images/ch2-scheduler-cron-rtm.png)
4. 要素の頻度リンクをクリックして、スケジュールエディターを開きます。
5. スケジュールエディターで、スケジュールを変更するか、または ​**\[Enabled (有効)\]**​ (1) チェックボックスをオフにしてスケジュールを無効にします。
    
    ![(1) \[Enabled (有効)\] オプションと (2) \[Quick reference (クイックリファレンス)\] リンクを含む Cron スケジュール設定](_images/ch2-scheduler-editor-cron.png)
6. スケジュールエディターで ​**\[Quick reference (クイックリファレンス)\]**​ (2) をクリックして、必須項目と許可される値のテーブルを展開するか折りたたみます。
    
    この例の Cron 式は、10 秒間隔のスケジュールを設定しています。
    
    Cron トリガーの作成についての詳細は、次の方法で確認できます。
    
    1. [Quartz ドキュメント](http://www.quartz-scheduler.org/documentation)​を参照します。
    2. バージョンを選択し、​**\[Documentation (ドキュメント)\] > \[User’s Guide (ユーザーガイド)\] > \[Tutorial (チュートリアル)\]**​ をクリックして、​**\[CronTrigger\]**​ レッスンをクリックします。
7. **\[Update (更新)\]**​ をクリックして設定の変更内容を保存するか、または ​**\[Cancel (キャンセル)\]**​ をクリックして保存せずに終了します。

## [](#run-immediately)スケジュールされたジョブの即時実行

毎晩実行するジョブを今すぐデバッグする場合は、アプリケーションでスケジュールを更新しなくても、実行中のジョブをトリガーできます。実行中のスケジューラーのインスタンス間でジョブをトリガーすると、指定された期間のタイマーがリセットされます。

<table><tbody><tr><td class="icon"><i class="fa icon-note" title="Note"></i></td><td class="content">スケジュールされたジョブを直ちに実行する場合、複数のレプリカがあるアプリケーションの場合でも、スケジューラーは 1 つのレプリカで実行されます。</td></tr></tbody></table>

スケジュールを上書きしてジョブを直ちに実行する手順は、次のとおりです。

1. Anypoint Platform から、​**\[Runtime Manager\]**​ > ​**\[Applications (アプリケーション)\]**​ を選択します。
2. アプリケーション名をクリックします。
3. ナビゲーションメニューで ​**\[Schedules (スケジュール)\]**​ をクリックします。
4. 管理する要素を選択してから、​**\[Run (実行)\]**​ をクリックします。

## [](#disable-enable-scheduler)Scheduler 要素の無効化または有効化

接続しているアプリケーションがメンテナンス中である間に、スケジュールされたジョブを無効にし、メンテナンスの完了後に再度有効にすることができます。

スケジューラーを再度有効にするまで、Runtime Fabric はスケジュールされたジョブを実行しません。

**既知の問題**​: スケジューラーを無効にしても、スケジューラーはアプリケーションの起動時に実行されます。スケジューラーが実行されないようにする場合は、Anypoint Studio を使用してアプリケーションで ​`startdelay`​ プロパティを 5 秒に設定します。

Scheduler 要素を無効にする手順は、次のとおりです。

1. Anypoint Platform から、​**\[Runtime Manager\]**​ > ​**\[Applications (アプリケーション)\]**​ を選択します。
2. アプリケーション名をクリックします。
3. ナビゲーションメニューで ​**\[Schedules (スケジュール)\]**​ をクリックします。
4. 管理する要素を選択してから、​**\[Disable (無効化)\]**​ をクリックします。
    
    スケジュールエディターで ​**\[Enabled (有効)\]**​ を選択解除または選択して、スケジュールを無効または有効にすることもできます。
    
    ![スケジュールエディターので \[Enabled (有効)\] 切り替え](_images/ch2-scheduler-enable.png)

## [](#関連情報)関連情報

- [Scheduler Endpoint (Trigger)](https://docs.mulesoft.com/mule-runtime/latest/scheduler-concept)
- [Quartz ドキュメント](http://www.quartz-scheduler.org/documentation)
- [MuleSoft によって提供されるサンプルアセット](https://anypoint.mulesoft.com/exchange/?view=grid&type=example&search=&organizationId=68ef9520-24e9-4cf2-b2f5-620025690913)