概要
AutoGather は IBM ELM 環境から診断情報を自動収集する Java ベースのツールです。
従来の ISADC の代替として設計されており、以下のような情報を自動収集できます。
- Javacore
- VerboseGC
- Libertyログ
- ELMログ
- QueryStats
- Foundation Counters
- Active SQL
- Active Services
- DB2 Row Actuals
- Debug Logging
特に DOORS Next Performance MustGather の診断データ収集を大幅に自動化することを主目的としています。
主な特徴
Performance MustGather の自動化
従来は手動で実施していた以下を自動化します。
- ログ収集
- Javacore取得
- QueryStats収集
- Foundation Counters取得
- SQL調査用データ収集
ユーザーは問題を再現し、Enterキーを押すだけで収集を完了できます。
ISADC 強化版として利用可能
AutoGather は ISADC より多くの情報を収集できます。
ISADC相当の情報
- Javacore
- VerboseGC
- Libertyログ
- 追加診断データ
を1回で収集します。
長時間収集対応
以下のような長期収集が可能です。
例:
- 15分間隔で48時間収集
- 30秒間隔で10分収集
- 最大Javacore数で停止
Remote Collection
管理用PCから複数サーバーへ接続し収集可能です。
- ELMサーバーへインストール不要
- 中央管理可能
- repodebug 必須
Debug Logging 自動制御
収集開始時にログレベルを DEBUG へ変更し、収集終了後に自動復元します。
Burst Collection
長時間収集時に Javacore を集中取得できます。
例:
Javacore #1, 30秒後
Javacore #2, 30秒後
Javacore #3, 30秒後
Javacore #4, 30秒後
Javacore #5
設定例
burstCount=5
burstInterval=30
動作モード
AutoGather には3つの動作モードがあります。
| モード | 概要 |
|---|---|
| Normal | ELMサーバー上で実行 |
| Remote | 管理PCからリモート収集 |
| Anonymous | 認証不要の簡易収集 |
Normal Collection
概要
最も高機能なモードです。AutoGatherをELMサーバーへ配置し、
- ファイルシステム
- repodebug
- ELM API
を利用して診断情報を取得します。
前提条件
サーバーアクセス
以下が必要です。
- OSログイン権限
- Libertyアクセス権限
- ログ取得権限
ディスク容量
収集内容によって大量の容量を消費します。特に以下を収集する場合は注意してください。
- 長時間収集
- 大量Javacore
- 大容量ログ
インストール
/support/autogatherへ展開します。
C:\IBM\JazzTeamServer\support\autogather
基本設定
applicationHostURL
applicationHostURL=https://elm.company.com:9443
applicationContext
applicationContext=rm
Libertyサーバー名
libertyServerName=clm
実行
Windows (ELM 7.0.3以降)
autogather.bat -c config.windows.properties
Linux
./autogather.sh -c config.linux.properties
Remote Collection
概要
管理PCからリモート実行します。AutoGatherをサーバーへ配置する必要はありません。
制約
取得できないもの
- VerboseGC
- Libertyサーバーログ
- ファイルシステム情報
実行例
./autogather.sh -c remote.properties \-u https://elm.company.com:9443 \-r rm \-a jazzadmin
Anonymous Collection
概要
認証情報不要の簡易収集モードです。収集対象は制限されますが、
- Javacore
- VerboseGC
- Libertyログ
などを取得できます。
実行例
Windows
autogather.bat -c anonymous.windows.properties
Linux
./autogather.sh -c anonymous.linux.properties
repodebug の要件
高度な情報収集には repodebug が必要です。管理画面で以下を有効化します。

DOORS Next の Foundation Counters 取得にはRM拡張プロパティー
debug.enabled = true
の設定も必要です。
収集フェーズ
AutoGather の収集は3段階で実施されます。
Phase 1 : Before (収集開始前)
- Counters取得
- Active SQL取得
- QueryStats初期化
- Debug Logging有効化
- Javacore削除
Phase 2 : During (問題再現中)
定期的に以下を収集します。
- Javacore
- Active Services
- Foundation Counters
- Active SQL
- Linux top コマンド結果
Phase 3 : After (収集終了後)
- QueryStats
- StatRecords
- Foundation Counters
- Active SQL情報
- 各種ログ
- VerboseGC
- Javacore
を収集しZIP化します。
長時間収集
時間指定収集 (例:120秒)
autogather.sh -c config.properties -t 120
最大Javacore数 (例:23個)
autogather.sh -c config.properties -n 23
取得間隔変更 (例:25秒)
autogather.sh -c config.properties -v 25
nohup 実行
Linuxでは長時間収集をバックグラウンド実行できます。
nohup ./autogather.sh \-c config.linux.properties \-t 178200
停止方法
デフォルトで40001ポートを監視します。
停止例
curl http://localhost:40001
または
telnet localhost 40001
接続すると正常終了します。
Burst Javacore Collection (高頻度Javacore取得モード)
設定例
burstCount=5
burstInterval=30
または
-bc 5-bi 30
Debug Logging
ログ収集時のみDEBUGログを有効化できます。
設定例
rm_changesetDelivery.loggers=com.ibm.xxx,com.ibm.yyy
実行
autogather.sh \-c config.properties \-l rm_changesetDelivery
DB2 Row Actuals収集
対象:
- Normalモード
- Remoteモード
手順
通常収集
- Query HashCode確認
- HashCode指定再収集
例
autogather.sh \-c config.properties \-h 921312BC
収集後、
db2commands.csv
が生成されます。
主なコマンドラインオプション
| オプション | 説明 |
|---|---|
| -c | 設定ファイル |
| -u | ELM URL |
| -r | Context Root |
| -a | JazzAdmin ID |
| -s | パスワード |
| -t | 収集時間(秒) |
| -n | 最大Javacore数 |
| -l | Logging Profile |
| -g | Trigger Profile |
| -h | Query HashCodes |
| -bc | Burst回数 |
| -bi | Burst間隔 |
まとめ
AutoGather は ELM 環境向けの高度な診断データ収集ツールです。特に DOORS Next Performance MustGather の自動化に強みがあり、Javacore・QueryStats・Foundation Counters・ログ・VerboseGC等を一括取得できます。Normal、Remote、Anonymous の3モードを備え、短時間の障害解析から数日間の長期監視まで柔軟に対応できます。