[CentOS6][SOS JobScheduler] PHPとJettyで自分好みにデザインした稼働スケジュールを表示する


Create: 2013/06/06
LastUpdate: 2013/06/06
[ メニューに戻る ]

ここでは、JobScheduler の外部APIを利用したPHPのWEBアプリケーションを紹介します。
このWEBアプリケーションは、JobSchedulerのJettyへアクセスして、<show_calendar/>と<show_state/>コマンドを実行し、スケジューリングされている、すべてのJobとJobChainの稼働予定を表示します。
画面イメージは、下図のとおり。
運用スケジュールの確認などに使用することを想定しています。


このWEBアプリケーションを外部APIの使用例(サンプル)として公開します。
試す前に以下をお読みください
  • 右サイドに記載した『免責事項』への同意が必要です。
  • セキュリティ、エラー処理などは、あまり考慮していません。
  • βリリースです。十分なテストを実施していません。
  • 動作を確認した環境
    サーバ ・・・ CentOS6.4+Apache2.2+PHP5.3.3
    ブラウザ ・・・ Windows8+Chrome

インストール


CentOS6.4のApache+PHP はデフォルトの設定でOKです。
WEBアプリケーションは、以下から、アーカイブをダウンロードします。
ダウンロードした場合、『免責事項』に同意したものとみなします



ダウンロードしたアーカイブを解凍して、同じディレクトリに、WEBアプリケーションを設置します。
たとえば、WEBサーバの /var/www/html に以下のように設置します。
-rw-r--r-- 1 apache apache 93064  5月 31 11:00 2013 jquery-1.10.1.min.js
-rw-r--r-- 1 apache apache  6005  5月 31 11:00 2013 show24h.php
-rw-r--r-- 1 apache apache  3233  5月 31 11:00 2013 showcal.css
-rw-r--r-- 1 apache apache 11583  5月 31 11:00 2013 showcal.html
-rw-r--r-- 1 apache apache 12722  5月 31 11:00 2013 showcal.include.php
-rw-r--r-- 1 apache apache  6045  5月 31 11:00 2013 showcal.php
環境にあわせ、必要に応じて "showcal.html" の以下のパラメータを変更します。
青字のパラメータは、画面入力できます。毎回、画面から入力したくなければ、ここでデフォルト値を設定します。
//************************************************
// 環境に合わせて設定する
//------------------------------------------------
// 開始日、終了日の日付算出
var now = new Date();      // 今日
var sday = addDay(now,-1); // 開始日(前日)
var eday = addDay(now,6);  // 終了日(6日後)
// showcal.php の URL
var URL_SHOWCAL = 'showcal.php';
// show24h.php の URL
var URL_SHOW24H = 'show24h.php';
// JobSchedulerのホスト名(IPアドレス)
var DEF_JS_HOST = '';
// Jetty のポート番号(非SSL)
var DEF_JETTY_PORT = '44440';
// 開始日(YYYY-MM-DD形式のゼロ埋め)(デフォルトは、処理日マイナス1)
var DEF_FROM = sday.getFullYear() + '-' + zero2( sday.getMonth() + 1 ) + '-' + zero2( sday.getDate() );
// 終了日(YYYY-MM-DD形式のゼロ埋め)(デフォルトは、処理日プラス6)
var DEF_BEFORE = eday.getFullYear() + '-' + zero2( eday.getMonth() + 1 ) + '-' + zero2( eday.getDate() );
// リミット
var DEF_LIMIT = '100';
// 全体スケジュールをスクロールする日数
var DEF_ADD = 1;
//************************************************

使い方


ブラウザで以下のURLにアクセスします。
  • http://<IPアドレス>/showcal.php
"DEF_JS_HOST" が未設定の場合は、下図の画面が表示されます。
[オプションを見る]をクリックします。


[ホスト名]を入力して、[更新]ボタンをクリックします。


下図のように全体スケジュールが表示されます。スケジューリングされているJobとJobChainがすべて表示されます。
各ボタン操作は以下のとおり。
  • [更新]・・・最新状態
  • [←]・・・過去に1日分、横スクロール
  • [今日]・・・今日を表示(初期表示)
  • [→]・・・未来に1日分、横スクロール
青字はJob、緑字はJobChain(order)です。字の背景が黄色は、次の実行予定です。字の背景が白色は、<run_time>・<add_job>・<add_order>などで設定された計画起動の情報です。
[24h]をクリックすると、その日のタイムテーブルを表示します。


下図のように全体スケジュールが隠れて、タイムテーブルが表示されます。
全体スケジュールが見たければ、[全体スケジュールを見る]をクリックします。