HP-UX General
1820171 メンバー
4062 オンライン
109620 解決策
新規ポスト

glanceをファイル出力しながらバックグラウンドで実行するには?

 
T_Ka
コントリビューター

glanceをファイル出力しながらバックグラウンドで実行するには?

glanceを-fでファイルに出力しながらバックグラウンドで実行させたいのですが、どうすればいいでしょうか?

下記のコマンドで実行したのですが、サイズ0のファイルが作られただけで止まってしまいました。

# glance -f /tmp/gl.log &

できれば/bin/shのシェルでの実行方法を教えていただけると助かります。
4件の返信4
hazelwood
信頼あるコントリビューター

glanceをファイル出力しながらバックグラウンドで実行するには?

adviserモードを利用すると、任意の形式でデータを出力できます。(glanceのman pageにも最後の方に例があります。)

# glance -adviser_only -j n -syntax file >outout &

"n"は出力間隔(秒)、"file"は出力する項目を指定したファイルです。

面倒なのが、この"file"の作成で、構文などについては、glanceのヘルプなどを参照してください。

データ項目については、同様にヘルプや/opt/perf/paperdocs以下のドキュメントを参照してください。

一応、サンプルも載せておきます。(CPU使用量等を採取するためのものです。)

------------------------

PRINT GBL_STATTIME

,",", GBL_CPU_USER_MODE_UTIL

,",", GBL_CPU_SYS_MODE_UTIL

,",", GBL_SYSCALL_RATE

------------------------
T_Ka
コントリビューター

glanceをファイル出力しながらバックグラウンドで実行するには?

hazelwood 様

ご回答ありがとうございます。

今回具体的にはPVごとのIOの測定を行おうと考えています。

glance -aos file でIO関係のものを出力しようとして、GBL*はprint GBL...で出力ができることを確認しました。

次に、PVごとのIOを出力するには恐らくBYDSK*を使用すると思われるのですが、

BYDSK*が構文が単純でないようでprint BYDSK...ではエラーになってしまいました。

BYDSK*の構文の解説を探したのですが、見つかりませんでした。

できればglance -u の結果をそのまま出力できればと思うのですが、

glanceのバックグラウンドでの出力は不可能なのでしょうか?
hazelwood
信頼あるコントリビューター

glanceをファイル出力しながらバックグラウンドで実行するには?

ちょうど、DISKに関しても昔作ったのがありましたので、サンプルとして提示します。

#対象が複数ある場合は、LOOP構文でループさせます。

----------------------------

DISK LOOP

PRINT GBL_STATTIME, ",", BYDSK_DEVNAME, ",",

BYDSK_LOGL_READ_RATE, ",",

BYDSK_LOGL_WRITE_RATE, ",",

BYDSK_LOGL_READ_BYTE_RATE, ",",

BYDSK_LOGL_WRITE_RATE, ",",

BYDSK_PHYS_READ_RATE, ",",

BYDSK_PHYS_WRITE_RATE, ",",

BYDSK_PHYS_READ_BYTE_RATE, ",",

BYDSK_PHYS_WRITE_RATE

-------------------------------------

データ項目がglance -uと同じかどうかは確認していませんので、glanceのヘルプで確認してください。

なお、-fは画面出力をファイルにコピーするもののようですので、バックグランド実行の時は、有効に機能してくれないのではないかと思います。(これは、あくまでも推測です。)
T_Ka
コントリビューター

glanceをファイル出力しながらバックグラウンドで実行するには?

hazelwood 様

ありがとうございます。

提示いただいたサンプルが、まさに作りたかったものです。

そのまま使えてしまうので、しっかり理解してから使わせていただきます。

ありがとうございました。