アプリケーションパフォーマンス管理ソフトウエア Dynatrace■アプリケーションパフォーマンス管理ソフトウエア  「ES/1 NEO APM Dynatrace AppMon」導入事例

ASEAN販売システムの性能品質を向上
日本精工グループのASEAN販売システムは、5か国の販売拠点から利用される重要システムです。このシステムにて、WebSphereのJVMヒープ不足によるOut Of Memoryが発生し、バッチが起動できないことがありました。
初期対応後の根本原因の特定と対応を行う際の問題の解決のため、アプリケーション性能管理ソフトウエア「ES/1 NEO APM Dynatrace AppMon」をご導入いただいた効果について、お話を伺いました。

  • JVMヒープ不足の解消と予防保守
  • エラーログからは問題処理を特定することが難しい
  • シスログやアプリログが紐付かず「問題処理にあたりを付けて」対処を実施
  • 分析工数が1日~2日もかかる
  • JVMヒープを大量消費する処理をすぐに特定
  • 問題処理の特定だけでなく、発生条件、改善すべき箇所も容易に把握
  • 突発的な問題発生の頻度は激減し、品質向上を実現
  • 問題処理特定までに15分、検証も3時間程度と分析時間を大幅短縮

会社概要(NSKネットアンドシステム株式会社について)

NSKネットアンドシステムは、ベアリング、自動車部品、精機製品の開発・製造・販売を手がけ、100年にわたり産業の発展と環境の保全に貢献している日本精工株式会社の完全子会社です。
日本精工グループ企業のシステムを一手に引き受け、開発から運用・保守サービスまでを提供しております。

ES/1 NEO APM Dynatrace AppMon導入のきっかけ

Out Of Memoryの発生によりバッチが起動できない……

日本精工グループのASEAN販売システムは、5か国の販売拠点から利用される重要システムです。
このシステムにて、WebSphereのJVMヒープ不足によるOutOf Memoryが発生し、バッチが起動できないことがありました。そのような際はユーザへの影響を最小限にとどめるため、 WebSphereの再起動、バッチ再実行で対処していました。

初期対応後は根本原因の特定と対応を行いますが、下記のような理由で分析に苦慮していました。

  • ログに出力された、Out Of Memory発生時間帯前後の処理は正常終了していたため、エラーログからは問題処理を特定することが難しい
  • シスログやアプリログが紐付かず「問題処理にあたりを付けて」対処を実施
  • 経験と勘に基づく分析のため、原因が本当にそこなのか「曖昧さ」が残る
  • プログラム担当者の分析工数が1日~2日もかかる

Out Of Memoryの原因特定のためにデバッグログを取得すれば、詳細な分析は可能ですが、システムリソースへの負荷も大きいため現実的ではありません。
半ばあきらめていたところに、ES/1 NEO APM Dynatraceの紹介を受け、上記の課題を解決できると確信しました。

ES/1 NEO APM Dynatrace AppMonによる分析例

JVMヒープを大量消費する処理の早期特定と改善

ES/1 NEO APM DynatraceをASEAN販売システムの本番環境とテスト環境に導入し、効果はすぐに現れました。
Out Of Memoryの発生時には、DynatraceのPurePathによりJVMヒープを大量消費する処理をすぐに特定できました。問題原因は画面からの「条件なし検索」により、大量データを取得していたことでした。(図1)

DynatraceではSQLの処理パラメータ情報まで取得しているため、問題処理の特定だけでなく、その問題の発生条件、改善すべき箇所も容易に把握できます。
対応として、以下のチューニングを実施しヒープ不足を解消しました。(図2)

  • 全抽出データをメモリ展開 → 表示ページ分のデータのみフェッチで取得
  • 全件検索する非効率SQL → 検索条件の入力を必須に変更
  • 複数テーブルの連結検索 → 処理データの絞り込み

Out Of Memory発生時の問題処理の特定

チューニング実施後の改善状況

ES/1 NEO APM Dynatrace AppMonによる予防保守

定常監視による予防保守と分析時間の大幅短縮

分析、改善を繰り返した結果、突発的な問題発生の頻度は激減し、システムの品質向上を実現できました。また、予防保全の観点から下記のような定常確認と問題発生前の対処を実施しています。

  • Dynatraceのグラフからヒープ使用状況を毎日確認
  • ヒープ使用量の増加を検知した際にはアラート機能で担当者にメール通知
  • 担当者はDynatraceのPurePathデータから、ヒープ使用量の多い処理を特定
  • 本番データをテスト環境にコピーし再現テストを実施、改善策の適用

再現テスト時にもDynatraceでの分析により確証が得られるため、自信を持って対応策が打てています。また、問題処理特定までに15分、再現テスト・チューニング後の検証も3時間程度と、分析時間を大幅短縮できました。

今後の展望

重要システムの更なる安定稼働、品質向上

現在、WebSphere以外のJava環境への展開を進めています。第一弾として、NETシステムへの採用を決定しました。
今後も重要システムを中心に更なるシステムの安定稼働、品質向上を実現します。

お客様プロフィール

導入事例:NSKネットアンドシステム株式会社NSKネットアンドシステム株式会社
URL:http://www.nsk.com/jp/

※2018年3月掲載