名称
mxtask - Systems Insight Manager タスク XML ファイルの形式
構文
mxtask
説明
mxtask コマンドは、拡張マークアップ言語 (XML) 形式で記述されたタスク情
報の読み込みおよび書き込みをサポートしています。この機能を利用して、
Systems Insight Manager (SIM) 環境内で新しいスケジュールされたタスクを
作成できます。各タスク XML ファイルには、1 つまたは複数のタスクのため
の定義ブロックを記述できます。
タスク固有の XML 形式は、以下の mxtask コマンド オプション (-lf) で一
覧形式で出力することにより生成できます。このオプションは、指定したタス
ク データをタスク固有の XML 形式 (このマンページで説明します) で標準出
力 (stdout) に出力します。この出力は、 2 番目の例に示すように、外部
ファイルにリダイレクトできます。その後、この出力ファイルを (-cf) コマ
ンドの入力として使用することによって類似したタスクを作成できます。
mxtask -lf taskname
mxtask -lf taskname > outfilename
タスク固有の XML 形式は、以下の mxtask コマンド オプションでタスクを作
成するときに利用できます。このオプションは、指定したファイルのタスク固
有の XML 形式の内容 (このマンページで説明します) に基づいて新しいタス
クを作成します。
mxtask -cf filename
文書型定義
文書型定義 (DTD) ファイルは、XML ファイルの規則を定義したものです。こ
の規則には、有効な要素タグ、属性、XML ファイル内の要素の出現回数などが
あります。タスク DTD ファイルの名前は tasklist.dtd であり、その内容を
以下に示します。マンページの書式上、以下のテキストは実際の DTD ファイ
ルの内容と同じように表示されないことに注意してください。
<?xml version="1.0" encoding="UTF-8" ?>
<!-- task-list は、タスク XML DTD のために定義されるルート要素であり、
少なくとも 1 個以上の task 要素を含みます。各要素ブロックには、
新しいスケジュールされたタスクを作成するために必要なすべての
データを記述します。
-->
<!ELEMENT task-list ( task+ )>
<!-- task 要素は、必須データ要素である toolname、queryname、
scheduleinfo、toolparams から構成されています。一部のタスク
では、'scheduleinfo' と 'toolparams' のいずれかまたは両方に何も
含まれない場合がありますが、それでもこれらの要素が (空ではあり
ますが) 存在する必要があることに注意してください。これらを必ず
存在させることで、ユーザはタスク XML 形式で使用できるすべての
要素を常に確認できます。必要に応じてこの DTD 設計を変更し、XML 内
の 'scheduleinfo' と 'toolparams' 要素の存在をオプション (省略可)
とすることもできます。
-->
<!ELEMENT task (toolname,queryname,scheduleinfo,timefilter,toolparams)>
<!-- task 要素自体には、以下の属性があります。
- name 属性はタスク名を指定するもので、必須属性です。
- type 属性はタスク タイプを指定するもので、必須属性です。
(有効な値: add, remove manual, schedule)
- owner 属性はタスク所有者を指定するもので、オプション属性です。
(省略された場合、所有者は現在のユーザです)
- runmode 属性はタスク実行モードを指定するもので、オプション属性です。
(有効な値: runnow、runatstartup)。
- state 属性はタスクが enabled か disabled かを指定するもので、オプション属性です。
(有効な値: enabled または disabled)
- guid 属性はタスクの GUID を指定するもので、オプション属性です。
(guid 属性は認識されない)
-->
<!ATTLIST task name CDATA #REQUIRED
owner CDATA #IMPLIED
runmode CDATA #IMPLIED
state CDATA #IMPLIED
guid NMTOKEN #IMPLIED >
<!-- 前述のように、task 要素には 'type' という属性が必要です。この属性
には、有効な値 add、remove、manual、schedule のみを指定できます。
-->
<!ATTLIST task type (add | remove | manual | schedule) #REQUIRED >
<!-- toolname 要素は、指定したタスクに関連付けられているツール名を
指定するもので、必須要素です。
-->
<!ELEMENT toolname (#PCDATA)>
<!-- queryname 要素は、指定したタスクに関連付けられているクエリ名を
指定するもので、必須要素です。
-->
<!ELEMENT queryname (#PCDATA)>
<!-- scheduleinfo 要素は、指定したタスクに関連付けられているスケジュー
ル情報を指定するもので、必須要素です。
-->
<!ELEMENT scheduleinfo (#PCDATA)>
<!-- scheduleinfo 要素には、指定可能な 5 つの属性があります。
属性 必須/オプション 有効値
==== =============== ======
1. interval (オプション: タスク タイプ = schedule である場合は必須)
minutes、hours、days、weeks、months、daily、
runonce、ranonce
2. periodic (オプション: interval のタイプに依存)
任意の数値
3. time (オプション: interval のタイプに依存)
HH:MM (24 時間形式)
4. day (オプション: interval のタイプに依存)
interval=weeks: sunday、monday など
interval=months: 数値 = 1 〜 31
5. date (オプション: interval のタイプに依存)
date=mm/dd/yy
-->
<!-- interval 属性を使用して、スケジュールの間隔のタイプを指定します。
以下の定義のように、8 個の文字列値のみを指定できます。
'interval' 属性は、タスク タイプが 'schedule' である場合は必須
です。
-->
<!ATTLIST scheduleinfo interval (minutes | hours | days | weeks |
months | daily | runonce | ranonce) #IMPLIED >
<!-- 'periodic' 属性を使用して、スケジュールの間隔の値を指定します。
これは任意の数値を表す文字列値です。
'periodic' 属性は、'interval' のタイプが 'daily'、'runonce'、
'ranonce' である場合は不要です。
-->
<!ATTLIST scheduleinfo periodic CDATA #IMPLIED >
<!-- 'time' 属性を使用して、タスクをいつ実行するかを示すスケジュールの
時刻を指定します。時刻の文字列形式は 24 時間形式 (HH:MM) です。
'time' 属性は、'interval' のタイプが 'minutes'、'hours'、'runonce'、
'ranonce' である場合は不要です。
-->
<!ATTLIST scheduleinfo time CDATA #IMPLIED >
<!-- 'day' 属性を使用して、スケジュールしたタスクを実行する日を指定
します。'interval' 属性が 'weeks' である場合、この属性は
'sunday'、'monday' などの形式でなければなりません。
'interval' 属性が 'months' である場合、この属性は '1' 〜 '31' の
形式でなければなりません。
'day' 属性は、'interval' のタイプが 'minutes'、'hours'、'days'、
'daily'、'runonce'、'ranonce' である場合は不要です。
-->
<!ATTLIST scheduleinfo day CDATA #IMPLIED >
<!-- 'date' 属性を使用して、スケジュールしたタスクを実行する日付を指定
します。'interval' 属性が 'runonce'、'ranonce' である場合、この属性
は 'mm/dd/yy' の形式でなければなりません。
'date' 属性は、'interval' のタイプが 'minutes'、'hours'、'weeks'、
'months'、'days'、'daily' である場合は不要です。
'date' 属性は、'interval' のタイプが 'runonce'、'ranonce' である
場合は必須です。
'periodic'、'day'、'time' 属性は、'interval' のタイプが 'runonce'、
'ranonce' である場合は不要です。
-->
<!ATTLIST scheduleinfo date CDATA #IMPLIED >
<!-- 'timefilter' 要素を使用して、タスクに対する 2 つの主要な動作を
指定します。
(1) 単純に、作成するタスクに特定の時間フィルタを関連付けます。
timefilter 要素内には時間フィルタ名のみを記述する必要があり
ます。時間フィルタ データの追加は不要です。指定した時間フィルタ
はすでに現在の Systems Insight Manager レポジトリに存在して
いる必要があることに注意してください。
(2) 新しい時間フィルタを作成し、作成するタスクにその時間フィルタを
関連付けます。timefilter 要素内には時間フィルタ データを追加
する必要があります。
時間フィルタを使用することで、1 日のうちでタスクを実行できる一定
の時間を定義できます。Systems Insight Manager ではいくつかの標準
の時間フィルタが提供されていますが、ユーザ独自の時間フィルタを定義
できます。時間フィルタの基本は 7 × 24 (週 7 日× 24 時間) 形式で、
希望の曜日ごとに一つ以上の時間 (1 〜 24) を有効なタスク実行時間枠
として選択します。
timefilter 要素は、特定のタスクに時間フィルタを指定するかどうか
にかかわらず、XML 内に記述する必要があります。
時間フィルタを特定のタスクに関連付けない場合でも、XML 内に
timefilter 要素を記述する必要がありますが、この要素は空でなければ
なりません。つまり、timefilter 要素内に 'name' 属性を記述しては
なりません。
既存の時間フィルタをタスクに関連付ける場合、timefilter 要素内
に 'name="xxx"' 属性を記述する必要があります。
特定のタスクに対し新しい時間フィルタを作成する必要がある
場合、(1) 新しい時間フィルタの名前を指定し、(2) 時間フィルタの
スケジュール データのサブ要素 (1 個以上) を追加する必要があり
ます。'day' サブ要素は曜日に基づきます。各 'day' 要素ごとに、
24 時間形式の 1 時間単位で、有効なタスク実行時間を指定します。
時間フィルタのスケジュール データの要素は、対応する曜日の値に
より以下のように定義されます。
<mon> - 月
<tue> - 火
<wed> - 水
<thu> - 木
<fri> - 金
<sat> - 土
<sun> - 日
例:
以下の例の 'n' で示される値は、0 〜 23 の範囲の数値を表し、1 日
24 時間のうちの時間帯を表します。たとえば、月曜の最初の 3 時間の
間 (午前 0:00 から 3:00) のみアクティブである時間フィルタを指定
する場合、<mon> 要素は以下のようになります。カンマで区切った複数
の数値は、1 日 24 時間をゼロで始まる時間で表した対象時間として
解釈されます。以下の例は、0 =午前 0:00 〜 0:59、
1 =午前 1:00 〜 1:59、2 =午前 2:00 〜 2:59 とも解釈できます。
<mon>0,1,2</mon>
月曜の最後の 3 時間の間 (午後 9:00 から深夜 0:00) のみアクティブ
である時間フィルタを指定する場合、<mon> 要素は以下のようになり
ます。以下の例は、21 =午後 9:00 〜 9:59、
22 =午後 10:00 〜 10:59、23 =午後 11:00 〜 11:59 と解釈されます。
<mon>21,22,23</mon>
時間フィルタ データの定義では、簡略化された '範囲指定' 構文を使用
できます。範囲指定構文を使用するときは、上限の時間の値は対象時間外
の値として解釈されることに注意してください。以下の例は、"0,1,2"、
つまり午前 0:00 〜 2:59 と解釈されます。
<mon>0-3</mon>
以下の例は、未定義の時間フィルタを表現する 2 つの方法です。
タスクに関連付けられた時間フィルタの名前または名前とデータがない
場合であっても、タスク XML ブロック内に以下のいずれかが存在する
必要があります。
<timefilter />
<timefilter></timefilter>
以下の 2 つの例は、既存の時間フィルタを新しいタスク定義と一緒に
指定する方法を示しています。MxTask CLI は新しい時間フィルタを
作成しません。
<timefilter name="xxx" />
<timefilter name="xxx"></timefilter>
以下の 2 つの例は、新しい時間フィルタを作成して新しいタスクに
関連付けるように指定する方法を示しています。MxTask CLI は指定
された時間フィルタ データに基づいて新しい時間フィルタを作成します。
<timefilter name="xxx">
<mon>n,n,n</mon>
</timefilter>
<timefilter name="xxx">
<mon>n,n,n</mon>
<tue></tue>
<wed />
<sat>22,23</sat>
</timefilter>
時間フィルタ データを手動で作成するときは、0 〜 12 の値が午前の
時間を表し、13 〜 23 の値が午後の時間を表す (24 時間形式) ことに
注意してください。午後の時間の値を決定するには、単純に希望の午後
の時間に値 12 を加算します。この加算結果が、時間フィルタ データ
文字列に挿入する値になります。たとえば、午前 8:00 から午後 5:00
までの時間を示す月曜の時間データ文字列を作成するとします。
午後 5:00 を表す値を決定するには、単純に 12 + 5 を計算します。
この結果、データ文字列で使用する値は 17 になります。範囲構文を
使用したデータ文字列は、以下のようになります。
<mon>8-17</mon>
単一値構文を使用した文字列は、以下のようになります。単一値構文を
使用するときは、値 17 を省く必要があることに注意してください。
この構文では指定値が対象時間として解釈されるためです。この例では、
午後 5:00 〜 5:59 を対象としません。
<mon>8,9,10,11,12,13,14,15,16</mon>
-->
<!ELEMENT timefilter (mon?,tue?,wed?,thu?,fri?,sat?,sun?) >
<!ATTLIST timefilter name CDATA #IMPLIED>
<!ELEMENT mon (#PCDATA)>
<!ELEMENT tue (#PCDATA)>
<!ELEMENT wed (#PCDATA)>
<!ELEMENT thu (#PCDATA)>
<!ELEMENT fri (#PCDATA)>
<!ELEMENT sat (#PCDATA)>
<!ELEMENT sun (#PCDATA)>
<!-- toolparams 要素は、関連付けられているツールに必要な引き数を
指定します。ツールの中には引き数を必要とするものもあれば
必要としないものもあります。この要素には何も含まれない場合があり
ますが、この要素は XML 内に存在する必要があります。
注記: この要素内に含まれる内容が XML データである場合があります。
このような場合、XML の特殊文字である「小なり」文字と
「大なり」文字はその文字のまま含めることはできません。
これらの文字は、対応する「文字参照」または「定義済み
実体参照」で表現する必要があります。たとえば、「小なり」
文字は "<" または "<" のいずれかで、「大なり」文字は
">" または ">" のいずれかで表現する必要があります。
-->
<!ELEMENT toolparams (#PCDATA) >
要素
DTD で定義されているとおり、タスク XML ファイルは以下の一般的な形式に
従う必要があります。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task name" type="schedule" owner="machine/user">
<toolname>tool name</toolname>
<queryname>query name</queryname>
<scheduleinfo interval="x" periodic="x" time="x" day="x" date="x"/>
<timefilter />
<toolparams />
</task>
</task-list>
DTD で定義されているとおり、タスク XML ファイルには以下の要素を記述す
る必要があります。
<?xml version="1.0" encoding="UTF-8" ?>
タスク XML ファイルの 1 行目は、次のように記述しなければなりません。
<?xml version="1.0" encoding="encoding-value" ?>
encoding-value パラメータは、有効なエンコード値に置き換えます。有効な
エンコード値は、次の Web サイトにあります。
http://www.iana.org/assignments/character-sets
XML ヘッダー行が指定されていない場合は、システムのデフォルトのエンコー
ドは "UTF-8" になります。
"task-list" 要素はユーザ XML ファイルに 1 度だけ記述され、タスク情報リ
ストを囲っている必要があります。"task-list" 要素には 1 個以上の "task"
要素を含める必要があります。"task-list" 要素に "task" 要素が含まれてい
ない場合、対応する mxtask コマンドは失敗します。
"task" 要素は、ユーザ XML ファイルに 1 回以上記述する必要があり、以下
の形式になります。
<task name="taskname" type="tasktype" owner="taskowner"
state="enabled">
"task" 要素には、"name" と "type" の 2 つの必須属性があります。
"name" 属性は必須属性で、タスク名を指定します。指定した名前は Systems
Insight Manager レポジトリ内で一意でなければならず、すでに存在していて
はなりません。
"type" 属性は必須属性で、タスクのタイプを指定します。タスク タイプの有
効な値は "add"、"remove"、"manual"、"schedule" です。以下で説明しま
す。
add - タスクは、システムまたはイベントがリスト条件を満たすときに実行さ
れます。
remove - タスクは、システムまたはイベントがリスト条件を満たさなくなっ
たときに実行されます。
manual - タスクは、手動で呼び出されたときにのみ実行されます。
schedule - タスクは、定義されたスケジュールに基づいて実行されます。こ
のタスク タイプを指定する場合、scheduleinfo 要素に実際にスケジュールを
定義する必要な属性を含める必要があります。
"task" 要素には、オプションの属性 "owner"、"runmode"、"state" がありま
す。
"owner" 属性はタスクの所有者を指定します。所有者を指定しない場合、現在
のログイン ユーザがタスク所有者として割り当てられます。
"runmode" 属性の値は、"runnow"、"runatstartup" の 2 つの値のいずれかで
す。
runmode="runnow" - タスクは作成されるとすぐに実行されます。タスクは
MxTask CLI により強制的に実行されることに注意してください。
runmode="runatstartup" - タスクは次に CMS が起動されるときに実行されま
す。
"state" 属性の値は、タスクが "enabled" または "disabled" 状態を作成す
るかどうか指定する属性です。状態の属性が指定されない場合、タスクは、無
効状態として作成されます。disabled の場合、タスクは、 UIの中から手動で
有効にしなければなりません。
"task" 要素には、いくつかの追加要素も含める必要があります。これらの各
要素は、各 "task" 要素ごとに 1 回しか記述できません。各要素は DTD に定
義されている順序で記述する必要があります。
<toolname>ここにツール名を記述</toolname>
<queryname>ここにクエリ名を記述</queryname>
<scheduleinfo interval="x" periodic="x" time="x" day="x" date="x"/>
<timefilter></timefilter>
"toolname" 要素は、タスクに関連付ける既存のツールを (名前で) 指定しま
す。この値は必須です。指定したツール名はすでに Systems Insight Manager
レポジトリに存在している必要があります。
<toolname>ここにツール名を記述</toolname>
"queryname" 要素は、タスクに関連付ける既存のクエリを (名前で) 指定しま
す。この値は必須です。指定したクエリ名はすでに Systems Insight Manager
レポジトリに存在している必要があります。
<queryname>ここにクエリ名を記述</queryname>
"sheduleinfo" 要素は、タスクのスケジュール情報 (タスクをいつ実行する
か) を定義します。この要素の属性は、タスクの "type" 属性が "schedule"
として定義されている場合にのみ必要です (タスクのタイプが "add"、
"remove"、"manual" の場合はスケジュール情報は不要です)。"scheduleinfo"
要素には、スケジュールを定義する 5 つのさまざまな属性を含めることがで
きます。この属性は、"interval"、"periodic"、"time"、"day"、"date" で
す。
"scheduleinfo" 要素は以下のような形式です。この形式で、すべてのタスク
に完全な実行スケジュールを定義できます。
<scheduleinfo interval="x" periodic="x" time="x" day="x" date="x"/>
"interval" 属性は新しいタスクの間隔タイプを指定します。'interval' 属性
の有効な値は以下のとおりです。
minutes - タスクは X 分ごとに実行されます。
hours - タスクは X 時間ごとに実行されます。
days - タスクは X 日ごとに指定の時刻に実行されます。
weeks - タスクは X 週間ごとに指定の曜日/時刻に実行されます。
months - タスクは X ヵ月ごとに指定の日付/時刻に実行されます。
daily - タスクは毎日指定の時刻に実行されます。
runonce - タスクは 1 回、指定の日付/時刻に実行されます。
ranonce - タスクは指定の日付/時刻にすでに実行されました。
"periodic" 属性は数値であり、タスクを実行する頻度を指定します。
"periodic" 属性の有効な値はゼロより大きい任意の数値です。
"day" 属性は曜日または日付の値を指定し、"interval" 属性が "weeks"、
"months" のいずれかである場合にのみ必要です。"day" 属性の有効な値は
"interval" 属性の指定値によって異なります。"interval" 属性の値を
"weeks" と定義した場合、"day" 属性の有効な値は "sunday"、"monday" など
です。"interval" 属性の値を "months" と定義した場合、"day" 属性の有効
な値は 1 〜 31 の範囲の数値です。
"date" 属性は日付の値を指定し、"interval" 属性が "runonce"、"ranonce"
である場合にのみ必要です。"date" 属性の有効な値は mm/dd/yy 形式の値で
す。
"time" 属性は時刻の値を指定し、"interval" 属性の "minutes"、"hours" 以
外のすべてのタイプに必要です。この属性はタスクが実行される時刻を定義し
ます。24 時間形式で指定する必要があります (time="HH:MM")。
"timefilter" 要素を使用して、タスクに対する 2 つの主要な動作を指定しま
す。
(1) 単純に、作成するタスクに特定の時間フィルタを関連付けます。
timefilter 要素内には時間フィルタ名のみを記述する必要があります。時間
フィルタ データの追加は不要です。指定した時間フィルタはすでに現在の
Systems Insight Manager データベースに存在している必要があることに注意
してください。
(2) 新しい時間フィルタを作成し、作成するタスクにその時間フィルタを関連
付けます。timefilter 要素内には時間フィルタ データを追加する必要があり
ます。
時間フィルタを使用することで、1 日のうちでタスクを実行できる一定の時間
を定義できます。Systems Insight Manager ではいくつかの標準の時間フィル
タが提供されていますが、必要に応じてユーザ独自の時間フィルタを定義でき
ます。時間フィルタの基本は 7 × 24 (週 7 日× 24 時間) 形式で、希望の
曜日ごとに一つ以上の時間 (1 〜 24) を有効なタスク実行時間枠として選択
します。
timefilter 要素は、特定のタスクに時間フィルタを指定するかどうかにかか
わらず、XML 内に記述する必要があります。
時間フィルタを特定のタスクに関連付けない場合でも、XML 内に timefilter
要素を記述する必要があります (データは含めません)。つまり、timefilter
要素内に 'name' 属性を記述してはなりません。
既存の時間フィルタをタスクに関連付ける場合、timefilter 要素内に
name="xxx" 属性を記述する必要があります。
特定のタスクに対し新しい時間フィルタを作成する必要がある場合、(1) 新し
い時間フィルタの名前を指定し、(2) 時間フィルタのスケジュール データの
サブ要素 (1 個以上) を追加する必要があります。'day' サブ要素は曜日に基
づきます。各 'day' 要素ごとに、24 時間形式の 1 時間単位で、有効なタス
ク実行時間を指定します。
時間フィルタのスケジュール データの要素は、対応する曜日の値により以下
のように定義されます。
<mon> - 月
<tue> - 火
<wed> - 水
<thu> - 木
<fri> - 金
<sat> - 土
<sun> - 日
例:
以下の例の 'n' で示される値は、0 〜 23 の範囲の数値を表し、1 日 24 時
間のうちの時間帯を表します。たとえば、月曜の最初の 3 時間の間 (午前
0:00 から 3:00) のみアクティブである時間フィルタを指定する場合、<mon>
要素は以下のようになります。カンマで区切った複数の数値は、1 日 24 時間
をゼロで始まる時間で表した対象時間として解釈されます。以下の例は、0 =
午前 0:00 〜 0:59、1 =午前 1:00 〜 1:59、2 =午前 2:00 〜 2:59 とも解
釈できます。
<mon>0,1,2</mon>
月曜の最後の 3 時間の間 (午後 9:00 から深夜 0:00) のみアクティブである
時間フィルタを指定する場合、<mon> 要素は以下のようになります。以下の例
は、21 =午後 9:00 〜 9:59、22 =午後 10:00 〜 10:59、23 =午後 11:00
〜 11:59 と解釈されます。
<mon>21,22,23</mon>
時間フィルタ データの定義では、簡略化された '範囲指定' 構文を使用でき
ます。範囲指定構文を使用するときは、下限の時間の値は対象時間の値として
解釈され、上限の時間の値は対象時間外の値として解釈されることに注意して
ください。以下の例は、"0,1,2"、つまり午前 0:00 〜 2:59 と解釈されま
す。
<mon>0-3</mon>
以下の例は、未定義の時間フィルタを表現する 2 つの方法です。タスクに関
連付けられた時間フィルタの名前または名前とデータがない場合であっても、
タスク XML ブロック内に以下のいずれかの要素タグが存在する必要があり、
'schedule' 要素と 'toolparms' 要素の間に記述しなければなりません。
<timefilter />
<timefilter></timefilter>
以下の 2 つの例は、既存の時間フィルタを新しいタスク定義と一緒に指定す
る方法を示しています。追加のサブ要素の時間フィルタ データが存在しない
ため、MxTask CLI は新しい時間フィルタを作成しません。
<timefilter name="xxx" />
<timefilter name="xxx"></timefilter>
以下の 2 つの例は、新しい時間フィルタを作成して新しいタスクに関連付け
るように指定する方法を示しています。MxTask CLI は指定された時間フィル
タ データに基づいて新しい時間フィルタを作成します。
<timefilter name="xxx">
<mon>n,n,n</mon>
</timefilter>
<timefilter name="xxx">
<mon>n,n,n</mon>
<tue></tue>
<wed />
<sat>22,23</sat>
</timefilter>
時間フィルタ データを手動で作成するときは、0 〜 12 の値が午前の時間を
表し、13 〜 23 の値が午後の時間を表す (24 時間形式) ことに注意してくだ
さい。午後の時間の値を決定するには、単純に希望の午後の時間に値 12 を加
算します。この加算結果が、時間フィルタ データ文字列に挿入する値になり
ます。たとえば、午前 8:00 から午後 5:00 までの時間を示す月曜の時間デー
タ文字列を作成するとします。午後 5:00 を表す値を決定するには、単純に
12 + 5 を計算します。この結果、データ文字列で使用する値は 17 になりま
す。範囲の構文を使用したデータ文字列は、以下のようになります。
<mon>8-17</mon>
単一値構文を使用した文字列は、以下のようになります。単一値構文を使用す
るときは、値 17 を省く必要があることに注意してください。この構文では指
定値が対象時間として解釈されるためです。この例では、午後 5:00 〜 5:59
を対象としません。
<mon>8,9,10,11,12,13,14,15,16</mon>
"toolparams" 要素は、指定した Systems Insight Manager ツールの引き数を
指定します。すべての Systems Insight Manager ツールに引き数が必要なわ
けではありません。この要素の内容が必要となるのは、"toolname" 要素内に
指定したツールが、適切に実行されるための追加引き数を実際に必要とする場
合のみです。このタスク状態は、有効が設定されています。
<toolparams />
注記 1: 'toolparams' 要素の内容を XML データとして含める場合、ツールの
引き数データには、「小なり」文字 (<) または「大なり」文字 (>) をその
文字のまま含めることはできません。代わりに、すべての「小なり」文字を対
応する実体参照 "<" で、すべての「大なり」文字を対応する実体参照
">" で置き換える必要があります。
注記 2: "mxtask -lf taskname" コマンドで生成される出力により、XML タイ
プのツールの引き数データはすべて適切な形式 (前述) で表示されます。つま
り、「小なり」文字と「大なり」文字はすべて対応する実体参照で置き換えら
れます。このため、'-lf' コマンドの出力は新しいタスクを作成するための入
力として使用できます。
以下に、"Hardware Status Polling" という実際の Systems Insight Manager
ツールの "toolparams" 要素の内容の例を示します。
<toolparams><?xml version="1.0"?> <XeObject
className="com.hp.mx.core.tools.polling.HardwareStatusPollingTaskModel"
classVersion="2.0"> <Property name="pollingTimeout">
<Simple>4</Simple> </Property> <Property
name="pollingRetries"> <Simple>1</Simple>
</Property> <Property name="pollingProtocols"> <Vector
size="0"> </Vector> </Property> </XeObject>
</toolparams>
コメント
XML ファイルにはコメントを記述することができます。コメントは "<!--" で
始まり、"-->" で終了しなければなりません。コメントは開始タグと終了タグ
の間で、複数行に渡って記述できます。
例
本セクションでは、「タスク」固有の XML 形式の例を示します。
次の例は、 task1 という名前でタイプが "add" (タスクは、システムまたは
イベントがリスト条件を満たすときに実行されます) である新しいタスクを定
義しています。タスクは既存の Systems Insight Manager クエリ "query1"
と既存の Systems Insight Manager ツール "tool1" に関連付けられます。タ
スク タイプが "schedule" ではないため、scheduleinfo 要素は空です。ま
た、指定したツール (tool1) には追加の引き数が不要であることを想定して
いるため、toolparams 要素は空です。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="add" state="enabled">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo />
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "add" (タスクは、システムまたは
イベントがリスト条件を満たすときに実行されます) である新しいタスクを定
義しています。タスクは既存の Systems Insight Manager クエリ "query1"
と既存の Systems Insight Manager ツール "tool1" に関連付けられます。タ
スク タイプが "schedule" ではないため、scheduleinfo 要素は空です。ま
た、指定したツール (tool1) には追加の引き数が不要であることを想定して
いるため、toolparams 要素は空です。タスク所有者も指定しています。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="add" owner="machineName/userName">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo />
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "remove" (タスクは、システムまた
はイベントがリスト条件を満たさなくなったときに実行されます) である新し
いタスクを定義しています。タスクは既存の Systems Insight Manager クエ
リ "query1" と既存の Systems Insight Manager ツール "tool1" に関連付け
られます。タスク タイプが "schedule" ではないため、scheduleinfo 要素は
空です。また、指定したツール (tool1) には追加の引き数が不要であること
を想定しているため、toolparams 要素は空です。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="remove">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo />
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "manual" (タスクは、手動で呼び出
されたときにのみ実行されます) である新しいタスクを定義しています。タス
クは既存の Systems Insight Manager クエリ "query1" と既存の Systems
Insight Manager ツール "tool1" に関連付けられます。タスク タイプが
"schedule" ではないため、scheduleinfo 要素は空です。また、指定したツー
ル (tool1) には追加の引き数が不要であることを想定しているため、
toolparams 要素は空です。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="manual">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo />
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "schedule" (タスクは、周期/日付/
時刻スケジュールに基づいて実行されます) である新しいタスクを定義してい
ます。タスクは既存の Systems Insight Manager クエリ "query1" と既存の
Systems Insight Manager ツール "tool1" に関連付けられます。タスク タイ
プが "schedule" であるため、scheduleinfo 要素にスケジュール情報を含め
る必要があります。この場合、タスク スケジュールはタスクを 30 分ごとに
実行するように指定しています。また、指定したツール (tool1) には追加の
引き数が不要であることを想定しているため、toolparams 要素は空です。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="schedule">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo interval="minutes" periodic="30" />
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "schedule" (タスクは、周期/日付/
時刻スケジュールに基づいて実行されます) である新しいタスクを定義してい
ます。タスクは既存の Systems Insight Manager クエリ "query1" と既存の
Systems Insight Manager ツール "tool1" に関連付けられます。タスク タイ
プが "schedule" であるため、scheduleinfo 要素にスケジュール情報を含め
る必要があります。この場合、タスク スケジュールはタスクを 7 日ごとに午
前 1:00 に実行するように指定しています。また、指定したツール (tool1)
には追加の引き数が不要であることを想定しているため、toolparams 要素は
空です。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="schedule">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo interval="days" periodic="7" time="1:00"/>
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "schedule" (タスクは、周期/日付/
時刻スケジュールに基づいて実行されます) である新しいタスクを定義してい
ます。タスクは既存の Systems Insight Manager クエリ "query1" と既存の
Systems Insight Manager ツール "tool1" に関連付けられます。タスク タイ
プが "schedule" であるため、scheduleinfo 要素にスケジュール情報を含め
る必要があります。この場合、タスク スケジュールはタスクを 2 週間ごとに
金曜の午後 6:00 に実行するように指定しています。また、指定したツール
(tool1) には追加の引き数が不要であることを想定しているため、toolparams
要素は空です。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="schedule">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo interval="weeks" periodic="2" day="friday" time="18:00"/>
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "schedule" (タスクは、周期/日付/
時刻スケジュールに基づいて実行されます) である新しいタスクを定義してい
ます。タスクは既存の Systems Insight Manager クエリ "query1" と既存の
Systems Insight Manager ツール "tool1" に関連付けられます。タスク タイ
プが "schedule" であるため、scheduleinfo 要素にスケジュール情報を含め
る必要があります。この場合、タスク スケジュールはタスクを毎月 15 日の
午前 2:00 に実行するように指定しています。また、指定したツール (tool1)
には追加の引き数が不要であることを想定しているため、toolparams 要素は
空です。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="schedule">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo interval="months" periodic="1" day="15" time="2:00"/>
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "schedule" (タスクは、周期/日付/
時刻スケジュールに基づいて実行されます) である新しいタスクを定義してい
ます。タスクは既存の Systems Insight Manager クエリ "query1" と既存の
Systems Insight Manager ツール "tool1" に関連付けられます。タスク タイ
プが "schedule" であるため、scheduleinfo 要素にスケジュール情報を含め
る必要があります。この場合、タスク スケジュールはタスクを毎日午前 5:00
に実行するように指定しています。また、指定したツール (tool1) には追加
のパラメータが不要であることを想定しているため、toolparams 要素は空で
す。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="schedule">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo interval="daily" time="5:00"/>
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "schedule" (タスクは、周期/日付/
時刻スケジュールに基づいて実行されます) である新しいタスクを定義してい
ます。タスクは既存の Systems Insight Manager クエリ "query1" と既存の
Systems Insight Manager ツール "tool1" に関連付けられます。タスク タイ
プが "schedule" であるため、scheduleinfo 要素にスケジュール情報を含め
る必要があります。この場合、タスク スケジュールはタスクを 2004 年 1 月
1 日の午前 5:00 に 1 回実行するように指定しています。また、指定した
ツール (tool1) には追加のパラメータが不要であることを想定しているた
め、toolparams 要素は空です。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="schedule">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo interval="runonce" time="5:00" date="01/01/04"/>
<timefilter />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "add" (タスクは、システムまたは
イベントがリスト条件を満たすときに実行されます) である新しいタスクを定
義しています。タスクは既存の Systems Insight Manager クエリ "query1"
と既存の Systems Insight Manager ツール "tool1" に関連付けられます。タ
スク タイプが "schedule" ではないため、scheduleinfo 要素は空です。ま
た、指定したツール (tool1) には追加のパラメータが不要であることを想定
しているため、toolparams 要素は空です。タスクは既存の標準の時間フィル
タ "Weekend Plus" に関連付けられます。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="add">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo />
<timefilter name="Weekend Plus" />
<toolparams />
</task>
</task-list>
次の例は、 task1 という名前でタイプが "add" (タスクは、システムまたは
イベントがリスト条件を満たすときに実行されます) である新しいタスクを定
義しています。タスクは既存の Systems Insight Manager クエリ "query1"
と既存の Systems Insight Manager ツール "tool1" に関連付けられます。タ
スク タイプが "schedule" ではないため、scheduleinfo 要素は空です。ま
た、指定したツール (tool1) には追加のパラメータが不要であることを想定
しているため、toolparams 要素は空です。タスクは、毎日最初の 3 時間のみ
アクティブである、ユーザが定義した新しい時間フィルタに関連付けられま
す。この時間フィルタの名前は "First 3 Hours Every Day" です。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="task1" type="add">
<toolname>tool1</toolname>
<queryname>query1</queryname>
<scheduleinfo />
<timefilter name="First 3 Hours Every Day" >
<mon>0,1,2</mon>
<tue>0,1,2</tue>
<wed>0,1,2</wed>
<thu>0,1,2</thu>
<fri>0,1,2</fri>
<sat>0,1,2</sat>
<sun>0,1,2</sun>
</timefilter>
<toolparams />
</task>
</task-list>
次の例は、 "Hardware Status Polling 2" という名前でタイプが "schedule"
(タスクは、周期/日付/時刻スケジュールに基づいて実行されます) である新
しいタスクを定義しています。タスクは既存の Systems Insight Manager ク
エリ "All Servers" と既存の Systems Insight Manager ツール "Hardware
Status Polling" に関連付けられます。タスク タイプが "schedule" である
ため、scheduleinfo 要素にスケジュール情報を含める必要があります。この
場合、タスク スケジュールはタスクを毎週日曜の午前 1:00 に実行するよう
に指定しています。また、この場合は指定したツールの引き数も指定する必要
があります。"Hardware Status Polling" ツールの引き数は、mxtask -lf
"Hardware Status Polling" コマンドにより取得できることに注意してくださ
い。
<?xml version="1.0" encoding="UTF-8"?>
<task-list>
<task name="Hardware Status Polling 2" type="schedule">
<toolname>Hardware Status Polling</toolname>
<queryname>All Servers</queryname>
<scheduleinfo interval="weeks" periodic="1" day="sunday" time="1:00"/>
<timefilter />
<toolparams><?xml version="1.0"?>
<XeObject
className="com.hp.mx.core.tools.polling.HardwareStatusPollingTaskModel"
classVersion="2.0">
<Property name="pollingTimeout">
<Simple>4</Simple>
</Property>
<Property name="pollingRetries">
<Simple>1</Simple>
</Property>
<Property name="pollingProtocols">
<Vector size="0">
</Vector>
</Property>
</XeObject>
</toolparams>
</task>
</task-list>
上記の "Hardware Status Polling" ツールの引き数は、以下の mxtask コマ
ンド オプションにより画面に表示できます。
mxtask -lf "Task Name"
リダイレクトを使用して、画面出力を外部のタスク XML ファイルに保存しま
す。このファイルを修正して、-cf コマンド オプションで類似したタスクを
作成するために使用できます。
mxtask -lf "Task Name" > "Task Name.xml"
制限事項
本コマンドは、CMS 上でのみ実行できます。
著者
mxtask は、HP により開発されました。
参照 (HP-UX)
mxtask(1M)
参照 (Linux)
mxtask(8)
* 注: コマンドライン上のパスワードを指定する場合、注意しなければなりま
せん。もしタスクの一部として実行した場合、コマンド履歴、実行中の処理一
覧および監査ログを利用可能にします。コマンド履歴を削除するまたはパス
ワードを指定するために代替の方法を使用してください。(例えばプロンプト
入力ファイル)