クライアントコマンド実行モード
HCP toolsでは、クライアントのコマンド実行モードとして次の二つを提供します。
- 単一起動モード (Single running mode)
- 多重起動モード (Multiple running mode)
多重起動モードは、コマンドの--multi-runオプションを指定すると動作します。本オプションを指定しない場合は、単一起動モードとなります。多重起動モードは、作業ディレクトリを複数のユーザで共有する場合や、バックグラウンド実行を行う場合などに利用します。
以下、それぞれのモードでの実行方法、注意事項などを説明します。
#
単一起動モード本モードは、特定の作業ディレクトリで単一のユーザがシーケンシャルにコマンドを実行する様な利用形態で使用します。コマンドの終了ステータスは、通常のコマンドと同様の方法で取得します。
--例:(Linux)[user@localhost ~]$ hcp src.txt dest.txt...[user@localhost ~]$ echo $?0(Windows)C:\Users\user> hcp src.txt dest.txt...C:\Users\user> echo %ERRORLEVEL%0--
コマンドの実行記録は、--hcp-outオプションで標準出力に出力しない場合、カレントディレクトリに次の名前で実行毎に初期化(トランケート)が行われて記録されます。
.hcp.out (Linux)_hcp.out (Windows)
アプリケーションのログは、デフォルトでは標準出力に下記の様に出力されますが、-lオプションでファイルパスを指定すると、そのファイルに出力されます。
2019/11/01 13:33:35 00007fae521a3b80:INFO :Set bandwidth outbound to unlimited since the specified value is over 5Gbps (given limit : 10000000000 bps).2019/11/01 13:33:35 00007fae521a3b80:INFO :Set bandwidth inbound to unlimited since the specified value is over 5Gbps (given limit : 10000000000 bps).2019/11/01 13:33:38 00007fae4aa4a700:INFO :A transport timeout monitor was setup (sock=5, _recv). Monitoring the timeout ...2019/11/01 13:33:38 00007fae4aa4a700:INFO :A transport timeout monitor becomes disabled (sock=5, ret=0, errno=0, _recv).
統計記録(アプリケーション統計、トランスポート統計)は、保存先を指定しない場合はカレントディレクトリに次の名前で保存されます。これらの記録は、トランケートされず追記されます。
.hcp.statistics.application (Linux).hcp.statistics.transport.tcp (Linux).hcp.statistics.transport.hpfp (Linux)_hcp.statistics.application (Windows)_hcp.statistics.transport.tcp (Windows)_hcp.statistics.transport.hpfp (Windows)
統計記録は、-Lオプションを使用すると、出力先のディレクトリとファイル名のプレフィックス(接頭辞)を指定して出力できます。
--例:[root@localhost ~]# hcp -L /var/tmp/.hcp.statistics2 ...// 出力先ディレクトリ : /var/tmp// ファイル名プレフィックス : .hcp.statistics2--
#
多重起動モード本モードは、単一のディレクトリを複数のユーザで共有して作業を行う場合や、コマンドをバックグラウンドで起動して単一のユーザで複数コマンドを同時に実行する場合などに利用します。コマンドの終了ステータスは、単一起動モードと同様の方法で取得するか、結果出力に記録されるEXITパラメータなどを参照します。
--例:[user@localhost ~]$ hcp --multi-run=/var/tmp ...2019/11/01 14:02:06 00007f35da531b80:INFO :A configuration file (/home/user/.hcp/hcp.conf) was not found. So it was skipped.2019/11/01 14:02:06 00007f35da531b80: :Recording on multi-running is configured (ID=hcp.mr.20191101_140206_442.15279, dir=/var/tmp, out=ATR).2019/11/01 14:02:06 00007f35da531b80:INFO :Set bandwidth outbound to unlimited since the specified value is over 5Gbps (given limit : 10000000000 bps).2019/11/01 14:02:06 00007f35da531b80:INFO :Set bandwidth inbound to unlimited since the specified value is over 5Gbps (given limit : 10000000000 bps).Login as:userPassword:2019/11/01 14:02:09 00007f35d2dd8700:INFO :A transport timeout monitor was setup (sock=5, _recv). Monitoring the timeout ...2019/11/01 14:02:09 00007f35d2dd8700:INFO :A transport timeout monitor becomes disabled (sock=5, ret=0, errno=0, _recv).
[user@localhost ~]$ hcp -l hcp.log --multi-run=/var/tmp ...2019/11/01 14:04:23 00007fb04eac3b80:INFO :A configuration file (/home/user/.hcp/hcp.conf) was not found. So it was skipped.2019/11/01 14:04:23 00007fb04eac3b80: :Logging on multi-running is configured (ID=hcp.mr.20191101_140423_458.15318, dir=/var/tmp, path=/var/tmp/hcp.mr.20191101_140423_458.15318.log).Login as:userPassword:[user@localhost ~]$ less /var/tmp/hcp.mr.20191101_140423_458.15318.log2019/11/01 14:04:23 00007fb04eac3b80: :Recording on multi-running is configured (ID=hcp.mr.20191101_140423_458.15318, dir=/var/tmp, out=ATR).2019/11/01 14:04:23 00007fb04eac3b80:INFO :Set bandwidth outbound to unlimited since the specified value is over 5Gbps (given limit : 10000000000 bps).2019/11/01 14:04:23 00007fb04eac3b80:INFO :Set bandwidth inbound to unlimited since the specified value is over 5Gbps (given limit : 10000000000 bps).2019/11/01 14:04:26 00007fb04736a700:INFO :A transport timeout monitor was setup (sock=6, _recv). Monitoring the timeout ...
[user@localhost ~]$ cat /var/tmp/hcp.mr.20191101_140423_458.15318.out | grep -e EXITEXIT 0 REASON 0000--
本モードでは、コマンド実行開始時に--multi-runオプションに指定されたディレクトリに次の様なロックファイルを作成します。
hcp.mr.<YYYYMMDD_hhmmss_msec>.<pid>.lock
コマンド毎にこのロックファイルのプレフィックス(".lock"より前の文字列)に文字列を付加したファイル名で次の記録を保存します。
- アプリケーション統計
- トランスポート統計
- 結果出力
- アプリケーションログ
また、本モードでは、次のエラーステータスで終了する場合は、これらの記録は提供されません。単一起動モードと同様にコマンドラインから終了ステータスの確認を行います。
- EXIT_ERROR_LOAD_ARG (181)
- EXIT_ERROR_LOAD_CONF (182)
- EXIT_ERROR_CLI_SETUP_FAILED (189)
バックグランドモードを使用する場合は、上記ケースで停止した場合終了ステータス等の確認が困難となりますので、事前に設定構成を担保するなどご注意ください。
コマンドの実行記録は、--multi-runオプションに従ってファイルに出力される場合は、次のファイル名で記録されます。
hcp.mr.<YYYYMMDD_hhmmss_msec>.<pid>.out
コマンドの--hcp-outオプションが適用される場合は、ファイルに保存されず標準出力に出力されます。
アプリケーションのログは、--multi-runオプションに従ってファイルに出力される場合は、次のファイル名で記録されます。
hcp.mr.<YYYYMMDD_hhmmss_msec>.<pid>.log
統計記録(アプリケーション統計、トランスポート統計)は、--multi-runオプションに従ってファイルに出力される場合は、次のファイル名で記録されます。
hcp.mr.<YYYYMMDD_hhmmss_msec>.<pid>.statistics.applicationhcp.mr.<YYYYMMDD_hhmmss_msec>.<pid>.statistics.transport.tcphcp.mr.<YYYYMMDD_hhmmss_msec>.<pid>.statistics.transport.hpfp