ジョブ定義
バッチサービスはジョブ定義の作成からはじめます。ジョブ定義を実行するとジョブはジョブキューに送信され、準備が整った段階で処理が実行開始されます。ジョブキューに送信するタイミングをトリガー条件によって決めるスケジューリング機能も利用できます。
作成と編集
[サイドメニュー]
-[バッチ]
の順に進みます。画面上部の[ジョブ定義]
ボタンを選択します。(デフォルトでは、[ジョブ定義]
タブが選択済みです。)- ジョブの一覧が表示されます。
- 画面右上の
[作成]
-[新規]
ボタンをクリックします。 - ジョブを定義する画面が開きます。
- ジョブ定義は
「全般設定」「トリガー」「スクリプト」
の3つのメニューから構成され、左ツリーから各メニューを選択することができます。 - 各メニューの内容を記述し、右下の
[作成]
ボタンをクリックすると、ジョブ定義が保存されジョブ定義一覧に追加されます。 - ジョブ定義は一覧右メニューから
[編集]
を選択することで内容を編集できます。
Tips
全般設定
ジョブ定義の全般設定を設定します。
項目 | 指定 | 説明 | 備考 |
---|---|---|---|
ジョブ定義名 | 必須 | ジョブ定義の名前を設定します。 | 64文字以内の任意の文字列 |
説明 | 任意 | ジョブ定義の説明 | 512文字以内の任意の文字列 |
実行タイムアウト時間 | 任意 | ジョブの実行タイムアウト時間 (秒) 未指定の場合はタイムアウトなし タイムアウトした場合はジョブはFailedステータスで終了する | 60~2147483646 範囲の整数 |
パラメータ | 任意 | ジョブのスクリプトから参照可能なパラメータ 詳細は「パラメータ参照」の項目を参照してください | JSON |
トリガー
条件によってジョブを実行したい場合、トリガーを設定します。
項目 | 指定 | 説明 | 備考 |
---|---|---|---|
タイプ | 任意 | トリガーのタイプを指定します。
| 64文字以内の任意の文字列 |
トリガー | 必須 | トリガーの設定を行います。 自動リピートと固定スケジュールで予定時間を入力します。 | |
表示タイムゾーン | 必須 | トリガー指定に従い次の10件の予定実行時刻が表示されます。この項目では上記を表記するタイムゾーンを指定します。 |
Tips
スクリプト
ジョブが実行するスクリプトをエディタ領域に記述します。アクション同様、メインスクリプトの他、メインスクリプトから呼び出すJavaScript関数、SQL関数、REST関数を定義できます。
ジョブ定義一覧
作成したジョブ定義はジョブ定義一覧に表示されます。ジョブ定義一覧の各項目の意味は以下の通りです。
項目 | 説明 |
---|---|
ジョブ定義 | ジョブ定義名を表示します。 |
トリガー | トリガー名を表示します。 |
ステータス | ジョブ定義の有効・無効ステータスを表示します。 |
次回の実行時刻 | ジョブの次回実行予定時刻を表示します。 トリガー未設定または無効化されている場合は表示されません。 |
作成時刻 | ジョブ定義の作成時刻を表示します。 |
右メニュー | コンテキストメニューを開きます。 メニューは、1. [実行] 2.[詳細] 3.[編集] 4.[有効化/無効化] 5.[削除] 6.[エクスポート] となります。 |
スクリプト付録
バッチスクリプトの記述についてアクションと基本的に同様ですが異なる点もあります。ここではできることや注意点について説明します。
パラメータ参照
スクリプト内ではユーザがジョブ定義に設定したパラメータ内容 (JSON) を「$param」オブジェクトとして参照することができます。
パラメータ記述例1
スクリプトからの呼び出し例1
パラメータ記述例2
スクリプトからの呼び出し例2
環境変数参照
スクリプト内では特定の環境情報を「$env」オブジェクトとして参照することができます。 $envオブジェクトのプロパティは次になります。
プロパティ名 | 説明 | 型 |
---|---|---|
BATCH_JOB_ID | 自動的に割り当てられるジョブのID | string |
BATCH_JOB_DEFINITION_NAME | ユーザが設定したジョブ定義名 | string |
BATCH_JOB_NAME | ユーザが設定したジョブ名 | string |
ビルトイン関数
バッチスクリプト内で使用できるビルトイン関数について説明します。
ビルトイン関数 | 説明 | 使用例 |
---|---|---|
$fn.addUsers(param) | $fn.addUsers(param) を参照してください。 | |
$fn.createFolder(path) | $fn.createFolder(path) を参照してください。 | |
$fn.createUser(param) | $fn.createUser(param) を参照してください。 | |
$fn.deleteFile(path) | $fn.deleteFile(path)を参照してください。 | |
$fn.deleteFolder(path) | $fn.deleteFolder(path)を参照してください。 | |
$fn.deleteUser(email) | $fn.deleteUser(email) を参照してください。 | |
$fn.exit(exitCode) | ジョブを指定した終了コードで終了します。 引数:終了コード (数値) 戻り値:なし Tips 本ビルトイン関数はバッチスクリプト専用となっています。アクションでは使用できません。 | try { // do something } catch(err) { console.error(err); $fn.exit(2); } |
$fn.getFile(path) | $fn.getFile(path) を参照してください。 | |
$fn.getFileNames(path) | $fn.getFileNames(path) を参照してください。 | |
$fn.getGroups(option) | $fn.getGroups(option) を参照してください。 | |
$fn.getUsers(groupName?,option) | $fn.getUsers(groupName?,option) を参照してください。 | |
$fn.listUsersByEmail(email,option) | $fn.listUsersByEmail(email,option) を参照してください。 | |
$fn.listUsersByName(name,option) | $fn.listUsersByName(name,option) を参照してください。 | |
$fn.putFile(path, obj) | $fn.putFile(path, obj)を参照してください。 | |
$fn.removeUsers(param) | $fn.removeUsers(param)を参照してください。 | |
$fn.resetPassword(param) | $fn.resetPassword(param)を参照してください。 | |
$fn.sendMail(param) | $fn.sendMail(param)を参照してください。 | |
$fn.updateUser(param) | $fn.updateUser(param)を参照してください。 |
インポート
ローカルにエクスポートしたジョブ定義はサービスにアップロードすることができます。画面右上の[作成]
ボタンから[インポート]
を選択します。[インポート]
ダイアログからジョブ定義フォルダを選択して、アップロードを実行します。
Tips