ジョブを停止します。
ジョブを停止させる場合は、トランザクショナル停止モードと、強制停止モードを指定することができます。
トランザクショナル停止モードとは、実行中の処理をコミット(またはロールバック)したタイミングでジョブを停止させます。
一方、強制停止モードの場合は、仕掛かり中のトランザクションの状態によらず処理を中断し、トランザクションはロールバックしてジョブを停止させます。
ジョブ開始コマンドにリクエストID(--reqid)を指定している場合は、リクエストID指定でジョブを停止させることができます。
リクエストIDを利用しない場合は、ジョブ開始コマンド同様、ジョブ名とジョブパラメータの組合せによって停止させるジョブの実行を特定します。
${BS_HOME}/bin
本コマンドを実行するには、アカウントに以下のいずれかのロールが必要です。
stop-job <接続オプション> <コマンドオプション>
WebOTX Batch Serverのコマンドは、バッチドメインエージェントを経由して各バッチコンテナへ指示を行います。
そのため、WebOTX Batch Serverが提供する主なコマンドはバッチドメインエージェントへの接続オプションの指定が必要です。
{--user <user> --password <password> [--host <host>] [--port <port>] [--responseTimeout <responseTimeout>]
[--responseRetry <responseRetry>]}
| オプション名 | 説明 |
|---|---|
| --user <user> | バッチドメインエージェントに接続するアカウント名を指定します。 バッチドメインエージェントが稼働しているサーバ上のOSユーザのアカウント名を指定します。 |
| --password <password> | アカウントのパスワードを指定します。 バッチドメインエージェントが稼働しているサーバ上のOSユーザのパスワードを指定します。 |
| --host <host> | 接続先のバッチドメインエージェントのIPアドレス、または、ホスト名を指定します。 ドメインセットアップ時に ${BS_HOME}/<domainName>.properties 中の domain.admin.host に指定したIPアドレス、または、ホスト名を指定します。 オプション未指定時に使用される既定値はlocalhostです。 |
| --port <port> | 接続先のバッチドメインエージェントのNativeコマンド受信用ポート番号(既定値:6412)を指定します。 ドメインセットアップ時に ${BS_HOME}/<domainName>.properties 中の webotx.batch.domain.http.port に指定したポート番号を指定します。 オプション未指定時に使用される既定値は6412です。 |
| --responseTimeut <responseTimeut> | コマンドを実行した後、バッチドメインエージェント側から実行結果を受信するまでの最大待ち時間(タイムアウト値)を指定します。 既定値は180秒です。 1以上の整数値を指定することができ、単位は秒になります。 |
| --responseRetry <responseRetry> | タイムアウト時に処理をリトライする上限回数を指定します。既定値は-1(無制限にリトライ実行)となります。 -1、または0以上の整数値を指定することができ、単位はリトライ回数になります。 |
{[--transactional | --force] [--timeout <timeout>]
--jobname <jobname> [--batchap <batchap>] [--batchapgroup <batchapgroup>]
[--reqid <reqid>]
[--parameterfile <parameterFile>] [jobParameters]
[--serverResponseTimeoutRatio <serverResponseTimeoutRatio>] | --version | --help}
{[--transactional | --force] [--timeout <timeout>] [--serverResponseTimeoutRatio <serverResponseTimeoutRatio>]
--reqid <reqid> | --version | --help}
| オプション名 | 説明 |
|---|---|
| --jobname <jobName> | ジョブ名を指定します。 |
| --batchap <batchapName> | バッチアプリケーション名を指定します。 指定を省略した場合は、既定値のバッチアプリケーション名 default が指定されます。 |
| --batchapgroup <batchapGroupName> | バッチアプリケーショングループ名を指定します。 指定を省略した場合は、既定値のバッチアプリケーショングループ名 default が指定されます。 |
| --reqid <reqId> | ジョブのリクエストIDを指定します。 リクエストIDには一意な値を指定する必要があります。 異なるジョブの実行において、同一のリクエストIDを指定すると異常終了します。 |
| --transactional | トランザクショナル停止モードを指定します。(デフォルト) |
| --force | 強制停止モードを指定します。強制停止モードが有効になるためには、強制停止しようとするジョブのジョブ定義に強制停止リスナ(BSForceStopListenerまたはBSForceStopDetectionListener)が組み込まれている必要があります。 強制停止リスナを介した強制停止要求チェックのタイミング以外では、停止されません。 |
| --timeout | 停止タイムアウト秒 を指定します。 既定値は、 0 (無限)です。 |
| --parametersFile <filePath> | ジョブパラメータファイル名を含むファイルの絶対パスを指定します。 ジョブパラメータファイルとは、ジョブのパラメータをkey=valueのプロパティファイル形式で記述したファイルです。 同一ファイル内に重複するkeyが指定された場合、後の行に記載されている値が優先されます。 <jobParameters>と重複するkeyがプロパティファイル内で指定された場合、<jobParameters>で指定された値が優先されます。 |
| <jobParameters> | ジョブパラメータをkey=valudeのプロパティ形式をコマンド引数として指定します。複数のパラメータを指定する場合、 (半角空白)区切りで指定します。 <jobParameters>内で重複するkeyが指定された場合、初めに記載された値が優先されます。 --parametersFileに指定したジョブパラメータファイルに含まれるkeyと重複するkeyが指定された場合、<jobParameters>で指定された値が優先されます。 再実行時に指定したパラメータは前回実行時に指定したパラメータに追加・上書きされます。 |
| --serverResponseTimeoutRatio <serverResponseTimeoutRatio> |
responseTimeoutで指定したコマンド実行側のタイムアウト値に対するバッチドメインエージェント側の最大待ち時間(タイムアウト値)の割合(%)を指定します。 既定値は10(%)です。 1以上の整数値を指定することができ、単位はパーセント(%)になります。 例えば、接続オプションである--responseTimeoutの値を240(秒)として、 --serverResponseTimeoutRatioで指定した値を20(%)とした場合、 バッチドメインエージェント側のタイムアウト値は240秒の20(%)である48秒となります。 |
| --version | コマンドのバージョンを表示します。 |
| --help | コマンドのヘルプを表示します。 |
| 戻り値 | 説明 | |
|---|---|---|
| 0 | 正常終了 | |
| 200 | ジョブリクエストキューイングエラー キューがあふれたためジョブリクエストの投入に失敗 |
|
| 201 | 指定したジョブがデプロイされていない | |
| 202 | 指定したジョブが実行されていない(JobRepositoryが初期化された場合を含む) | |
| 210 | ジョブの開始エラー 指定したジョブのコンテナ上での開始に失敗 |
|
| 211 | ジョブの開始要求が取り消された | |
| 230 | 指定したコンテナが存在していない | |
| 231 | 利用可能なコンテナが存在していない | |
| 240 | コマンドとバッチドメインエージェントとの通信でエラー | |
| 241 | バッチドメインエージェントとコンテナ間での通信エラー | |
| 242 | JobRepositoryからの状態取得エラー | |
| 243 | 環境上の問題(設定ミス等)によるエラー | |
| 244 | 認証エラー 指定したアカウントの認証に失敗 |
|
| 245 | 権限エラー 指定したアカウントに当該操作を行う権限が割り当てられていない |
|
| 250 | コマンドエラー (コマンド解析エラー) | |
| 255 | 異常終了。コマンド実行エラー | |
[root@localhost bin]# ./stop-job --user user --password pass --batchapgroup default --batchap default --jobname hello --reqid 15 jobParam1=value1 jobParam2=value2 --transactional INFO - Command start processing (stop-job) INFO - Command is done. (stop-job) ExitCode = 0<停止処理が行われたジョブの実行画面>
[root@localhost bin]# ./jobctl.sh start --user user --password pass --batchapgroup default --batchap default --jobname hello --reqid 15 jobParam1=value1 jobParam2=value2
2010/03/15 18:42:09 026 INFO main AbstractJobControlCommand - [BS240341001] コマンドの処理を開始します。
2010/03/15 18:42:09 239 INFO main StartJobCommand - [BS240341002] ジョブの開始を要求しています。
2010/03/15 18:42:09 314 INFO main StartJobCommand - [BS240341004] ジョブが開始されるのを待機します。
2010/03/15 18:42:09 789 INFO main StartJobCommand - [BS240341005] ジョブが開始されたことを検知しました。
2010/03/15 18:42:09 790 INFO main StartJobCommand - [BS240341006] DomainName = batchDomain1, ContainerName = container1-1, JobInstanceId = 26, JobExecutionId = 26
2010/03/15 18:42:09 790 INFO main StartJobCommand - [BS240341008] ジョブ実行ログを表示します :-
〜snip〜
2010/03/16 14:38:12 960 ERROR WorkManager-2 ThreadStepInterruptionPolicy - Step interrupted
2010/03/16 14:38:12 961 ERROR WorkManager-2 AbstractStep - Encountered an error executing the step
org.springframework.batch.core.JobInterruptedException: Job interrupted status detected.
at org.springframework.batch.core.step.ThreadStepInterruptionPolicy.checkInterrupted(ThreadStepInterruptionPolicy.java:44)
〜snip〜
2010/03/16 14:38:13 173 INFO main StartJobCommand - [BS240341009] ジョブが終了しました。 status = STOPPED :-
com.nec.webotx.batch.core.execution.RuntimeJobStatus$UserException : original Exception is org.springframework.batch.core.JobInterruptedException : Job interrupted by step execution
original stack trace is :-
Exit Code = 106