(57)【要約】      （修正有）【課題】システムから出力されるログを利用して、既知障害又は未知障害を好適に分析するログ分析装置を提供する。【解決手段】ログ分析装置１は、ログ指紋生成部１００と、ログ指紋格納部２００と、ログ分析部３００とを備える。ログ指紋生成部は、対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する。ログ指紋格納部は、ログ指紋生成部で生成されたログ指紋を順次格納する。ログ分析部は、ログ指紋格納部に格納されたログ指紋に基づいて、対象システムにおける障害の発生状況を分析する。【選択図】図２
2020154935.tif 000002
【特許請求の範囲】
【請求項１】
対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する生成手段と、
前記生成手段で生成された前記ログ指紋を順次格納する格納手段と、
前記格納手段に格納された前記ログ指紋に基づいて、前記対象システムにおける障害の発生状況を分析する分析手段と
を備えることを特徴とするログ分析装置。
【請求項２】
前記分析手段は、既知障害に対応するログ指紋と、前記格納手段に格納された前記ログ指紋とを比較することで、過去において前記既知障害と同種の障害が発生した時間帯を推定することを特徴とする請求項１に記載のログ分析装置。
【請求項３】
前記分析手段は、前記格納手段に格納された前記ログ指紋のうち、ユーザによって指定された期間におけるログ指紋を、前記既知障害に対応するログ指紋とすることを特徴とする請求項２に記載のログ分析装置。
【請求項４】
前記分析手段は、ユーザによって指定されたログから生成された前記ログ指紋を、前記既知障害に対応するログ指紋とすることを特徴とする請求項２に記載のログ分析装置。
【請求項５】
前記分析手段は、（ｉ）前記格納手段に格納された前記ログ指紋を前記対象システムに含まれる機器別又は前記対象システムのタスク別に切り分けて複数の分割部分とし、（ｉｉ）前記複数の分割部分の各々において前記未知のパターンが出現した時間に基づいて、前記未知のパターンに対応する未知障害のトリガとなった前記機器又は前記タスクを特定することを特徴とする請求項１から４のいずれか一項に記載のログ分析装置。
【請求項６】
前記分析手段は、前記複数の分割部分を、前記未知のパターンが出現した時間順にソートすることで、前記未知障害が波及するプロセスを分析することを特徴とする請求項５に記載のログ分析装置。
【請求項７】
対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する生成工程と、
前記生成工程で生成された前記ログ指紋を順次格納する格納工程と、
前記格納工程で格納された前記ログ指紋に基づいて、前記対象システムにおける障害の発生状況を分析する分析工程と
を含むことを特徴とするログ分析方法。
【請求項８】
対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する生成工程と、
前記生成工程で生成された前記ログ指紋を順次格納する格納工程と、
前記格納工程で格納された前記ログ指紋に基づいて、前記対象システムにおける障害の発生状況を分析する分析工程と
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ログデータを用いた分析を実行するログ分析装置、ログ分析方法及びコンピュータプログラムの技術分野に関する。
【背景技術】
【０００２】
この種の装置として、システムから出力されたログを利用することで、システムに発生した既知又は未知の障害を分析するものが知られている。例えば特許文献１では、複数のパターンを比較することで決定された基準パターンを用いて、システムの正常性の確認や障害の発生状況を分析する技術が開示されている。
【０００３】
その他、システムが出力するログを利用する技術として、例えば下記のようなものが知られている。特許文献２では、ログを一定時の時間フレームで区切り、ログメッセージの種類数及び時間フレーム数の形で行列表現する技術が開示されている。特許文献３では、ログ情報に紐付けされているテンプレート情報を読み出して、ログ情報を示すグラフを生成する技術が開示されている。特許文献４では、ログデータから二次元のロググラフを生成する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１６／０７５９１５号
【特許文献２】特開２０１６−１５３９８３号公報
【特許文献３】特開２０１５−０９５０６０号公報
【特許文献４】特開２０１４−１５３７２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ログ分析では、過去の出力パターンから、システム障害の検知や解析等が行われるが、システムの複雑化・大規模化により、詳細な分析を行うことが難しくなっている。例えば、上述した特許文献１から４に記載の技術では、既知障害に関する分析を行う場合に、過去の類似障害の発生時刻を分析・予測することができないという技術的問題点が生ずる。また、未知障害に関する分析を行う場合、障害のトリガとなった機器の特定や、その波及プロセス等を分析することが難しいという技術的問題点もある。
【０００６】
本発明は、上記問題点に鑑みてなされたものであり、システムから出力されるログを利用して、既知障害又は未知障害を好適に分析することが可能なログ分析装置、ログ分析方法及びコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００７】
本発明のログ分析装置の一の態様は、対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する生成手段と、前記生成手段で生成された前記ログ指紋を順次格納する格納手段と、前記格納手段に格納された前記ログ指紋に基づいて、前記対象システムにおける障害の発生状況を分析する分析手段とを備える。
【０００８】
本発明のログ分析方法の一の態様は、対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する生成工程と、前記生成工程で生成された前記ログ指紋を順次格納する格納工程と、前記格納工程で格納された前記ログ指紋に基づいて、前記対象システムにおける障害の発生状況を分析する分析工程とを含む。
【０００９】
本発明のコンピュータプログラムの一の態様は、対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する生成工程と、前記生成工程で生成された前記ログ指紋を順次格納する格納工程と、前記格納工程で格納された前記ログ指紋に基づいて、前記対象システムにおける障害の発生状況を分析する分析工程とをコンピュータに実行させる。
【発明の効果】
【００１０】
上述したログ分析装置、ログ分析方法及びコンピュータプログラムのそれぞれの一の態様によれば、システムから出力されるログを利用して、既知障害又は未知障害を好適に分析することが可能である。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係るログ分析装置のハードウェア構成を示すブロック図である。
【図２】実施形態に係るログ分析装置が備える機能ブロックを示すブロック図である。
【図３】実施形態に係るログ分析装置の具体的な構成を示すブロック図である。
【図４】既知障害の分析動作の流れを示すフローチャートである。
【図５】ログ指紋の一例を示す二次元マップである。
【図６】ログ指紋の照合方法の一例を示す概略図である。
【図７】ログ指紋の照合結果の表示例を示す図である。
【図８】未知障害の分析動作の流れを示すフローチャートである。
【図９】ログ指紋の切り分け方法の一例を示す概略図である。
【図１０】未知のパターンの出現時刻に応じた各タスクのソート処理を示す概略図である。
【図１１】障害状況を可視化した結果の表示例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら、ログ分析装置、ログ分析方法及びコンピュータプログラムの実施形態について説明する。
【００１３】
＜ハードウェア構成＞
はじめに、図１を参照しながら、実施形態に係るログ分析装置のハードウェア構成について説明する。図１は、実施形態に係るログ分析装置のハードウェア構成を示すブロック図である。
【００１４】
図１に示すように、本実施形態に係るログ分析装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３と、記憶装置１４と、入力装置１５と、出力装置１６とを備えている。ＣＰＵ１１と、ＲＡＭ１２と、ＲＯＭ１３と、記憶装置１４と、入力装置１５と、出力装置１６とは、データバス１７を介して接続されている。
【００１５】
ＣＰＵ１１は、コンピュータプログラムを読み込む。例えば、ＣＰＵ１１は、ＲＡＭ１２、ＲＯＭ１３及び記憶装置１４のうちの少なくとも一つが記憶しているコンピュータプログラムを読み込んでもよい。例えば、ＣＰＵ１１は、コンピュータで読み取り可能な記録媒体が記憶しているコンピュータプログラムを、図示しない記録媒体読み取り装置を用いて読み込んでもよい。ＣＰＵ１１は、ネットワークインタフェースを介して、ログ分析装置１の外部に配置される不図示の装置からコンピュータプログラムを取得してもよい（つまり、読み込んでもよい）。ＣＰＵ１１は、読み込んだコンピュータプログラムを実行することで、ＲＡＭ１２、記憶装置１４、入力装置１５及び出力装置１６を制御する。本実施形態では特に、ＣＰＵ１１が読み込んだコンピュータプログラムを実行すると、ＣＰＵ１１内には、ログ分析を行うための機能ブロックが実現される。つまり、ＣＰＵ１１は、ログ分析を実行するためのコントローラとして機能可能である。
【００１６】
ＲＡＭ１２は、ＣＰＵ１１が実行するコンピュータプログラムを一時的に記憶する。ＲＡＭ１２は、ＣＰＵ１１がコンピュータプログラムを実行している際にＣＰＵ１１が一時的に使用するデータを一時的に記憶する。ＲＡＭ１２は、例えば、Ｄ−ＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）であってもよい。
【００１７】
ＲＯＭ１３は、ＣＰＵ１１が実行するコンピュータプログラムを記憶する。ＲＯＭ１３は、その他に固定的なデータを記憶していてもよい。ＲＯＭ１３は、例えば、Ｐ−ＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）であってもよい。
【００１８】
記憶装置１４は、ログ分析装置１が長期的に保存するデータを記憶する。記憶装置１４は、ＣＰＵ１１の一時記憶装置として動作してもよい。記憶装置１４は、例えば、ハードディスク装置、光磁気ディスク装置、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）及びディスクアレイ装置のうちの少なくとも一つを含んでいてもよい。
【００１９】
入力装置１５は、ログ分析装置１のユーザからの入力指示を受け取る装置である。入力装置１５は、例えば、キーボード、マウス及びタッチパネルのうちの少なくとも一つを含んでいてもよい。
【００２０】
出力装置１６は、ログ分析装置１に関する情報を外部に対して出力する装置である。例えば、出力装置１６は、ログ分析装置１に関する情報を表示可能な表示装置であってもよい。
【００２１】
＜具体的な装置構成＞
続いて、図２及び図３を参照しながら、ログ分析装置１の具体的な構成について説明する。図２は、実施形態に係るログ分析装置が備える機能ブロックを示すブロック図である。図３は、実施形態に係るログ分析装置１の具体的な構成を示すブロック図である。
【００２２】
図２に示すように、本実施形態に係るログ分析装置１は、ログ指紋生成部１００と、ログ指紋格納部２００と、ログ分析部３００とを備えて構成されている。
【００２３】
ログ指紋生成部１００は、例えばＣＰＵ１１内で実現される処理ブロックであり、分析対象であるシステムから出力されるログデータをパターン化することで、ログ指紋を生成可能に構成されている。ログ指紋は、既知のパターンと未知のパターンとを区別したものである。ログ指紋の具体例については、後に図５を参照して詳しく説明する。ログ指紋生成部１００で生成されたログ指紋は、ログ指紋格納部２００に出力される構成となっている。ログ指紋生成部１００は、後述する付記における「生成手段」の一具体例である。
【００２４】
ログ指紋格納部２００は、例えば記憶装置１４の一部として構成されており、ログ指紋生成部１００で生成されたログ指紋を格納可能に構成されている。ログ指紋格納部２００に格納されたログ指紋は、適宜読み出し可能とされており、読み出されたログ指紋は、ログ分析部３００に出力される構成となっている。ログ指紋格納部２００は、後述する付記における「格納手段」の一具体例である。
【００２５】
ログ分析部３００は、例えばＣＰＵ１１内で実現される処理ブロックであり、ログ指紋格納部２００から読み出されたログ指紋を用いて、分析対象であるシステムの障害発生状況を分析可能に構成されている。ログ分析部３００による具体的な分析処理については、後に詳しく説明する。ログ分析部３００は、後述する付記における「分析手段」の一具体例である。
【００２６】
図３に示すように、ログ指紋生成部１００は、ログ読込部１１０、前処理部１２０、パターン抽出部１３０、及びパターン格納部１４０を備えている。
【００２７】
ログ読込部１１０は、分析対象となるシステムからログデータを順次取得可能に構成されている。
【００２８】
前処理部１２０は、ログ読込部１１０で取得されたログデータに含まれるログメッセージを、カンマや半角スペース、タブなど任意のデリミタ文字でトークンに分割可能に構成されている。前処理部１２０は、トークンの種別によっては抽象化を行ってもよい。なお、トークンへの分割方法及び抽象化の方法については、既存の技術を適宜採用することができるため、ここでの詳細な説明は省略する。
【００２９】
パターン抽出部１３０は、前処理部１２０でトークンに分割されたログメッセージからパターンを抽出可能に構成されている。なお、具体的なパターン抽出方法については、既存の技術を適宜採用することができるため、ここでの詳細な説明は省略する。パターン抽出部１３０は、抽出したパターンをパターン格納部１４０に格納されたパターンと比較し、未登録のパターンの場合に、そのパターンをパターン格納部１４０に追加（即ち、格納）可能に構成されている。また、パターン抽出部１３０は、抽出したパターン全てについて、検出時刻、パターン番号（即ち、パターンの識別情報）、及び新規登録フラグ情報（即ち、パターン格納部１４０に未登録であったことを示す情報）を紐づけてログ指紋とし、ログ指紋格納部２００に格納可能に構成されている。
【００３０】
パターン格納部１４０は、パターン抽出部１３０で抽出されたパターンを格納（即ち、記憶）可能に構成されている。
【００３１】
ログ分析部３００は、既知ログ分析部３１０、条件格納部３２０、及び未知ログ分析部３３０を備えている。
【００３２】
既知ログ分析部３１０は、過去の既知障害に関する分析を実行可能に構成されている。より具体的には、既知ログ分析部３１０は、既知障害に対応するログ指紋と、過去のログ指紋との照合を行うことで、既知障害に類似する障害が過去に発生した時間帯を推定可能に構成されている。既知ログ分析部３１０による既知障害に関する分析方法については、後に図４等を参照して詳しく説明する。
【００３３】
条件格納部３２０は、既知ログ分析部３１０が用いる閾値等を記憶可能に構成されている。
【００３４】
未知ログ分析部３３０は、未知障害に関する分析を実行可能に構成されている。より具体的には、未知ログ分析部３３０は、未知障害に対応するログ指紋から、障害波及プロセス、及び障害のトリガとなった機器やタスク等の分析を実行可能に構成されている。未知ログ分析部３３０による未知障害に関する分析方法については、後に図８等を参照して詳しく説明する。
【００３５】
結果出力部４００は、既知ログ分析部３１０及び未知ログ分析部３３０における分析結果を、出力装置１６に出力可能に構成されている。分析結果は、例えばディスプレイ等の表示装置に可視化された状態で表示される。
【００３６】
＜既知障害の分析＞
次に、図４を参照しながら、本実施形態に係るログ分析装置１による既知障害の分析動作（具体的には、既知ログ分析部３１０側で実行される動作）について説明する。図４は、既知障害の分析動作の流れを示すフローチャートである。
【００３７】
図４に示すように、既知障害の分析動作時には、まず分析対象となるシステムからログが出力される度に実行されるループ処理が開始される（ステップＳ１１）。
【００３８】
ループ処理が開始されると、まずログ読込部１１０が、ログデータの読込を実行する（ステップＳ１２）。続いて、前処理部１２０が、ログメッセージのトークン分割、更にはトークンの種別によって抽象化を実行する（ステップＳ１３）。続いて、パターン抽出部１３０が、トークンからパターンを抽出する（ステップＳ１４）。このとき、抽出されたパターンがパターン格納部１４０に未登録のものであれば、パターン抽出部１３０は、パターン番号を採番しパターンと共にパターン格納部１４０に追加する。最後に、パターン抽出部１３０は、抽出したパターン全てに関して、検出時刻、パターン番号、及び新規登録フラグ情報（つまり、パターン格納部１４０に未登録であったか否かを示すフラグ情報）を紐づけてログ指紋とし、ログ指紋格納部２００に格納する（ステップＳ１５）。
【００３９】
以上のステップＳ１２からＳ１５の処理は、システムからログが出力される度に繰り返し実行される（ステップＳ１６）。この動作により、ログ指紋格納部２００には、過去のログ指紋が順次蓄積されていく。なお、上述したループ処理は、必ずしもログが出力される度に実行されるものでなくともよく、蓄積されたログを対象として実行されてもよい。
【００４０】
ここで、ログ指紋について、図５を参照して具体的に説明する。図５は、ログ指紋の一例を示す二次元マップである。
【００４１】
図５に示すように、ログ指紋は、各時刻に出現したログのパターンを示すものとして、二次元マップ上に表現することができる。図５に示す例では、各時間帯に出現したログのパターン（具体的には、パターン番号）に応じて、複数のドットが表示されている。なお、新規登録フラグ情報については、ドットの形状や色、濃淡等で表現することができる。
【００４２】
このように可視化（言い換えれば、二次元化）されたログ指紋によれば、どのようなパターンがどの時間帯で出現したのかを視覚的に分かりやすく表現することができる。また、出現したパターンが、既知のパターンであるのか、それとも未知のパターンであるのかについても視覚的に分かりやすく表現することができる。なお、既知のパターンとは、ステップＳ１４において抽出された時点でパターン格納部１４０に既に登録されていたパターン（つまり、新規登録フラグ情報が付随していないパターン）を意味する。未知のパターンとは、ステップＳ１４において抽出された時点でパターン格納部１４０に未登録であったパターン（つまり、新規登録フラグ情報が付随するパターン）を意味する。
【００４３】
図４に戻り、蓄積したログ指紋で分析を開始する場合には、まずユーザが被疑時間帯（言い換えれば、分析対象としたい既知障害が発生している時間帯）を指定する（ステップＳ１７）。これにより、既知ログ分析部３１０は、分析対象となる既知障害に対応するログ指紋を特定することができる。なお、被疑時間帯の指定に代えて、ユーザが別途用意した指定ログ（即ち、分析対象としたい既知障害のログ）を読み込ませてもよい。この場合、指定ログからログ指紋を生成する（即ち、ステップＳ１２からステップＳ１５の処理を実行する）ことで、既知ログ分析部３１０が、分析対象となる既知障害に対応するログ指紋を特定することができる。
【００４４】
既知障害に対応するログ指紋が特定されると、既知ログ分析部３１０は、ログ指紋の照合を実行し（ステップＳ１８）、過去における既知障害に類似する障害の発生日時を推定する（ステップＳ１９）。
【００４５】
ここで、上述したログ指紋の照合による分析（即ち、ステップＳ１７〜Ｓ１９の処理）について、図６及び図７を参照して具体的に説明する。図６は、ログ指紋の照合方法の一例を示す概略図である。図７は、ログ指紋の照合結果の表示例を示す図である。
【００４６】
図６に示すように、分析対象となるログ指紋は、ユーザが被疑時間帯を指定することによって特定される。なお、被疑時間帯の選択幅は任意の値であってよい。その後、既知ログ分析部３１０は、被疑時間帯のログ指紋に類似する箇所を、蓄積された過去のログ指紋（典型的には、ログ指紋格納部２００に格納されている全てのログ指紋）の中からサーチする。
【００４７】
図７に示すように、ログ指紋のサーチ結果は、分析対象となるログ指紋と、過去のログ指紋との類似度として出力される。なお、ログ指紋の類似度の算出方法については、既存の技術を適宜採用することができるため、ここでの詳細な説明は省略する。類似度を算出した後、既知ログ分析部３１０は、類似度が所定閾値（即ち、条件格納部３２０に予め記憶されている閾値）より大きくなっている箇所を抽出する。そして、抽出された時間帯が、類似障害が発生した時間帯であると推定する。なお、所定閾値は、類似障害を判定するための閾値として、予め最適な値（例えば「類似度９０％」）を設定しておけばよい。
【００４８】
以上説明した一連の動作によれば、ログ指紋を利用して、既知障害に類似した障害の発生日時を正確に推定することができる。
【００４９】
＜未知障害の分析＞
次に、図８を参照しながら、本実施形態に係るログ分析装置１による未知障害の分析動作（具体的には、未知ログ分析部３３０側で実行される動作）について説明する。図８は、未知障害の分析動作の流れを示すフローチャートである。
【００５０】
図８に示すように、未知障害の分析動作時には、まず分析対象となるシステムからログが出力される度に実行されるループ処理が開始される（ステップＳ２１）。
【００５１】
ループ処理が開始されると、まずログ読込部１１０が、ログデータの読込を実行する（ステップＳ２２）。続いて、前処理部１２０が、ログメッセージのトークン分割、更にはトークンの種別によって抽象化を実行する（ステップＳ２３）。続いて、パターン抽出部１３０が、トークンからパターンを抽出する（ステップＳ２４）。このとき、抽出されたパターンがパターン格納部１４０に未登録のものであれば、パターン抽出部１３０は、パターン番号を採番しパターンと共にパターン格納部１４０に追加する。最後に、パターン抽出部１３０は、抽出したパターン全てに関して、検出時刻、パターン番号、及び新規登録フラグ情報を紐づけてログ指紋とし、ログ指紋格納部２００に格納する（ステップＳ２５）。
【００５２】
以上のステップＳ２２からＳ２５の処理は、システムからログが出力される度に繰り返し実行される（ステップＳ２６）。この動作により、ログ指紋格納部２００には、過去のログ指紋が順次蓄積されていく。なお、上述したループ処理は、必ずしもログが出力される度に実行されるものでなくともよく、蓄積されたログを対象として実行されてもよい。
【００５３】
未知ログ分析部３３０は、ここまでの処理でログ指紋格納部２００に格納されたログ指紋を利用して、新たに発生した未知障害のトリガとなった機器やタスク、及び障害波及プロセスを分析する。未知ログ分析部３３０は、まずログ指紋格納部２００に格納されたログ指紋を、分析対象となるシステムに含まれる機器別、又は分析対象となるシステムのタスク別に切り分ける処理を実行する（ステップＳ２７）。
【００５４】
ここで、ログ指紋の切り分け動作（即ち、ステップＳ２７の処理）について、図９を参照して具体的に説明する。図９は、ログ指紋の切り分け方法の一例を示す概略図である。
【００５５】
図９に示すように、未知ログ分析部３３０は、未知障害が発生するまでのログ指紋を任意の時間範囲で取り出し、機器別又はタスク別に切り分ける（即ち、分割する）。図９に示す例では、障害のトリガとなったタスクを特定するためタスク別での切り分けを行っており、システムが有するタスクの数だけ分割されたログ指紋（以下、適宜「分割ログ指紋」と称する）が出力されることになる。なお、障害のトリガとなった機器を特定する場合には、機器別の切り分けを行えばよい。この場合、システムに含まれる機器の数だけ分割ログ指紋が出力されることになる。
【００５６】
図８に戻り、タスク又は機器別の切り分けが完了したら、未知ログ分析部３３０が、分割ログ指紋毎に未知のパターンが最初に出現した時刻を検出する。上述したように、ログ指紋は、既知のパターンと未知のパターンとが区別された情報であるため、未知ログ分析部３３０は、未知のパターンが最初に出現した時刻を容易に検出することができる。更に、未知ログ分析部３３０は、未知のパターンの出現時刻が早い順に各タスクをソートする（ステップＳ２８）。そして、ソートした結果を一覧表示することで、障害状況の可視化を行う（ステップＳ２９）。
【００５７】
ここで、未知のパターンを利用した障害発生状況の可視化（即ち、ステップＳ２８〜Ｓ２９の処理）について、図１０及び図１１を参照して具体的に説明する。図１０は、未知のパターンの出現時刻に応じた各タスクのソート処理を示す概略図である。図１１は、障害状況を可視化した結果の表示例を示す図である。
【００５８】
図１０に示すように、タスクＡ、タスクＢ、タスクＣ、及びタスクＤの４つの分割ログ指紋が出力されたケースを考える。ここで、未知のパターンが最初に出現した時刻順で各分割ログ指紋をソートすると、タスクＣ、タスクＡ、タスクＤ、タスクＢの順となる。なお、未知のパターンが最初に出現した時刻は、ログ指紋における新規登録フラグを用いて検出できる。
【００５９】
図１１に示すように、ソートされた各タスクのデータは、障害のトリガとなった機器又はタスク、及び障害波及プロセスを可視化したものとして表示される。図１１に示す結果からは、未知障害が、タスクＣをトリガとして発生したものであり、タスクＣ、タスクＡ、タスクＤ、タスクＢの順で波及していったことが読み取れる。なお、一覧表示された各タスクを選択することで、各タスクの詳細を表示するようにしてもよい。図１１に示す例では、選択されたタスクＡについて、未知障害が最初に出現した時刻に関するデータと共に、具体的なログ指紋（即ち、二次元マップ）が表示されている。
【００６０】
以上説明した一連の動作によれば、ログ指紋を利用して、未知障害のトリガとなった機器又はタスク、及び障害波及プロセスを好適に分析することができる。
【００６１】
＜技術的効果＞
次に、本実施形態に係るログ分析装置１によって得られる技術的効果について説明する。
【００６２】
図１から図１１で説明したように、本実施形態に係るログ分析装置１によれば、ログデータから自動的に生成されるログ指紋を利用して、システムにおける障害の発生状況を好適に分析することができる。具体的には、ログ指紋の類似度を用いた分析により、過去に発生した類似障害の発生時刻を細かく分析・予測することが可能である。また、未知のパターンの出現時刻を用いた分析により、障害のトリガとなった機器やタスクの特定、及び障害の波及プロセスを分析することが可能である。
【００６３】
なお、ログ分析の分野では、ログ分析用のテンプレートやフィルタを用いた分析が知られているが、これらを作成するには高度な専門知識が要求される。また近年では、仮想化・クラウド化によるシステムの複雑化・大規模化に伴い、多種多様なログデータが増え続けており、人手によるログ分析業務は限界を迎えつつある。このような状況において、本実施形態に係るログ指紋を用いた分析は、膨大なログデータを用いて自動的な分析を実行できるため、極めて有益な効果を発揮する。
【００６４】
＜付記＞
以上説明した実施形態に関して、更に以下の付記を開示する。
【００６５】
（付記１）
付記１に記載のログ分析装置は、対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する生成手段と、前記生成手段で生成された前記ログ指紋を順次格納する格納手段と、前記格納手段に格納された前記ログ指紋に基づいて、前記対象システムにおける障害の発生状況を分析する分析手段とを備えることを特徴とするログ分析装置である。
【００６６】
（付記２）
付記２に記載のログ分析装置は、前記分析手段は、既知障害に対応するログ指紋と、前記格納手段に格納された前記ログ指紋とを比較することで、過去において前記既知障害と同種の障害が発生した時間帯を推定することを特徴とする付記１に記載のログ分析装置である。
【００６７】
（付記３）
付記３に記載のログ分析装置は、前記分析手段は、前記格納手段に格納された前記ログ指紋のうち、ユーザによって指定された期間におけるログ指紋を、前記既知障害に対応するログ指紋とすることを特徴とする付記２に記載のログ分析装置。
【００６８】
（付記４）
付記４に記載のログ分析装置は、前記分析手段は、ユーザによって指定されたログから生成された前記ログ指紋を、前記既知障害に対応するログ指紋とすることを特徴とする付記２に記載のログ分析装置である。
【００６９】
（付記５）
付記５に記載のログ分析装置は、前記分析手段は、（ｉ）前記格納手段に格納された前記ログ指紋を前記対象システムに含まれる機器別又は前記対象システムのタスク別に切り分けて複数の分割部分とし、（ｉｉ）前記複数の分割部分の各々において前記未知のパターンが出現した時間に基づいて、前記未知のパターンに対応する未知障害のトリガとなった前記機器又は前記タスクを特定することを特徴とする付記１から４のいずれか一項に記載のログ分析装置。
【００７０】
（付記６）
付記６に記載のログ分析装置は、前記分析手段は、前記複数の分割部分を、前記未知のパターンが出現した時間順にソートすることで、前記未知障害が波及するプロセスを分析することを特徴とする付記５に記載のログ分析装置である。
【００７１】
（付記７）
付記７に記載のログ分析方法は、対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する生成工程と、前記生成工程で生成された前記ログ指紋を順次格納する格納工程と、前記格納工程で格納された前記ログ指紋に基づいて、前記対象システムにおける障害の発生状況を分析する分析工程とを含むことを特徴とするログ分析方法である。
【００７２】
（付記８）
付記８に記載のコンピュータプログラムは、対象システムのログを既知のパターンと未知のパターンとで区別したログ指紋を生成する生成工程と、前記生成工程で生成された前記ログ指紋を順次格納する格納工程と、前記格納工程で格納された前記ログ指紋に基づいて、前記対象システムにおける障害の発生状況を分析する分析工程とをコンピュータに実行させることを特徴とするコンピュータプログラムである。
【００７３】
（付記９）
付記９に記載の記録媒体は、付記８に記載のコンピュータプログラムが記録されていることを特徴とする記録媒体である。
【００７４】
本発明は、請求の範囲及び明細書全体から読み取るこのできる発明の要旨又は思想に反しない範囲で適宜変更可能であり、そのような変更を伴うログ分析装置、ログ分析方法及びコンピュータプログラムもまた本発明の技術思想に含まれる。
【符号の説明】
【００７５】
１  ログ分析装置
１１  ＣＰＵ
１００  ログ指紋生成部
１１０  ログ読込部
１２０  前処理部
１３０  パターン抽出部
１４０  パターン格納部
２００  ログ指紋格納部
３００  ログ分析部
３１０  既知ログ分析部
３２０  条件格納部
３３０  未知ログ分析部
４００  結果出力部
【図１】
2020154935.tif 000003
【図２】
2020154935.tif 000004
【図３】
2020154935.tif 000005
【図４】
2020154935.tif 000006
【図５】
2020154935.tif 000007
【図６】
2020154935.tif 000008
【図７】
2020154935.tif 000009
【図８】
2020154935.tif 000010
【図９】
2020154935.tif 000011
【図１０】
2020154935.tif 000012
【図１１】
2020154935.tif 000013