スケジュールされたジョブの構文

PureMessage スケジューラは、PureMessage コマンドをスケジュールされた時刻に実行する cron に類似したサービスです。cron の代わりにスケジューラを使用する利点は、PureMessage 自体またはコマンドでスケジュールされたジョブを簡単に停止および開始できる点です。

Local Services」(ローカルサービス) タブで「Scheduler Service」(スケジューラのサービス) をクリックしてサービスステータスを参照するか、スケジューラの開始および停止を行います。個別のサービスを編集するには、「Scheduled Services」(スケジュールされたサービス) のテーブルで「Job Name」(ジョブ名) をクリックします。

また、スケジュールされたジョブは /opt/pmx/etc/scheduler.conf を編集して追加できます。各イベントは <event> のセクションで説明されます。下記に例を示します。

<event queue>
    desc = 'Run the PureMessage Queue'
    enabled = 1
    action = /opt/pmx/bin/pmx-queue
    type = exec
    #run every five minutes
    <when>
        s = 1
        m = */5
    </when>
</event>

<when> ブロックでスケジューラがイベントを実行する頻度が決定されます。<when> ブロックが値を含まない、または値を入力しなかった場合、デフォルトの 1分に一度の頻度に設定されます。実行の頻度がそれよりも低いイベントについては、時間と日付を指定する必要があります。たとえば、各月の 15日および 30日 と毎週日曜の午前中、2:40 a.m にイベントをスケジュールするには、以下を入力します。

<when>
    s = 1
    m = 40
    h = 2
    md = 15
    md = 30
    wd = 7
</when>
s = 1 を含める必要があります。これを指定しないと指定した分のすべての秒 (60 秒間、2:40 から 2:41 までの間) にイベントが実行されてしまいます。

スケジューラのコマンドラインのオプションは pmx-scheduler 経由で使用できます。