JP1/Performance Management リファレンス
形式
jpcprocdef create -agent サービスID
-f 入力ファイル名
[-removeOthers]
[-noquery]
機能
jpcprocdef createコマンドは,指定したエージェントに対して,新規にアプリケーション定義を設定したり,既存のアプリケーション定義を編集したりするコマンドです。定義情報は,コマンドライン引数として指定されたXML形式のアプリケーション定義ファイルから取得します。一つのアプリケーション定義ファイルに複数のアプリケーション定義を指定し,一括して設定できます。
コマンドを実行できるホスト
PFM - Web Console
実行権限
- Windowsの場合
- Administrators権限を持つユーザー
- UNIXの場合
- rootユーザー権限を持つユーザー
また,コマンドを実行するためには,事前にPerformance Managementに対する管理ユーザー権限※のユーザーアカウントで認証用のキーファイルを作成する必要があります。詳細については,jpcmkkeyコマンドを参照してください。
- 注※
- Performance ManagementユーザーまたはJP1ユーザーが必要とする,Performance Managementに対する実行権限です。
格納先ディレクトリ
- Windowsの場合
- インストール先フォルダ\tools\
- UNIXの場合
- /opt/jp1pcwebcon/tools/
引数
-agent サービスID
アプリケーション定義を作成する対象エージェントを,Agent CollectorサービスまたはリモートエージェントのサービスIDで指定します。ワイルドカード文字は使用できません。
指定するサービスIDは,使用している監視エージェントによって次のように異なります。
使用している監視エージェント 指定するサービスID PFM - Agent for Platform(Windows) Agent CollectorサービスのサービスID PFM - Agent for Platform(UNIX) PFM - RM for Platform リモートエージェントのサービスID 次に示すサービスIDは指定できません。
- Agent Storeサービス,Remote Monitor Collectorサービス,Remote Monitor StoreサービスおよびグループエージェントのサービスID
- PFM - Agent for PlatformまたはPFM - RM for Platform以外のプロダクトのサービスID
-f 入力ファイル名
アプリケーション定義ファイルのファイル名を指定します。ファイル名は,絶対パスまたは相対パスで指定します。
-removeOthers
アプリケーション定義ファイルで指定したアプリケーション定義と異なる名称の定義が存在する場合に,それらの定義情報を削除するかどうかを指定します。
このオプションの指定の有無による動作の違いを次に示します。
- 指定した場合
対象エージェントのすべてのアプリケーション定義情報が,アプリケーション定義ファイルの内容で更新されます。ファイルに記載していないアプリケーション定義がある場合,削除するかどうかを確認するメッセージが表示されます。
- 指定しない場合
アプリケーション定義ファイルで指定したアプリケーション定義の情報だけが,追加および更新されます。
-noquery
このオプションを指定すると,コマンドの実行を中断する問い合わせメッセージが出力されなくなり,ユーザーの応答が不要になります。非対話形式で実行したい場合に指定します。
なお,コマンド実行時は次のように動作します。
- アプリケーション定義ファイルで指定したアプリケーション定義と同名の定義が対象エージェントに存在した場合
アプリケーション定義ファイルの内容で更新します。
- -removeOthersオプションを指定した場合
アプリケーション定義ファイルに記載していないアプリケーション定義は削除されます。
XMLタグ仕様
- application-definition
種別 説明 意味 一つのアプリケーション定義の設定情報のルートタグ 指定可能値 なし 省略 不可 属性 なし 親要素 pr-cli-parameters 子要素 name(1application-definitionに1回だけ指定できます。省略できません。) virtual-env-id(1application-definitionに1回だけ指定できます。省略できます。) process01,process02,…,process15(1application-definitionに15個指定します。省略できません。) - name
種別 説明 意味 アプリケーション定義名を指定します。 指定可能値 指定できる文字列については,PFM - Agent for PlatformまたはPFM - RM for Platformマニュアルの,プロセスの稼働・非稼働情報の収集について説明している個所を参照してください。
なお,要素の一部として空白や改行を指定できるため,意図した入力以外では,開始タグや終了タグと,要素の間に空白や改行を含めないでください。省略 不可 属性 なし 親要素 application-definition 子要素 なし - virtual-env-id
種別 説明 意味 仮想化環境の識別子を指定します。
- 注意
- 対象エージェントがPFM - Agent for Platform(Windows)の場合,このタグの値は無視されます。
指定可能値 指定できる文字列については,PFM - Agent for PlatformまたはPFM - RM for Platformマニュアルの,プロセスの稼働・非稼働情報の収集について説明している個所を参照してください。
なお,要素の一部として空白や改行を指定できるため,意図した入力以外では,開始タグや終了タグと,要素の間に空白や改行を含めないでください。省略 可(省略時は空文字として扱います。) 属性 なし 親要素 application-definition 子要素 なし - process01,process02,…,process15
種別 説明 意味 アプリケーション定義を構成するプロセスを一つずつ指定します。
タグ名のprocessXXのXXは,エージェントのプロパティであるMonitoringXXの値に対応します。指定可能値 監視するプログラム,コマンドまたはサービスの実行時名称(MonitoringXX Conditionの値)を指定します。
指定できる文字列については,PFM - Agent for PlatformまたはPFM - RM for Platformマニュアルの,プロセスの稼働・非稼働情報の収集について説明している個所を参照してください。
なお,要素の一部として空白や改行を指定できるため,意図した入力以外では,開始タグや終了タグと,要素の間に空白や改行を含めないでください。省略 不可 属性 label 監視条件のラベル(エージェントのMonitoringXX Labelプロパティに設定する値。省略できません。)
指定できる文字列については,PFM - Agent for PlatformまたはPFM - RM for Platformマニュアルの,プロセスの稼働・非稼働情報の収集について説明している個所を参照してください。
なお,要素の一部として空白や改行を指定できるため,意図した入力以外では,開始タグや終了タグと,要素の間に空白や改行を含めないでください。type 監視するフィールド(エージェントのMonitoringXX Fieldプロパティに設定する値。省略できません。)
指定できる値は,次の8個です。
- noneまたはNONE:選択なし
- programまたはPROGRAM:プログラム
- commandlineまたはCOMMANDLINE:コマンドライン
- serviceまたはSERVICE※:サービス
min 監視数の下限値(エージェントのMonitoringXX Rangeプロパティで"-"の左側に設定する値。省略できません。)
指定できる値は,0以上65535以下の整数でさらに,min≦maxである必要があります。max 監視数の上限値(エージェントのMonitoringXX Rangeプロパティで"-"の右側に設定する値。省略できません。)
指定できる値は,0以上65535以下の整数で,さらに,min≦maxである必要があります。親要素 application-definition 子要素 なし
- 注※
- 対象エージェントがPFM - Agent for Platform(UNIX)の場合,serviceおよびSERVICEは指定できません。指定すると,noneとして設定されます。
アプリケーション定義ファイルの記述例を次に示します。なお,アプリケーション定義ファイルのサンプルを下記ディレクトリに格納しています。アプリケーション定義ファイルを記述するときのひな形として利用してください。
- Windowsの場合:
- インストール先フォルダ\sample\processmonitoringcommand\
- UNIXの場合:
- /opt/jp1pcwebcon/sample/processmonitoringcommand/
アプリケーション定義ファイル記述例(監視対象ホストがWindowsで,一つのアプリケーション定義を記述する場合)
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE pr-cli-parameters SYSTEM "processmonitoring_params.dtd"> <pr-cli-parameters ver="0100"> <application-definition> <name>PFM - Agent</name> <virtual-env-id></virtual-env-id> <process01 label="Health Check" type="program" max="1" min="0">jpcagt0*</process01> <process02 label="How many agents" type="commandline" max="65535" min="1">*\jp1pc\agt*\agent\jpcagt*</process02> <process03 label="RM service" type="service" max="1" min="0">JP1PCAGT_7A_*</process03> <process04 label="Monitoring04" type="none" max="0" min="0"></process04> <process05 label="Monitoring05" type="none" max="0" min="0"></process05> <process06 label="Monitoring06" type="none" max="0" min="0"></process06> <process07 label="Monitoring07" type="none" max="0" min="0"></process07> <process08 label="Monitoring08" type="none" max="0" min="0"></process08> <process09 label="Monitoring09" type="none" max="0" min="0"></process09> <process10 label="Monitoring10" type="none" max="0" min="0"></process10> <process11 label="Monitoring11" type="none" max="0" min="0"></process11> <process12 label="Monitoring12" type="none" max="0" min="0"></process12> <process13 label="Monitoring13" type="none" max="0" min="0"></process13> <process14 label="Monitoring14" type="none" max="0" min="0"></process14> <process15 label="Monitoring15" type="none" max="0" min="0"></process15> </application-definition> </pr-cli-parameters>アプリケーション定義ファイル記述例(監視対象ホストがUNIXで,特定の仮想化環境で稼働するプロセスを監視する一つのアプリケーション定義を記述する場合)
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE pr-cli-parameters SYSTEM "processmonitoring_params.dtd"> <pr-cli-parameters ver="0100"> <application-definition> <name>PFM - Agent</name> <virtual-env-id>1</virtual-env-id> <process01 label="Health Check" type="program" max="1" min="0">jpcagt0*</process01> <process02 label="How many agents" type="commandline" max="65535" min="1">jpc*/jp1pc/agt*/agent*</process02> <process03 label="Monitoring03" type="none" max="0" min="0"></process03> <process04 label="Monitoring04" type="none" max="0" min="0"></process04> <process05 label="Monitoring05" type="none" max="0" min="0"></process05> <process06 label="Monitoring06" type="none" max="0" min="0"></process06> <process07 label="Monitoring07" type="none" max="0" min="0"></process07> <process08 label="Monitoring08" type="none" max="0" min="0"></process08> <process09 label="Monitoring09" type="none" max="0" min="0"></process09> <process10 label="Monitoring10" type="none" max="0" min="0"></process10> <process11 label="Monitoring11" type="none" max="0" min="0"></process11> <process12 label="Monitoring12" type="none" max="0" min="0"></process12> <process13 label="Monitoring13" type="none" max="0" min="0"></process13> <process14 label="Monitoring14" type="none" max="0" min="0"></process14> <process15 label="Monitoring15" type="none" max="0" min="0"></process15> </application-definition> </pr-cli-parameters>アプリケーション定義ファイル記述例(監視対象ホストがWindowsで,PFM - ManagerおよびPFM - Web Consoleのプロセスを監視する二つのアプリケーション定義を記述する場合)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pr-cli-parameters SYSTEM "processmonitoring_params.dtd"> <pr-cli-parameters ver="0100"> <application-definition> <name>PFM - Manager</name> <virtual-env-id></virtual-env-id> <process01 label="jpcah" max="65535" min="1" type="program">jpcah.exe</process01> <process02 label="jpcagt0" max="65535" min="1" type="program">jpcagt0.exe</process02> <process03 label="jpcep" max="65535" min="1" type="program">jpcep.exe</process03> <process04 label="jpcmm" max="65535" min="1" type="program">jpcmm.exe</process04> <process05 label="jpcnsvr" max="65535" min="1" type="program">jpcnsvr.exe</process05> <process06 label="jpcstatsvr" max="65535" min="1" type="program">jpcstatsvr.exe</process06> <process07 label="jpcsto" max="65535" min="2" type="program">jpcsto.exe</process07> <process08 label="jpctrap" max="65535" min="1" type="program">jpctrap.exe</process08> <process09 label="jpcvsvr" max="65535" min="1" type="program">jpcvsvr.exe</process09> <process10 label="Monitoring10" max="0" min="0" type="none"></process10> <process11 label="Monitoring11" max="0" min="0" type="none"></process11> <process12 label="Monitoring12" max="0" min="0" type="none"></process12> <process13 label="Monitoring13" max="0" min="0" type="none"></process13> <process14 label="Monitoring14" max="0" min="0" type="none"></process14> <process15 label="Monitoring15" max="0" min="0" type="none"></process15> </application-definition> <application-definition> <name>PFM - Web Console</name> <virtual-env-id></virtual-env-id> <process01 label="jpcwebcon" max="65535" min="1" type="program">jpcwebcon.exe</process01> <process02 label="cjstartweb" max="65535" min="1" type="program">cjstartweb.exe</process02> <process03 label="cprfd" max="65535" min="1" type="program">cprfd.exe</process03> <process04 label="httpsd" max="65535" min="2" type="program">httpsd.exe</process04> <process05 label="rotatelogs2" max="65535" min="4" type="program">rotatelogs2.exe</process05> <process06 label="Monitoring06" max="0" min="0" type="none"></process06> <process07 label="Monitoring07" max="0" min="0" type="none"></process07> <process08 label="Monitoring08" max="0" min="0" type="none"></process08> <process09 label="Monitoring09" max="0" min="0" type="none"></process09> <process10 label="Monitoring10" max="0" min="0" type="none"></process10> <process11 label="Monitoring11" max="0" min="0" type="none"></process11> <process12 label="Monitoring12" max="0" min="0" type="none"></process12> <process13 label="Monitoring13" max="0" min="0" type="none"></process13> <process14 label="Monitoring14" max="0" min="0" type="none"></process14> <process15 label="Monitoring15" max="0" min="0" type="none"></process15> </application-definition> </pr-cli-parameters>
注意事項
- このコマンドは,実行時にPFM - Managerに対する認証が必要です。認証用のキーファイルを作成していない場合は,コマンドを実行する前に,jpcmkkeyコマンドで認証用のキーファイルを作成してください。各タグの指定値は,各PFM - AgentまたはPFM - RMマニュアルの「パフォーマンスデータの収集の設定」に関する注意に従って設定してください。
- 同じエージェントに対して,jpcprocdef createコマンドと,PFM - Web Consoleの[プロセス監視の設定]画面からの編集を同時に実行しないでください。同時に実行した場合,それぞれのアプリケーション定義の内容が部分的にしか反映されません。この現象が発生した場合は,再度jpcprocdef createコマンドを実行して,アプリケーション定義の内容を更新してください。
- このコマンドはPFM - Managerおよび設定対象のPFM - AgentまたはPFM - RMのサービスが起動した状態で実行してください。
戻り値
0 正常終了した。 1 コマンドラインの形式が不正である。 2 コマンドの実行権限がない。 4 コマンドの引数が不正である。 5 入力ファイルのXML書式が不正である。 10 入力ファイルの定義内容が不正である。 11 PFM - Managerへの認証処理に失敗した。または,jpcmkkeyで作成されたユーザーに実行権限がない。 80 -noquery指定なし時の確認に対して,「Y」または「y」以外を指定して中断させた。 100 Performance Managementの環境が不正である。 141 アプリケーション定義が64個を超えている。 144 コマンドの実行に失敗した。
コマンドの実行によって,入力ファイルに指定されたアプリケーション定義が不正な状態で存在している。200 メモリーが不足している。 202 入力ファイルにアクセスできない。 222 通信処理でエラーが発生した。 224 エージェントに接続できない。 225 エージェントが存在しない。 226 エージェントがサポート対象外である。 227 接続先PFM - Managerがサポート対象外である。 228 接続先PFM - Managerに対象エージェントがセットアップされていない。 255 予期しないエラーが発生した。
使用例1
エージェント「TA1hostpfm」にアプリケーション定義ファイルappdef.xmlに記述した定義内容を設定する場合のコマンドの実行例を次に示します。
jpcprocdef create -agent TA1hostpfm -f appdef.xml
使用例2
エージェント「TA1hostpfm」に設定しているアプリケーション定義の内容をappdef.xmlに記述した定義内容で上書きし,ファイルに記載していない既存のアプリケーション定義をすべて削除する場合のコマンドの実行例を次に示します。
jpcprocdef create -agent TA1hostpfm -f appdef.xml -removeOthers -noquery
出力例
コマンド処理の詳細情報を標準出力,標準エラー出力,稼働状況ログファイルに出力します。ログ仕様については「3. ログ情報」を参照してください。
上記「使用例2」の処理が成功した場合の標準出力の出力例を次に示します。引数で指定したサービスIDの実行結果を表示します(OKまたはERR)。
標準出力の出力例
jpcprocdef create connected to localhost at yyyy MM dd HH:MM:SS.mmm KAVJK6518-I 上書き対象となるアプリケーション定義がひとつ以上あります。 KAVJK6521-I 削除対象となるアプリケーション定義がひとつ以上あります。 KAVJK6504-I アプリケーション定義の更新処理を続行します。 create result OK : TA1hostpfm jpcprocdef create disconnected at yyyy MM dd HH:MM:SS.mmm
All Rights Reserved. Copyright (C) 2009, 2012, Hitachi, Ltd.
(C)opyright 2000-2009, by Object Refinery Limited and Contributors.