LoginSignup
3
4

More than 5 years have passed since last update.

MQ for z/OSのSMFレコードをcsvで出力してみる

Posted at

IBM MQ for z/OSのパフォーマンス/キャパシティ・プランニング

IBM MQ for z/OS(MQ)のパフォーマンス管理、キャパシティ・プランニングを行う上で必要となる情報は、SMFを使用して収集する事ができます。
収集したレポーティングツールとして、製品提供のツールを使用することもできますが、多くの場合はよりリーダブルなフォーマットで出力することがができる、MP1Bというサポートパックを使用されます。
MP1BでもCSV形式でレコードを出力することも可能ですが、出力可能なのは一部の情報だけだったりと、少し物足りないような気もします。
今回はmq-smf-csvというツールを使用してcsv形式でSMFレコードを出力してみます。

導入

当記事ではwindows7を使用しています。他プラットフォームでは試していませんが同じ手順で問題無いでしょう。
git環境があれば任意のディレクトリにgit cloneするだけ。簡単ですね。

git clone https://github.com/ibm-messaging/mq-smf-csv.git

git環境がない場合は上記のページからzipをダウンロードして任意のディレクトリに展開すればよいでしょう。

SMFデータの取得

ダンプしたMQのSMFレコードをftpで落としてきましょう。

>ftp zos.system.com
zos.system.com に接続しました。
220-FTP Server (user 'takad')
220
ユーザー (zos.system.com:(none)): takad
331-Password:
331
パスワード:
230-220-FTPD1 IBM FTP CS V2R1 at zos.system.com, 04:30:23 on 2016-08-20.
230-TAKAD is logged on.  Working directory is "TAKAD.".
ftp>
ftp> bin                                                  #バイナリで落とす
200 Representation type is Image
ftp> quote site rdw                                       #RDWを付加
200 SITE command was accepted
ftp> get 'takad.smfdump.mq' ./mqsmf.bin
200 Port request OK.
125 Sending data set TAKAD.SMFDUMP.MQ
250 Transfer completed successfully.
ftp: 1857656 バイトが受信されました 1.57秒 1181.72KB/秒。

俺は面倒が嫌いなんだ、という場合はサンプルのSMFがinstall_dir/testing/dataにSMFレコードがあるのでそれを使うといいでしょう。

実行してみる

実行ファイルはinstall_dir/bin/windowsにあります。他にはaix/linuxが確認できます。
まずは-hをつけてヘルプを見てみましょう。

MQ SMF CSV - Build Aug  4 2016 19:16:43
Usage: mqsmfcsv [-o <output dir>] [-a] [ -d <level> ]
         [-h yes|no] [ -i <input file> [-m <max records>]
         [-r ] [-t <ticker>]
  -a               Append to files if they exist. Default is overwrite.
  -d <Level>       Debug by dumping binary records (Level = 1 or 2).
  -h yes|no        Print column headers for new output files. Default is yes.
  -i <Input file>  Default is to read from stdin.
  -m <Max records> End after formatting M records. Default to process all.
  -o <Directory>   Where to put output files. Default to current directory.
  -r               Do not print '=' on numeric-looking strings.
  -s               SQL mode - generate DDL for tables.
  -t <Ticker>      Print progress message every T records.

細かいオプションはさておき、とりあえずinputとoutputを指定してあげれば良さそうです。

> mqsmfcsv.exe -i mqsmf.bin .\output

うまくいけば、"SMF-hoge.csv"のようなファイルが生成されているはずです。
あとはExcelなりで開いてソート→グラフ化とすれば、可視化できて良いでしょう。

最後に

このツールではSMFレコードをダイレクトに出力するため、多いものでは列が400近くにもなり、Excelで見るにはちょっと辛いです。
DDLを一緒に作ってくれるSQL modeというものもあるので、うまくDBに突っ込んで、ElasticSearchなどでもっと簡単にソート/抽出/グラフ化したいところです。

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4