IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社オービックの特許一覧

特開2024-141585ログ分析装置、ログ分析方法、及びログ分析プログラム
<>
  • 特開-ログ分析装置、ログ分析方法、及びログ分析プログラム 図1
  • 特開-ログ分析装置、ログ分析方法、及びログ分析プログラム 図2
  • 特開-ログ分析装置、ログ分析方法、及びログ分析プログラム 図3
  • 特開-ログ分析装置、ログ分析方法、及びログ分析プログラム 図4A
  • 特開-ログ分析装置、ログ分析方法、及びログ分析プログラム 図4B
  • 特開-ログ分析装置、ログ分析方法、及びログ分析プログラム 図5A
  • 特開-ログ分析装置、ログ分析方法、及びログ分析プログラム 図5B
  • 特開-ログ分析装置、ログ分析方法、及びログ分析プログラム 図6
  • 特開-ログ分析装置、ログ分析方法、及びログ分析プログラム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024141585
(43)【公開日】2024-10-10
(54)【発明の名称】ログ分析装置、ログ分析方法、及びログ分析プログラム
(51)【国際特許分類】
   G06F 11/34 20060101AFI20241003BHJP
   G06F 11/30 20060101ALI20241003BHJP
【FI】
G06F11/34 176
G06F11/30 172
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023053319
(22)【出願日】2023-03-29
(71)【出願人】
【識別番号】398040527
【氏名又は名称】株式会社オービック
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】山本 啓介
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042MA10
5B042MA14
5B042MC22
5B042MC35
5B042MC40
(57)【要約】
【課題】監視対象から出力されるログについて、詳細情報であるトレースから概要情報であるメトリクスへの近似変換を行い、異なる粒度の情報を統一したデータ形式に可視化して比較を容易にすることで、ログ分析の効率化と精度を向上させて、課題の解決までの時間を短縮すること。
【解決手段】本実施の形態に係るログ分析装置は、監視対象から出力されるログの概要を確認するためのメトリクスと詳細を確認するためのトレースを取得する取得手段と、トレースを比較対象のメトリクスのデータ形式に近似するように変換する変換手段と、比較対象のメトリクスと変換後のトレースを比較分析画面に表示出力する出力手段と、を備えている。
【選択図】図3
【特許請求の範囲】
【請求項1】
監視対象から出力されるログの概要を確認するためのメトリクスと詳細を確認するためのトレースを取得する取得手段と、
トレースを比較対象のメトリクスのデータ形式に近似するように変換する変換手段と、
比較対象のメトリクスと変換後のトレースを比較分析画面に表示出力する出力手段と、
を備えたことを特徴とするログ分析装置。
【請求項2】
前記トレースは、変換元となるログを記録する単位又はその処理の呼び出し元を論理的に集約する単位である処理と、終了時間と、処理時間と、比較対象のメトリクスに対応する変換元の指標である重みの情報を含むことを特徴とする請求項1に記載のログ分析装置。
【請求項3】
前記処理は、アプリケーションログの画面名やジョブ名、WebサーバのURI、又は、DBログのストアドプロシージャや関数名を含み、
前記重みは、CPU負荷であるCPU時間、メモリ負荷である物理読込、ディスク負荷である物理読込・書込、又は、ネットワーク負荷であるデータ取得行数、更新対象行数を含むことを特徴とする請求項2に記載のログ分析装置。
【請求項4】
前記変換手段は、
前記トレースについて、終了時間と処理時間から開始時間を算出し、
比較対象のメトリクスの取得間隔あたりの平均の重みを算出し、
算出した時間あたりの重みを、時系列の表にマッピングし、
横軸を時間、縦軸を重みの大きさとした積み上げグラフを生成して、積み上げグラフの波形を比較対象のメトリクスの近似値とすることを特徴とする請求項3に記載のログ分析装置。
【請求項5】
前記変換手段は、算出した時間あたりの重みを時系列にマッピングした表に基づいて、特定期間の各処理の負荷ランキングを生成する負荷ランキング生成機能を備えたことを特徴とする請求項4に記載のログ分析装置。
【請求項6】
前記変換手段は、各時間帯における処理の重みをユーザ操作により変更し、変更後の重みについて、横軸を時間、縦軸を重みの大きさとした積み上げグラフを生成するシミュレーション機能を備えたことを特徴とする請求項4に記載のログ分析装置。
【請求項7】
制御部を備えた情報処理装置が実行するログ分析方法であって、
監視対象から出力されるログの概要を確認するためのメトリクスと詳細を確認するためのトレースを取得する取得工程と、
トレースを比較対象のメトリクスのデータ形式に近似するように変換する変換工程と、
比較対象のメトリクスと変換後のトレースを比較分析画面に表示出力する出力工程と、 を含むことを特徴とするログ分析方法。
【請求項8】
制御部を備えた情報処理装置が実行するためのログ分析プログラムであって、
監視対象から出力されるログの概要を確認するためのメトリクスと詳細を確認するためのトレースを取得する取得工程と、
トレースを比較対象のメトリクスのデータ形式に近似するように変換する変換工程と、
比較対象のメトリクスと変換後のトレースを比較分析画面に表示出力する出力工程と、
をコンピュータに実行させるためのログ分析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ログ分析装置、ログ分析方法、及びログ分析プログラムに関する。
【背景技術】
【0002】
例えば、コンピュータ上で実行されるシステムにおいては、イベントの結果又はメッセージ等を含むログが出力される。システム等に異常が発生した際には、ユーザは、出力されたログを分析・解析することで、異常の原因を特定する。従来、ログを分析する装置として、例えば、特許文献1がある。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】国際公開第2017/169949号
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1では、監視対象から出力されるログについて、詳細情報であるトレースから概要情報であるメトリクスへの近似変換を行い、異なる粒度の情報を統一したデータ形式に可視化して比較を容易にすることで、ログ分析の効率化と精度を向上させて、課題の解決までの時間を短縮することに関して何等記載されていない。
【0005】
本発明は、上記に鑑みてなされたものであり、監視対象から出力されるログについて、詳細情報であるトレースから概要情報であるメトリクスへの近似変換を行い、異なる粒度の情報を統一したデータ形式に可視化して比較を容易にすることで、ログ分析の効率化と精度を向上させて、課題の解決までの時間を短縮することが可能なログ分析装置、ログ分析方法、及びログ分析プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明は、監視対象から出力されるログの概要を確認するためのメトリクスと詳細を確認するためのトレースを取得する取得手段と、トレースを比較対象のメトリクスのデータ形式に近似するように変換する変換手段と、比較対象のメトリクスと変換後のトレースを比較分析画面に表示出力する出力手段と、を備えたことを特徴とする。
【0007】
また、本発明の一態様によれば、前記トレースは、変換元となるログを記録する単位又はその処理の呼び出し元を論理的に集約する単位である処理と、終了時間と、処理時間と、比較対象のメトリクスに対応する変換元の指標である重みの情報を含むことを特徴とする。
【0008】
また、本発明の一態様によれば、前記処理は、アプリケーションログの画面名やジョブ名、WebサーバのURI、又は、DBログのストアドプロシージャや関数名を含み、前記重みは、CPU負荷であるCPU時間、メモリ負荷である物理読込、ディスク負荷である物理読込・書込、又は、ネットワーク負荷であるデータ取得行数、更新対象行数を含むことにしてもよい。
【0009】
また、本発明の一態様によれば、前記変換手段は、前記トレースについて、終了時間と処理時間から開始時間を算出し、比較対象のメトリクスの取得間隔あたりの平均の重みを算出し、算出した時間あたりの重みを、時系列の表にマッピングし、横軸を時間、縦軸を重みの大きさとした積み上げグラフを生成して、積み上げグラフの波形を比較対象のメトリクスの近似値とすることにしてもよい。
【0010】
また、本発明の一態様によれば、前記変換手段は、算出した時間あたりの重みを時系列にマッピングした表に基づいて、特定期間の各処理の負荷ランキングを生成する負荷ランキング生成機能を備えることにしてもよい。
【0011】
また、本発明の一態様によれば、前記変換手段は、各時間帯における処理の重みをユーザ操作により変更し、変更後の重みについて、横軸を時間、縦軸を重みの大きさとした積み上げグラフを生成するシミュレーション機能を備えることにしてもよい。
【0012】
また、上述した課題を解決し、目的を達成するために、本発明は、制御部を備えた情報処理装置が実行するログ分析方法であって、監視対象から出力されるログの概要を確認するためのメトリクスと詳細を確認するためのトレースを取得する取得工程と、トレースを比較対象のメトリクスのデータ形式に近似するように変換する変換工程と、比較対象のメトリクスと変換後のトレースを比較分析画面に表示出力する出力工程と、を含むことを特徴とする。
【0013】
また、上述した課題を解決し、目的を達成するために、本発明は、制御部を備えた情報処理装置が実行するためのログ分析プログラムであって、監視対象から出力されるログの概要を確認するためのメトリクスと詳細を確認するためのトレースを取得する取得工程と、トレースを比較対象のメトリクスのデータ形式に近似するように変換する変換工程と、
比較対象のメトリクスと変換後のトレースを比較分析画面に表示出力する出力工程と、をコンピュータに実行させるためのログ分析プログラムであることを特徴とする。
【発明の効果】
【0014】
本発明によれば、監視対象から出力されるログについて、詳細情報であるトレースから概要情報であるメトリクスへの近似変換を行い、異なる粒度の情報を統一したデータ形式に可視化して比較を容易にすることで、ログ分析の効率化と精度を向上させることが可能
になるという効果を奏する。
【図面の簡単な説明】
【0015】
図1図1は、課題となる背景を説明するための図である。
図2図2は、課題となる背景を説明するための図である。
図3図3は、本実施の形態に係るログ分析装置の構成の一例を示すブロック図である。
図4A図4Aは、ログ変換の概要を説明するための図である。
図4B図4Bは、ログ変換の概要を説明するための図である。
図5A図5Aは、ログ変換の具体例を説明するための図である。
図5B図5Bは、ログ変換の具体例を説明するための図である。
図6図6は、発展的な応用例(1)を説明するための図である。
図7図7は、発展的な応用例(2)を説明するための図である。
【発明を実施するための形態】
【0016】
本発明の実施形態を図面に基づいて詳細に説明する。なお、本発明は本実施形態により限定されるものではない。
【0017】
[1.概要]
例えば、ソフトウェアモニタリングにおいて、監視対象から出力されるログには、概要を監視するためのメトリクス(概要情報)と詳細を監視するためのトレース(詳細情報)など複数の情報がある。
【0018】
トレースは、詳細な情報を持っているがデータ数が多く分析に時間がかかるという問題がある。そのため、従来、メトリクスなど集約した情報を元に異常を検知し、該当時間帯のトレースを調査対象とすることで分析対象を狭めるといった工夫を行っていた。すなわち、概要から異常を検知し、詳細情報を改めて確認する必要があった。
【0019】
しかしながら、この手法ではデータ間の紐づきを人が判断する必要があり、分析に時間がかかってしまったり判断の誤りが発生してしまったりという問題があった。また、開発と運用のメンバーが分かれていることが一般的であり、それぞれの情報を確認するメンバーが異なるため相互に確認する機会が少なかった。
【0020】
本実施の形態では、社会的にソフトウェアの重要性が高くなるにつれ、監視対象が増加し運用負荷軽減が急務であること、開発→運用・保守までワンストップで行っているため、各種ログを確認することによる知見があることに着目した。
【0021】
本実施の形態では、詳細情報であるトレースから概要情報であるメトリクスへの近似変換を行い、異なる粒度の情報を統一したデータ形式に可視化して比較を容易にすることで、分析の効率化と精度の向上、課題の解消までの時間を短縮できるようした。
【0022】
図1及び図2を参照して、課題となる背景を詳細に説明する。ソフトウェアモニタリングに必要なログは、OSやMW(ミドルウェア)など様々なシステムから提供されているが、これを相互に確認しなければ対応は困難である。また、ログには下記のような種類があり、粒度が異なるため同一期間のログの対応付けを把握することが難しい。
【0023】
メトリクスは、活動を記録し、加工したログである。一般的には一定期間のデータを集計したデータであり、少ないデータ量で状態を確認することはできるが、一方で詳細な原因分析は苦手である。メトリクスは、例えば、Windows(登録商標)のパフォーマンスログ(1秒単位や15秒単位のCPU使用率の平均を記録する等)である。
【0024】
トレースは、時系列に従って何が発生したかを記録したログである。一般的にはプログラム内で発生した処理を逐次記録したデータであり、原因分析はできるが、一方でデータ容量が大きくなるため記録媒体の容量や分析コストが大きいという特徴がある。トレースは、例えば、SQL Serverの拡張イベント(特定の処理の開始・終了の発生、該当処理での消費リソースなどを記録できる)である。
【0025】
図1は、メトリクスの例(Windows(登録商標)のパフォーマンスモニタで取得したCPU使用率)を示す図である。横軸は、時間軸、縦軸は、CPU使用率をプロットしたものである。
【0026】
図2は、トレースの例(SQL Serverの拡張イベント)を示す図である。処理時間やCPU時間、物理読込数等が確認できる。拡張イベントで処理完了を記録した結果をExcelに転記し、横軸に時間軸、縦軸にcpu_time列をプロットしたものである。
【0027】
上記例はどちらもCPUに着目した指標ではあるが、ログの粒度が異なるため因果関係の分析が困難である。トレースでは完了時に記録されるため、処理の開始時間(=CPUを利用開始した時刻)や使用率との関連が不明である。
【0028】
メトリクスで記録しているのは「使用率」であり、トレースで記録しているのは「CPU時間」であるため、変換が必要となる。「CPU時間」とは、該当処理にてCPUを利用した時間である。単純化のためCPUが1コアのみのサーバで、CPUに負荷のかかる処理を実行した場合は下記のように記録される。
【0029】
単体では10秒で完了する処理Aを実行した場合は、処理Aは処理時間10秒、CPU時間は10秒である。単体では10秒で完了する処理A・処理Bを同時に実行した場合は、処理Aは処理時間20秒、CPU時間は10秒であり、処理Bは処理時間20秒、CPU時間は10秒である。
【0030】
本発明では、トレース(詳細情報)をメトリクス(概要情報)の形式に変換することで、状況の把握から原因分析までの時間短縮を行う。
【0031】
本発明のログ分析装置は、全業種・全業界に適用可能である。
【0032】
[2.構成]
図3を参照して、本実施形態に係るログ分析装置100の構成の一例について説明する。図3は、ログ分析装置100の構成の一例を示すブロック図である。
【0033】
ログ分析装置100は、例えば、市販のデスクトップ型パーソナルコンピュータやワークステーション等である。
【0034】
ログ分析装置100は、制御部102と通信インターフェース部104と記憶部106と入出力インターフェース部108と、を備えている。ログ分析装置100が備えている各部は、任意の通信路を介して通信可能に接続されている。
【0035】
通信インターフェース部104は、ルータ等の通信装置及び専用線等の有線又は無線の通信回線を介して、ログ分析装置100をネットワーク300に通信可能に接続する。通信インターフェース部104は、他の装置と通信回線を介してデータを通信する機能を有する。ここで、ネットワーク300は、ログ分析装置100と、サーバ200、監視対象のシステム(不図示)とを相互に通信可能に接続する機能を有し、例えばインターネットやLAN(Local Area Network)等である。
【0036】
入出力インターフェース部108には、入力装置112及び出力装置114が接続されている。出力装置114には、モニタ(家庭用テレビを含む)の他、スピーカやプリンタを用いることができる。入力装置112には、キーボード、マウス、及び、マイクの他、マウスと協働してポインティングデバイス機能を実現するモニタを用いることができる。なお、以下では、出力装置114をモニタ114とし、入力装置112をキーボード112又はマウス112として記載する場合がある。また、モニタ114に情報を表示して、ユーザが入力装置112を操作すること等を、「UIを介したユーザ操作」と記載する場合がある。
【0037】
記憶部106には、各種のデータベース、テーブル、及びファイルなどが格納される。記憶部106には、OS(Operating System)と協働してCPU(Central Processing Unit)に命令を与えて各種処理を行うためのコンピュータプログラムが記録される。記憶部106として、例えば、RAM(Random Access Memory)・ROM(Read Only Memory)等のメモリ装置、ハードディスクのような固定ディスク装置、フレキシブルディスク、及び光ディスク等を用いることができる。記憶部106は、トレースやメトリクス等の情報を格納する。
【0038】
制御部102は、ログ分析装置100を統括的に制御するCPU等である。制御部102は、OS等の制御プログラム・各種の処理手順等を規定したプログラム・所要データなどを格納するための内部メモリを有し、格納されているこれらのプログラムに基づいて種々の情報処理を実行する。
【0039】
制御部102は、記憶部106に格納されている、トレースやメトリクス等の情報にアクセス可能に構成されている。なお、トレースやメトリクス等の情報は、他の場所(例えば、サーバ200)に格納されていてもよく、制御部102がアクセス可能な構成であればよい。
【0040】
制御部102は、機能概念的に、取得部102aと、変換部102bと、出力部102cと、を備えている。
【0041】
取得部102aは、監視対象のシステムから出力されるログの概要を確認するためのメトリクスと詳細を確認するためのトレースを取得して、記憶部106に格納する。
【0042】
変換部102bは、トレースを比較対象のメトリクスのデータ形式に近似するように変換する。
【0043】
この場合、「トレース」は、変換元となるログを記録する単位又はその処理の呼び出し元を論理的に集約する単位である処理と、終了時間と、処理時間と、比較対象のメトリクスに対応する変換元の指標である重みの情報を含むことにしてもよい。
【0044】
「処理」は、アプリケーションログの画面名やジョブ名、WebサーバのURI、又は、DBログのストアドプロシージャや関数名を含むことにしてもよい。「重み」は、CPU負荷であるCPU時間、メモリ負荷である物理読込、ディスク負荷である物理読込・書込、又は、ネットワーク負荷であるデータ取得行数、更新対象行数を含むことにしてもよい。
【0045】
また、変換部102bは、トレースについて、終了時間と処理時間から開始時間を算出し、比較対象のメトリクスの取得間隔あたりの平均の重みを算出し、算出した時間あたりの重みを、時系列の表にマッピングし、横軸を時間、縦軸を重みの大きさとした積み上げグラフを生成して、積み上げグラフの波形を比較対象のメトリクスの近似値とすることにしてもよい。
【0046】
また、変換部102bは、算出した時間あたりの重みを時系列にマッピングした表に基づいて、特定期間の各処理の負荷ランキングを生成する負荷ランキング生成機能を備えることにしてもよい。
【0047】
また、変換部102bは、各時間帯における処理の重みをユーザ操作に応じて変更し、変更後の重みについて、横軸を時間、縦軸を重みの大きさとした積み上げグラフを生成するシミュレーション機能を備えることにしてもよい。
【0048】
出力部102cは、比較対象のメトリクスと変換後のトレースをモニタ114の比較分析画面で表示出力して、両者を比較しやすいように可視化する。
【0049】
[3.具体例]
図3図7を参照して、本実施の形態におけるログ分析装置100の制御部102の処理の具体例について説明する。図4図7は、本実施の形態におけるログ分析装置100の制御部102の処理の具体例について説明するための図である。
【0050】
(3-1.ログ変換の概要)
図4A及び図4Bを参照して、変換部102bより実行されるログ変換の概要を説明する。図4A及び図4Bは、変換部102bより実行されるログ変換の概要を説明するための図である。
【0051】
変換部102bは、トレースという点の情報を、メトリクスという線の情報に変換する。ここで、「処理」、「重み」の定義は下記の通りとする。
【0052】
「処理」は、トレースなど変換元となるログを記録する単位又はその処理の呼び出し元を論理的に集約する単位を指す。例えば、「処理」は、アプリケーションログ:画面名やジョブ名、Webサーバ:URI、DBログ(拡張イベントなど):ストアドプロシージャや関数名である。
【0053】
「重み」は、比較対象のメトリクスに対応する変換元の指標(ここでは拡張イベントを元に説明する)である。例えば、「重み」は、CPU負荷:CPU時間、メモリ負荷:物理読込(ディスクからの読込が発生するのはキャッシュにデータが存在しなかった場合)、ディスク負荷:物理読込・書込、ネットワーク負荷:データ取得行数、更新対象行数である。
【0054】
(1)トレースでは、上記のように点の情報が記録される。図4A(A)は、記録されるトレースの情報の例を示す図である。この例では、処理Aは、終了時間「09:40」、処理時間「0:20」、重み「60」、処理Bは、終了時間「10:00」、処理時間「0:50」、重み「50」、処理Cは、終了時間「10:40」、処理時間「1:10」、重み「70」となっている。
【0055】
(2)終了時間と処理時間から開始時間を求める。図4A(B)は、開始時間を算出した例を示す図である。処理Aは、開始時間「09:20(=09:40-0:20)」、処理Bは、開示時間「09:10(=10:00-0:50)」、処理Cは、開始時間「09:30(=10:40-1:10)」となる。
【0056】
(3)比較対象のメトリクスの取得間隔(ここでは10分とする)あたりの平均の重みを算出する。図4B(C)は、時間当たりの重みを算出した例を示す図である。処理Aは、時間当たりの重みは、「3(=60÷20)」、処理Bは、時間当たりの重みは、「1(=50÷50」、処理Cは、時間当たりの重みは、「1(=70÷70)」となる。
【0057】
(4)算出した時間あたりの重みを、時系列の表にマッピングする。図4B(D)は、算出した時間あたりの重みを、時系列の表(10分間隔)にマッピングした例を示す図である。
【0058】
(5)横軸を時間、縦軸を重みの大きさとした積み上げグラフを生成する。図4B(E)は、処理A,B,Cのそれぞれの時間に対する重みを示している。図4B(F)は、横軸を時間、縦軸を重みの大きさとした処理A,B,Cの積み上げグラフの例を示している。
この積み上げグラフの波形が、メトリクスの近似値となる。
【0059】
(3-2.ログ変換の具体例)
図5A及び図5Bを参照して、ログ変換の概要で説明したログ変換の具体例を説明する。図5A及び図5Bは、変換部102bのログ変換の具体例を説明するための図である。以下では、トレース:拡張イベント(SQL Serverのログ)、処理:ストアドプロシージャ、重み:CPU時間とした場合を説明する。
【0060】
(1)トレースでは、上記のように点の情報が記録される。図5A(A)は、記録されるトレースの情報の例を示す図である。この例では、ストアドプロシージャAは、終了時間「09:40」、処理時間「0:20」、CPU時間「1:00」、ストアドプロシージャBは、終了時間「10:00」、処理時間「0:50」、CPU時間「0:50」、ストアドプロシージャCは、終了時間「10:40」、処理時間「1:10」、CPU時間「1:10」となっている。
【0061】
(2)終了時間と処理時間から開始時間を求める。図5A(B)は、開始時間を算出した例を示す図である。ストアドプロシージャAは、開始時間「09:20(=09:40-0:20)」、ストアドプロシージャBは、開示時間「09:10(=10:00-0:50)」、ストアドプロシージャCは、開始時間「09:30(=10:40-1:10)」となる。
【0062】
(3)比較対象のメトリクスの取得間隔(ここでは10分とする)あたりの平均のCPU使用コア数を算出する。なお、CPU時間>処理時間の場合、複数コアを利用して並列処理を行っているものとする。
【0063】
図5A(C)は、平均のCPU使用コア数を算出した例を示す図である。ストアドプロシージャAは、時間当たりのCPU使用コア数は、「3(=60÷20)」、ストアドプロシージャBは、時間当たりのCPU使用コア数は、「1(=50÷50」、ストアドプロシージャCは、時間当たりのCPU使用コア数は、「1(=70÷70)」となる。
【0064】
(4)算出した時間あたりの重みを、時系列の表にマッピングする。図5A(D)は、算出した時間あたりのCPU使用コア数を、時系列の表(10分間隔)にマッピングした例を示す図である。
【0065】
(5)横軸を時間、縦軸をCPU使用コア数とした積み上げグラフを生成する。図5B(E)は、ストアドプロシージャA,B,Cのそれぞれの時間に対する重みを示している。図5B(F)は、横軸を時間、縦軸をCPU使用コア数としたストアドプロシージャA,B,Cの積み上げグラフ(近似値)の例を示している。図5B(G)は、横軸を時間、縦軸をCPU使用率とした場合のメトリクスのグラフの例を示している。図5B(E)、(F)の比較対象のメトリクスと変換後のトレースは、出力部102cにより比較表示画面に表示出力されて可視化される。
【0066】
図5B(F)、(G)に示すように、メトリクスの監視によって検知した異常値の原因が変換後のトレースと比較することで、ストアドプロシージャA(処理A)であると特定できる。
【0067】
この例では、CPU時間を「重み」の基準として採用したためCPUがボトルネックとなっている処理の分析が可能となった。これ以外にも、「重み」として、物理読込を基準とした場合は、ディスクIOがボトルネックとなっている処理の分析が可能となり、また、取得行数などネットワーク転送量を基準とすればネットワークIOがボトルネックとなっている処理の分析が可能となる。
【0068】
このように、本実施の形態によれば、分析したい観点によって「重み」の基準を変更することで汎用的なログ変換が可能となる。
【0069】
(3-3.発展的な応用例(1))
図6を参照して、発展的な応用例(1)を説明する。図6は、発展的な応用例(1)を説明するための図である。変換部102bは、算出した時間あたりの重みを時系列にマッピングした表に基づいて、特定期間の各処理の負荷ランキングを生成して、不図示の負荷ランキング画面で表示出力する負荷ランキング生成機能を備えることにしてもよい。単位時間値の重みを基準にメトリクスの近似値を求めるための計算結果の表(図4B(D)を用いることで、特定期間で最も負荷をかけた処理のランキングを生成することができる。
【0070】
図6(A)~(D)に示すように、特定期間の負荷ランキングを生成する。具体的には、例えば、特定期間毎に負荷が大きい順に処理を並べ替える。
【0071】
図6(A)は、09:10時点での負荷ランキングを示している。09:10時点で最も負荷をかけているのは処理Bである。
【0072】
図6(B)は、09:20時点での負荷ランキングを示している。09:20時点で最も負荷をかけているのは処理Aである。
【0073】
図6(C)は、10:00時点での負荷ランキングを示している。10:00時点で最も負荷をかけているのは処理Cである。
【0074】
図6(D)は、全期間での負荷ランキングを示している。全期間において合計で最も負荷をかけているのは処理Cである。
【0075】
これにより、時間帯ごとに異なる処理が原因となっている場合においても、業務上重要な時間帯の処理を優先して対応するなどトリアージが容易になる。
【0076】
(3-4.発展的な応用例(2))
図7を参照して、発展的な応用例(2)を説明する。図7は、発展的な応用例(2)を説明するための図である。変換部102bは、各時間帯における処理の重みを、不図示のシミュレーション画面でのユーザ操作に応じて変更し、変更後の重みについて、横軸を時間、縦軸を重みの大きさとした積み上げグラフを生成するシミュレーション機能を備えることにしてもよい。すなわち、負荷改善効果のシミュレーション機能を提供し、各時間帯における重みを手動で変更することで、該当処理のチューニングによるメトリクスへの効果を事前にシミュレーションすることが可能となる。
【0077】
図7(A)は、算出した時間あたりの重みを、時系列の表(10分間隔)にマッピングした例を示す図であり、図4B(C)と同様である。図7(B)は、処理Aの重みを「3」から「1」にオペレータが変更した場合を示す図である。
【0078】
図7(C)は、処理Aの重みが「3」の場合の積み上げグラフを示しており、図4B(F)と同様である。図7(D)は、処理Aの重みを「1」に変更した場合の積み上げグラフを示している。同図に示すように、重みの最大値を「5」から「3」に改善できている。
【0079】
これにより、処理の改善による投資効果を事前にシミュレーション可能となり、投資判断が容易になる。このように、本実施の形態によれば、異なる粒度・種類のログの表示形式を変換することで、異常時の対応を迅速かつ確実に行うことができるようになる。
【0080】
以上説明したように、本実施の形態によれば、監視対象から出力されるログの概要を確認するためのメトリクスと詳細を確認するためのトレースを取得する取得部102aと、トレースを比較対象のメトリクスのデータ形式に近似するように変換する変換部102bと、比較対象のメトリクスと変換後のトレースを比較分析画面に表示出力する出力部102cと、を備えているので、監視対象から出力されるログについて、詳細情報であるトレースから概要情報であるメトリクスへの近似変換を行い、異なる粒度の情報を統一したデータ形式に可視化して比較を容易にすることで、ログ分析の効率化と精度を向上させて、課題の解決までの時間を短縮することが可能となる。
【0081】
[4.国連が主導する持続可能な開発目標(SDGs)への貢献]
本実施形態により、業務効率化や企業の適切な経営判断を推進することに寄与することができるので、SDGsの目標8及び9に貢献することが可能となる。
【0082】
また、本実施形態により、廃棄ロス削減や、ペーパレス・電子化を推進することに寄与することができるので、SDGsの目標12、13及び15に貢献することが可能となる。
【0083】
また、本実施形態により、統制、ガバナンス強化に寄与することができるので、SDGsの目標16に貢献することが可能となる。
【0084】
[5.他の実施形態]
本発明は、上述した実施形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施形態にて実施されてよいものである。
【0085】
例えば、実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。
【0086】
また、本明細書中や図面中で示した処理手順、制御手順、具体的名称、各処理の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
【0087】
また、ログ分析装置100に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
【0088】
例えば、ログ分析装置100が備える処理機能、特に制御部にて行われる各処理機能については、その全部又は任意の一部を、CPU及び当該CPUにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。尚、プログラムは、本実施形態で説明した処理を情報処理装置に実行させるためのプログラム化された命令を含む一時的でないコンピュータ読み取り可能な記録媒体に記録されており、必要に応じてログ分析装置100に機械的に読み取られる。すなわち、ROM又はHDD(Hard Disk Drive)などの記憶部などには、OSと協働してCPUに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAMにロードされることによって実行され、CPUと協働して制御部を構成する。
【0089】
また、このコンピュータプログラムは、ログ分析装置100に対して任意のネットワークを介して接続されたアプリケーションプログラムサーバに記憶されていてもよく、必要に応じてその全部又は一部をダウンロードすることも可能である。
【0090】
また、本実施形態で説明した処理を実行するためのプログラムを、一時的でないコンピュータ読み取り可能な記録媒体に格納してもよく、また、プログラム商品として構成することもできる。ここで、この「記録媒体」とは、メモリーカード、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード、フレキシブルディスク、光磁気ディスク、ROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(登録商標)(Electrically Erasable and Programmable Read Only Memory)、CD-ROM(Compact Disk Read Only Memory)、MO(Magneto-Optical disk)、DVD(Digital Versatile Disk)、及び、Blu-ray(登録商標) Disc等の任意の「可搬用の物理媒体」を含むものとする。
【0091】
また、「プログラム」とは、任意の言語又は記述方法にて記述されたデータ処理方法であり、ソースコード又はバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OSに代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施形態に示した各装置において記録媒体を読み取るための具体的な構成及び読み取り手順ならびに読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
【0092】
記憶部に格納される各種のデータベース等は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、及び、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、及び、ウェブページ用ファイル等を格納する。
【0093】
また、ログ分析装置100は、既知のパーソナルコンピュータ又はワークステーション等の情報処理装置として構成してもよく、また、任意の周辺装置が接続された当該情報処理装置として構成してもよい。また、ログ分析装置100は、当該装置に本実施形態で説明した処理を実現させるソフトウェア(プログラム又はデータ等を含む)を実装することにより実現してもよい。
【0094】
更に、装置の分散・統合の具体的形態は図示するものに限られず、その全部又は一部を、各種の付加等に応じて又は機能負荷に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。すなわち、上述した実施形態を任意に組み合わせて実施してもよく、実施形態を選択的に実施してもよい。
【符号の説明】
【0095】
100 ログ分析装置
102 制御部
102a 取得部
102b 変換部
102c 出力部
104 通信インターフェース部
106 記憶部
108 入出力インターフェース部
112 入力装置
114 出力装置
200 サーバ
300 ネットワーク
図1
図2
図3
図4A
図4B
図5A
図5B
図6
図7