8.6.9 submittask(サービスの実行,タスクの一括再登録)
機能
サービスの実行
サービス名,リソースグループ名,およびプロパティ値を指定してコマンドを実行することで,指定したサービスを実行します。タスクが正常に実行された場合,タスクIDがメッセージに出力されます。デバッグサービスについては実行できません。オプションを指定することで,サービスを定期実行したり,実行日時を指定して実行したりできます。何も指定しない場合,サービスは即時実行されます。
タスクの一括再登録
listtasksコマンドで出力したタスク詳細情報の内容を元に,指定日時実行タスクおよび定期実行タスクを一括で再登録します。再登録したタスクには,元のタスクの設定およびタスクの状態が引き継がれます。これは,タスク詳細情報格納フォルダの情報を参照して,同一の設定で指定日時実行または定期実行でサービスを実行する機能であり,同一のタスクを復元する機能ではありません。そのため,再登録されたタスクは,再登録前のタスクとは別のタスクであり,タスクIDも異なります。デバッグタスクについては再登録できません。
- タスクを一括再登録する前の作業について
-
タスクの一括再登録をする前に,次の作業を実施してください。
-
タスク詳細情報格納フォルダには,タスクの一括再登録を行うJP1/AOと,バージョンおよびリビジョンが同一のJP1/AOで出力したフォルダを指定してください。バージョンまたはリビジョンが異なるJP1/AOで出力したタスク詳細情報格納フォルダを指定した場合,タスクの一括再登録に失敗します。
-
listtasksコマンドで出力されたタスク詳細情報格納フォルダがあることを確認してください。
-
定義情報(サービス,サービステンプレート,ユーザー,ユーザーグループ,リソースグループ,エージェントレス接続先定義,サービス共有プロパティ)および定義ファイルを別途設定してください。必要に応じて,backupsystemコマンドおよびrestoresystemコマンドを使用して,これらの設定を復元してください。listtasksコマンドでタスク詳細情報格納フォルダを出力したときから,これらの設定を変更したり,サービスを削除したりしないでください。サービスの設定が変更されていた場合,変更後の設定に従って,一括再登録が実行されます。また,サービス設定が削除されていた場合は,該当のタスクの再登録に失敗します。
-
指定日時実行タスクの場合,タスク再登録時点で指定日時が過ぎていないことを確認してください。指定日時が過ぎていると,エラーとなるため,そのままでは再登録できません。
-
- 一括再登録されるタスクの条件について
-
一括再登録されるタスクは,タスク詳細情報格納フォルダ内にあるタスク一覧(listtasks.csv)のうち,未実行の指定日時実行タスクおよび定期実行タスクです。未実行の指定日時実行タスクおよび定期実行タスクは,タスク一覧で「Unexecuted Schedule」の列が「true」となっています。
- 指定日時が過ぎている指定日時実行タスクの再登録について
-
指定日時が過ぎている指定日時実行タスクはそのままでは再登録できません。一括再登録しても,指定日時が過ぎている旨のメッセージが出力されて,再登録が失敗します。再登録に失敗したタスクの設定内容を確認したい場合は,タスク詳細情報格納フォルダ内のタスク一覧ファイル(listtasks.csv)と,個別タスク詳細情報格納フォルダのプロパティファイルを参照してください。指定日時が過ぎているタスクを登録したい場合は,タスク詳細情報格納フォルダ内にあるタスク一覧(listtasks.csv)の元の指定日時を確認してから,JP1/AOの[サービス]画面またはsubmittaskコマンドで,新しく日時を指定して個別にサービスを実行してください。なお,開始予定日時は現在の日時以降を指定してください。
- 再登録に失敗したタスクがある場合の対処について
-
タスクの一括再登録に失敗した場合は,タスク登録が失敗した旨のメッセージと,再登録に失敗したタスクのタスクIDが表示されます。このときのタスクIDとは,listtasksコマンドで出力した時点のタスクIDです。一部,再登録に成功したタスクがある場合,該当するタスクの個別タスク詳細情報格納フォルダをほかの場所に退避させてください。その後,失敗原因を取り除いてからコマンドを再実行してください。フォルダを退避させるのは,再登録に成功したタスクの2重登録を避けるためです。この対処をしたあとも同様のエラーが発生する場合は,システム管理者に連絡してください。
形式
サービスを即時実行する場合
submittask /servicename サービス名 [/resourcegroup リソースグループ名] [/taskname タスク名] [/taskdescription タスクの説明] [/property プロパティキー プロパティ値 | /propertyfile プロパティファイルパス] /user ユーザーID {/password パスワード | /passwordfile パスワードファイルパス} [/wait]
サービスを指定した日時に実行する場合
submittask /servicename サービス名 [/resourcegroup リソースグループ名] [/taskname タスク名] [/taskdescription タスクの説明] [/property プロパティキー プロパティ値 | /propertyfile プロパティファイルパス] /user ユーザーID {/password パスワード | /passwordfile パスワードファイルパス} /scheduledate yyyy-mm-dd /scheduletime hh:mm
サービスを定期的に実行する場合
submittask /servicename サービス名 [/resourcegroup リソースグループ名] [/taskname タスク名] [/taskdescription タスクの説明] [/property プロパティキー プロパティ値 | /propertyfile プロパティファイルパス] /user ユーザーID {/password パスワード | /passwordfile パスワードファイルパス} /recurrencepattern {daily | weekly:sun,mon,...,sat | monthly:{dd,dd,...,dd | endofmonth}} /recurrencetime hh:mm /recurrencestart yyyy-mm-dd
タスクを一括再登録する場合
submittask /reregister /taskdetaildir タスク詳細情報格納フォルダ [/setoriginalsubmitter] /user ユーザーID {/password パスワード | /passwordfile パスワードファイルパス}
引数
- /servicename サービス名
-
実行するサービスの名称を指定します。
指定できる文字数は,1〜64文字です。
- /resourcegroup リソースグループ名
-
実行するサービスが所属するリソースグループの名称を指定します。
このオプションを省略した場合は,引数に指定したユーザーに関連づいたリソースグループが設定されますが,ユーザーに関連づいたリソースグループが複数存在する場合,エラーとなります。
指定できる文字数は,1〜63文字です。使用できる文字の種類は,半角英数字および「_」です。
ただし,ビルトインリソースグループである"All Resources"を指定する場合だけ空白を指定できます。
- /taskname タスク名
-
タスクの名称を指定します。
このオプションを省略した場合は,デフォルトの名称として「サービス名_YYYYMMDDhhmmss」(YYYYMMDDhhmmss:サービス実行時の時刻)が設定されます。
指定できる文字数は1〜128文字です。使用できる文字の種類は,制御文字(¥u0000〜¥u001Fおよび¥u007F〜¥u009F)以外です。
- /taskdescription タスクの説明
-
タスクの説明を指定します。
このオプションを省略した場合は値が設定されません。
指定できる文字数は,1〜256文字です。使用できる文字の種類は,制御文字(¥u0000〜¥u001Fおよび¥u007F〜¥u009F)以外です。
- /property プロパティキー プロパティ値
-
実行するサービスで使用するプロパティキーおよびプロパティ値を指定します。指定したプロパティ値はサービステンプレートの仕様に従って妥当かどうか検証されます。
このオプションで設定しなかったプロパティキーについては,[サービス設定]ダイアログボックスで指定した値が設定されます。指定が必須のプロパティについて,[サービス設定]ダイアログボックスで値を指定していない場合,かつこのオプションでも値を指定しなかった場合,エラーとなります。
このオプションは,「/property プロパティキー1 プロパティ値1 /property プロパティキー2 プロパティ値2」のように複数指定できます。指定できるプロパティキーとプロパティ値の組み合わせは,最大100個です。
-
プロパティキー
サービスのプロパティキーを指定します。
指定できる文字数は,1〜128文字です。使用できる文字の種類は,半角英数字,「-」,「_」,「.」です。
同一のプロパティキーが指定された場合は,エラーとなります。
-
プロパティ値
プロパティキーに対応するプロパティ値を指定します。
空白と特殊記号を含む場合,「"」で囲んで指定します。
-
- /propertyfile プロパティファイルパス
-
実行対象のサービスで使用する入力プロパティの設定を定義したプロパティファイルのパスを,絶対パスまたは相対パスで指定します。
このオプションで設定しなかったプロパティキーおよびプロパティ値については,[サービス設定]ダイアログボックスで指定した値が設定されます。指定が必須のプロパティについて,[サービス設定]ダイアログボックスで値を指定していない場合,かつこのオプションで指定したプロパティファイルでも値が定義されていない場合,エラーとなります。
プロパティファイルの形式を次に示します。
表8‒8 プロパティファイルの形式 項目
形式
格納場所
任意(ただし,コマンド実行ユーザーがアクセスできること)
ファイル名
任意
定義形式
プロパティキー=プロパティ値(改行コード)
プロパティキー=プロパティ値(改行コード)
:
定義例※
common.targetHost=ajsagthost
jp1base.jp1BaseLHostName=lohost
common.foreachIPaddress=192.168.1.xx,192.168.1.yy
- 注※
-
プロパティ値の区切り文字は使用するサービステンプレートによって異なります。例では「,」を区切り文字に使用しています。
プロパティごとに1行ずつ定義してください。定義できるプロパティキーとプロパティ値の組み合わせは最大100個です。
最初に「=」が出現するまでの文字列はプロパティキーと見なします。最初に出現する「=」の次の文字から,行末の改行コードまでの文字列はプロパティ値と見なします。ファイル末尾の改行コードの有無は問いません。
- /reregister
-
タスクを一括再登録する場合に指定します。reregisterオプションを指定する場合は,taskdetaildirオプションも必ず指定してください。
- /taskdetaildir タスク詳細情報格納フォルダ
-
reregisterオプションを指定したときに,必ず指定します。再登録したい指定日時実行タスクまたは定期実行タスクの情報が格納された,タスク詳細情報格納フォルダのパスを,絶対パスまたは相対パスで指定します。ただし,指定できるのはローカルディスクのフォルダだけです。指定できる文字数は,絶対パスの長さで190文字までです。
- /setoriginalsubmitter
-
タスクを一括再登録する場合にこのオプションを指定すると,一括再登録をした実行者ではなく,元のタスクの実行者を,再登録後のタスク実行者として表示できます。元のタスクの実行者とは,listtasksコマンドでタスク詳細情報を出力した時点でのタスクの実行者を指します。再登録後のタスクの実行者は,[タスク]画面の[実行者]列に表示されるユーザーIDで確認できます。listtasksコマンドでタスク詳細情報を出力した時点でのタスクの実行者は,タスク詳細情報格納フォルダに出力されたlisttasks.csvファイルのSubmitted Byの列で確認できます。
このオプションを省略した場合は,submittaskコマンドのuserオプションに指定したユーザーIDが,再登録後のタスクの実行者となります。
なお,タスクを再登録する時点で,「listtasksコマンドでタスク詳細情報を出力した時点でのタスクの実行者」が存在しない場合であってもエラーにはなりません。この場合,タスクの実行者は,「listtasksコマンドでタスク詳細情報を出力した時点でのタスクの実行者」になります。
- /user ユーザーID
-
JP1/AOのユーザーIDを指定します。servicenameオプションで指定したサービスが所属するリソースグループに関連づいたユーザーを指定してください。
指定できる文字数は,1〜256文字です。
使用できる文字の種類は,半角英数字,「!」,「#」,「$」,「%」,「&」,「'」,「(」,「)」,「*」,「+」,「-」,「.」,「=」,「@」,「¥」,「^」,「_」,「|」です。
大文字と小文字は区別しません。
- /password パスワード
-
userオプションで指定した,ユーザーのパスワードを指定します。
指定できる文字数は,1〜256文字です。
使用できる文字の種類は,userオプションと同じです。
- /passwordfile パスワードファイルパス
-
userオプションで指定したユーザーのパスワードファイルのパスを絶対パスまたは相対パスで指定します。パスワードファイルはencryptpasswordコマンドで作成します。
- /wait
-
指定した場合,タスクの実行結果(正常終了または失敗)を出力してからコマンドを終了します。waitオプションを指定しない場合,タスク実行の終了を待たないで,コマンドが終了します。このとき,タスクの実行が正常に開始された場合にだけ,タスクIDがメッセージで出力されます。
- /scheduledate
-
サービスを実行する年月日を,「YYYY-MM-DD」の形式で指定します。「YYYY」には西暦を4桁の半角数字で指定します。「MM」には月を1(または01)から12の半角数字で指定します。「DD」には日を1(または01)から31の半角数字で指定します。scheduledateオプションは,scheduletimeオプションとあわせて指定します。なお,次のどれかに該当する場合は,コマンドの実行に失敗します。
-
引数の組み合わせが不正な場合
引数の組み合わせについては「表8‒9 submittaskコマンドの引数の組み合わせ」を参照してください。
-
指定した日付の形式が不正な場合
-
scheduletimeオプションとの組み合わせで決まる日時が過去を指定している場合
-
指定した日付が1994年1月1日から2036年12月31日の範囲外の場合
-
- /scheduletime
-
サービスを実行する時分を,「hh:mm」の形式で指定します。「hh」には時を00から23の半角数字で指定します。「mm」には分を00から59の半角数字で指定します。scheduletimeオプションは,scheduledateオプションとあわせて指定します。なお,次のどれかに該当する場合は,コマンドの実行に失敗します。
-
引数の組み合わせが不正な場合
引数の組み合わせについては「表8‒9 submittaskコマンドの引数の組み合わせ」を参照してください。
-
指定した時刻の形式が不正な場合
-
scheduledateオプションとの組み合わせで決まる日時が過去を指定している場合
-
- /recurrencepattern {daily | weekly:sun,mon,...,sat | monthly:{dd,dd,...,dd | endofmonth}}
-
サービスを定期実行する周期を指定します。recurrencepatternオプションは,recurrencetimeオプションおよびrecurrencestartオプションとあわせて指定します。なお,次のどちらかに該当する場合は,コマンドの実行に失敗します。
-
引数の組み合わせが不正な場合
引数の組み合わせについては「表8‒9 submittaskコマンドの引数の組み合わせ」を参照してください。
-
指定した定期実行周期の形式が誤っている場合
定期実行周期の種別は,毎日,毎週,毎月の3つがあります。定期実行周期の書式は,定期実行周期の種別ごとに異なります。
- 毎日
-
dailyを指定します。
- 毎週
-
weekly:sun,mon,...,satの形式で指定します。
先頭にweekly:を指定し,サービスを実行する曜日を「,」区切りで指定します。曜日の略称には,sun,mon,tue,wed,thu,fri,satを使用します。曜日を指定する際,順序は問いません。同じ曜日が複数回指定されている場合は,引数不正のエラーとなります。
- 毎月
-
monthly:{dd,dd,...,dd | endofmonth}を指定します。
先頭にmonthly:を指定し,サービスを実行する日を「,」区切りで指定します。月末にサービスを実行する場合は,日を指定しないで,endofmonthだけを指定します。日を指定する際,順序は問いません。日を指定する場合,1(または01)から31の半角数字で指定します。同じ日が複数回指定されている場合や,0以下や32以上などの存在しない日を指定した場合は,引数不正のエラーとなります。なお,日の指定で存在しない月の定期実行はスキップされます。例えば毎月30や31日を指定したとき,2月の定期実行はスキップされます。
-
- /recurrencetime hh:mm
-
サービスを定期実行する時分を,「hh:mm」の形式で指定します。「hh」には時を00から23の半角数字で指定します。「mm」には分を00から59の半角数字で指定します。recurrencetimeオプションは,recurrencepatternオプションおよびrecurrencestartオプションとあわせて指定します。なお,次のどちらかに該当する場合は,コマンドの実行に失敗します。
-
引数の組み合わせが不正な場合
引数の組み合わせについては「表8‒9 submittaskコマンドの引数の組み合わせ」を参照してください。
-
指定した時刻の形式が不正な場合
-
- /recurrencestart yyyy-mm-dd
-
サービスを定期実行する際の適用開始日を「yyyy-mm-dd」の形式で指定します。「yyyy」には西暦を4桁の半角数字で指定します。「mm」には月を1(または01)から12の半角数字で指定します。「dd」には日を1(または01)から31の半角数字で指定します。recurrencestartオプションは,recurrencepatternオプションおよびrecurrencetimeオプションとあわせて指定します。なお,次のどれかに該当する場合は,コマンドの実行に失敗します。
-
引数の組み合わせが不正な場合
引数の組み合わせについては「表8‒9 submittaskコマンドの引数の組み合わせ」を参照してください。
-
指定した年月日の形式が不正な場合
-
指定した年月日が1994年1月1日から2036年12月31日の範囲外である場合
-
submittaskコマンドの引数の組み合わせ
オプション |
サービスの即時実行 |
サービスの指定日時実行 |
サービスの定期実行 |
スケジュールされたタスクの一括再登録 |
---|---|---|---|---|
/servicename |
◎ |
◎ |
◎ |
× |
/resourcegroup |
○ |
○ |
○ |
× |
/taskname |
○ |
○ |
○ |
× |
/taskdescription |
○ |
○ |
○ |
× |
/property※1 |
○ |
○ |
○ |
× |
/propertyfile※1 |
○ |
○ |
○ |
× |
/reregister |
× |
× |
× |
◎ |
/taskdetaildir |
× |
× |
× |
◎ |
/setoriginalsubmitter |
× |
× |
× |
○ |
/user |
◎ |
◎ |
◎ |
◎ |
/password※2 |
◎ |
◎ |
◎ |
◎ |
/passwordfile※2 |
◎ |
◎ |
◎ |
◎ |
/wait |
○ |
× |
× |
× |
/scheduledate |
× |
◎ |
× |
× |
/scheduletime |
× |
◎ |
× |
× |
/recurrencepattern |
× |
× |
◎ |
× |
/recurrencetime |
× |
× |
◎ |
× |
/recurrencestart |
× |
× |
◎ |
× |
- (凡例)
-
◎:必ず指定します。省略した場合は引数エラーになります。
○:省略できます。
×:指定できません。指定した場合は引数エラーになります。
- 注※1
-
propertyオプションまたはpropertyfileオプションのどちらか一方を指定してください。両方を同時に指定するとエラーになります。
- 注※2
-
passwordオプションまたはpasswordfileオプションのどちらか一方を指定してください。両方を同時に指定するとエラーになります。
格納先
- Windowsの場合
-
JP1/AOのインストール先フォルダ¥bin
- Linuxの場合
-
/opt/jp1ao/bin
実行権限
OSのAdministrators権限またはroot権限を持つユーザーで実行してください。Administrators権限またはroot権限がない場合は,権限昇格を求めるメッセージが表示されます。
コマンド実行ユーザーが所属するユーザーグループから,実行したいサービスのリソースグループに対してAdminロール,Developロール,ModifyロールまたはSubmitロールが設定されている必要があります。ロールが設定されていないリソースグループのサービスについては実行できません。
userオプションに指定するユーザーに必要な権限を次に示します。
サービスを実行する場合
userオプションに指定するユーザーが所属するユーザーグループから,操作対象のリソースグループに対して,Adminロール,Developロール,ModifyロールまたはSubmitロールが設定されている必要があります。それぞれ,実行権限のあるサービスだけを実行できます。
タスクを一括再登録する場合
userオプションに指定するユーザーには,Adminロールが設定されている必要があります。
戻り値
コマンドの戻り値を次の表に示します。
戻り値 |
説明 |
---|---|
0 |
正常に終了しました。 |
1 |
引数が不正です。 |
2 |
コマンドの実行を中断しました。 |
3 |
サービスの状態が不正です。 |
5 |
通信に失敗しました。 |
6 |
認証に失敗しました。 |
7 |
パスの指定が不正です。 |
9 |
指定したパスが存在しません。 |
10 |
指定したパスにアクセスできません。 |
14 |
コマンドの実行権限がありません。 |
130 |
サービスの開始に失敗しました。 |
131 |
プロパティファイルが存在しません。 |
132 |
プロパティファイルの形式が不正です。 |
133 |
タスクの状態取得に失敗しました。(waitオプション指定時) |
134 |
タスクの実行に失敗しました。(waitオプション指定時) |
136 |
タスク詳細情報格納フォルダのデータ形式が不正です。 |
137 |
予定されたタスクの一括再登録が一部失敗しました。 |
138 |
予定されたタスクの一括再登録がすべて失敗しました。 |
139 |
タスク詳細情報格納フォルダを出力したJP1/AOと,インストールされているJP1/AOのバージョンまたはリビジョンが異なります。 |
255 |
そのほかのエラーでコマンドの実行が中断しました。 |
使用例
次の場合のコマンドの使用例を示します。
-
Windowsで,サービス名で指定したサービスにプロパティおよびプロパティ値を指定して実行する場合
submittask /servicename service01 /user user01 /password pass01 /property keyA valueA /property keyB "value B" /property keyC valueC,valueD
-
Windowsで,リソースグループとサービス名で指定したサービスに対して,タスク名,タスクの説明,およびプロパティファイルを指定して実行する場合
submittask /servicename service02 /resourcegroup resourceA /taskname task02 /taskdescription testtask /propertyfile C:\properties.txt /user user02 /password pass02
-
Windowsで,タスクの実行結果を出力してからコマンドが終了するようにする場合
submittask /servicename service03 /user user03 /password pass03 /wait
-
Windowsで,日時を指定してサービスを実行する場合
submittask /servicename service04 /user user04 /password pass04 /scheduledate 2014-01-01 /scheduletime 15:30
-
Windowsで,定期実行する場合
submittask /servicename service05 /user user05 /password pass05 /recurrencepattern weekly:sun,mon,fri /recurrencetime 15:30 /recurrencestart 2013-06-17
-
Windowsで,予定されたタスクを一括再登録する場合
submittask /reregister /taskdetaildir "C:\data\taskdetail" /user user06 /password pass06
関連トピック