パラメーター収集スクリプトとは、ソフトウェアからパラメーターを収集するためのスクリプトです。このスクリプトは、サーバに転送されて、サーバ上で実行されます。ソフトウェアから収集したパラメーターの情報は、パラメーター情報XMLファイル(parameterinfo.xml)などのファイルに出力します。このファイルは管理サーバに転送されます。
パラメーター収集スクリプトは、複数のファイルで構成されています。また、Windowsで使用できるバッチファイルと、Linuxで使用できるシェルスクリプトが決められています。このファイルの説明を、以下に示します。
ディスカバリスクリプト
ディスカバリスクリプトは、必ず初めに呼び出されるスクリプトです。
このスクリプトはファイル名が決められていて、バッチファイルがdiscover.cmdで、シェルスクリプトがdiscover.shです。このスクリプトの処理では、必ずソフトウェアから収集したパラメーターの情報をパラメーター情報XMLファイル(parameterinfo.xml)に出力することが必要です。また、結果を復帰することも必要です。このほかの処理は、ソフトウェアごとに作成することができます。
添付ファイル
ディスカバリスクリプトから任意のファイルを使用できます。このファイルは、ディスカバリスクリプトと一緒にサーバに転送されます。
添付ファイルにシェルスクリプトを含める場合は、実行権をシェルスクリプトのディスカバリスクリプトの中で設定してください。
ディスカバリスクリプトは、ソフトウェアから収集したパラメーターの情報をファイルに出力します。このファイルの説明を以下に示します。
収集したパラメーターのパラメーター情報XMLファイル
収集したパラメーターの情報は、パラメーター情報XMLファイルの形式で出力してください。
このファイルはファイル名が決められていて、parameterinfo.xmlです。
収集したパラメーターの添付ファイル
任意のファイルを、パラメーターの情報にすることができます。そのファイルを添付ファイルとして扱います。
ディスカバリスクリプト(バッチファイル) の形式【Windows】
バッチファイルのディスカバリスクリプト(discover.cmd)は、以下の形式で作成します。
バッチファイルの第1引数に-dirオプションが指定され、第2引数(%2)にパラメーターの情報を出力するディレクトリが指定されます。このディレクトリに収集したパラメーターの情報を、パラメーター情報XMLファイル(parameterinfo.xml)と添付ファイルに出力します。添付ファイルがない場合は出力する必要はありません。最後に処理が成功した場合は0を復帰して、失敗した場合は0以外を復帰します。標準出力と標準エラー出力は、エージェントのログに出力されます。
@echo off setlocal @rem ソフトウェアからパラメーターを収集する処理 <各ソフトウェアの処理> <%2のディレクトリにパラメーターの情報を出力する処理> @rem 結果(正常)を復帰する if ERRORLEVEL 1 goto ERROR_END endlocal exit /B 0 @rem 結果(異常)を復帰する : ERROR_END echo ERROR0002 Parameter collecting failed. 1>&2 endlocal exit /B 1
ディスカバリスクリプト(シェルスクリプト) の形式【Linux】
シェルスクリプトのディスカバリスクリプト (discover.sh) は、以下の形式で作成します。
シェルスクリプトの第1引数に-dirオプションが指定され、第2引数($2)にパラメーターの情報を出力するディレクトリが指定されます。このディレクトリに収集したパラメーターの情報を、パラメーター情報XMLファイル(parameterinfo.xml)と添付ファイルに出力します。添付ファイルがない場合は出力する必要はありません。最後に処理が成功した場合は0を復帰して、失敗した場合は0以外を復帰します。標準出力と標準エラー出力は、エージェントのログに出力されます。
#!/bin/sh # ソフトウェアからパラメーターを収集する処理 <各ソフトウェアの処理> <$2のディレクトリにパラメーターの情報を出力する処理> # 結果を復帰する if [ $? = "0" ]; then # 正常を復帰する exit 0 else # 異常を復帰する echo "ERROR0002 Parameter collecting failed." 1>&2 exit 1 fi
ディスカバリスクリプトの出力ディレクトリ
ディスカバリスクリプトでパラメーターの情報を出力する場合は、以下のディレクトリの形式で出力してください。パラメーター情報XMLファイルは必ず作成します。添付ファイルは必要がある場合のみ作成します。
+ <出力のディレクトリ> + 収集したパラメーターのパラメーター情報XMLファイル(parameterinfo.xml) + 収集したパラメーターの添付ファイル
パラメーター情報XMLファイルの形式
ディスカバリスクリプトで収集したパラメーターを、パラメーター情報XMLファイルに出力するようにディスカバリスクリプトを作成してください。このパラメーター情報XMLファイルは、パラメーター(parameters)にあるキー(key)と値(Value)のタグに値を指定してください。その他のタグは、省略するか、任意の値を指定してください。
値を指定するタグ
parameters
省略するタグ
description
任意の値を指定するタグ
name
出力するパラメーター情報XMLファイルのイメージを、以下に示します。
<?xml version="1.0" encoding="UTF-8"?> <parameterInfo version="3.0"> <name>[パラメーター情報の名前]</name> <parameters> <parameter> <key>[パラメーターのキー]</key> <value>[パラメーターの値]</value> </parameter> … </parameters> </parameterInfo>
パラメーター情報XMLファイルの例については、「2.1.4 パラメーター設定スクリプト」を参照してください。
注意
スクリプトに使用できないコマンドについて
以下のコマンドはスクリプトから実行しないでください。これらのコマンドを実行すると、業務サーバにおいてスクリプト処理が待機状態となり、スクリプトの処理が完了しません。
対話型処理が必要なコマンド【Windows/Linux】
実行するとウィンドウが起動するコマンド【Windows】
ATコマンド【Windows】
PowerShellで作成されたシェル・スクリプト【Windows】
フルスクリーン系のコマンド【Linux】
パラメーター収集スクリプト
実行順序
パラメーター収集スクリプトが動作する順番は、特に決まりはありません。
ディスカバリスクリプト
実行権限
Windows版では、Administratorで実行されます。
Linux版では、スーパーユーザーで実行されます。
カレントディレクトリ
ディスカバリスクリプトのファイルが格納されているパスが、カレントディレクトリになります。
実行権【Linux】
ディスカバリスクリプトのシェルスクリプトは、実行時に自動的に実行権が設定されます。
改行
Windows版では、CR+LFです。
Linux版では、LFです。
バイトオーダーマーク(BOM)【Linux】
シェルスクリプトでは、UTF-8のバイトオーダーマーク (BOM) を含めないでください。
添付ファイル
実行権【Linux】
添付ファイルにシェルスクリプトを含める場合は、実行権をシェルスクリプトのディスカバリスクリプトの中で設定してください。