JP2016024786A - ログ解析装置 - Google Patents

ログ解析装置 Download PDF

Info

Publication number
JP2016024786A
JP2016024786A JP2014151167A JP2014151167A JP2016024786A JP 2016024786 A JP2016024786 A JP 2016024786A JP 2014151167 A JP2014151167 A JP 2014151167A JP 2014151167 A JP2014151167 A JP 2014151167A JP 2016024786 A JP2016024786 A JP 2016024786A
Authority
JP
Japan
Prior art keywords
log
pattern
log pattern
similarity
abnormal event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014151167A
Other languages
English (en)
Inventor
瑛 澤入
Akira Sawairi
瑛 澤入
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Frontech Ltd
Original Assignee
Fujitsu Frontech Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Frontech Ltd filed Critical Fujitsu Frontech Ltd
Priority to JP2014151167A priority Critical patent/JP2016024786A/ja
Publication of JP2016024786A publication Critical patent/JP2016024786A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】複数のアプリケーションのログを解析して、異常事象を検知するログ解析装置を提供する。【解決手段】システムの異常事象を解析するログ解析装置50において、各アプリケーションから出力されるエラーに関連するエラーログを統合するログ統合部52aと、システムの過去の異常事象発生毎に、各アプリケーションから出力されたエラーログをまとめたログパターンと発生した異常事象の内容を対応させてデータベース化したログパターン登録データ150を記憶する記憶部58と、統合ログとログパターン登録データの各ログパターンを比較して、統合ログと前記各ログパターンとの類似度を算出して、ログパターン登録データの中から類似度の高いログパターンを検出するログパターン検出部52bと、検出した類似度の高いログパターンについて、対応する異常事象の内容を通知する通知部52cと、を備える。【選択図】図1

Description

本発明は、システムを構成する複数のアプリケーションのログを解析するログ解析装置に関する。
近年、複数のアプリケーションからなるシステムが、各所で運用されている。例えば、証券通信システムは、通信制御プログラム、ゲートウェイアプリケーション、業務アプリケーション等から構成される。証券通信システムでは、証券取引においてユーザ(機関投資家・証券会社)から受け取った注文情報等を、接続仕様に準拠した通信プロトコルに則って、メッセージ形式変換・通信制御を行うことで、接続先(取引相手となる機関投資家・証券会社)とのやり取りを実現する。
図16は、一般的な証券通信システム1の構成の一部を示す図である。証券通信システム1は、接続先A(機関投資家、証券会社)のPC(personal computer)20、接続先B(機関投資家、証券会社)のPC20、及びユーザ(機関投資家・証券会社)のPC22等と接続される。証券通信システム1には、アプリ―ケーションとして、通信制御プログラム10、ゲートウェイアプリケーション(不図示)、業務アプリケーション14が含まれる。
通信制御プログラム10は、ゲートウェイアプリケーションからの指示に従い、接続先のPC20との接続仕様に準拠した通信プロトコルに則って、メッセージ形式変換・通信制御を行うものである。ゲートウェイアプリケーションは、業務アプリケーション14のインタフェースに従い、業務アプリケーション14との送受信メッセージ解析、及び、通信制御プログラム10への接続/切断指示、注文指示を行うものである。また、業務アプリケーション14は、ユーザのPC22へのインタフェースの提供、ゲートウェイアプリケーションへの注文指示、注文状況の管理を行うものである。
このようなシステムにおいてアプリケーションに異常が発生した場合には、運用担当者が各アプリケーションの保守担当者に調査依頼を出し、受領した調査結果に基づき、運用担当者が原因を特定していた。例えば、通信制御プログラム10から出力されるイベントログ100および業務アプリケーション14から出力されるイベントログ100から、それぞれエラーログ110が検出されたとする。
運用担当者は、モニタで、2つのアプリケーション(通信制御プログラム10及び業務アプリケーション14)で、エラーログ110が発生したことを知る。そして、運用担当者は、どのアプリケーションがシステムエラーの原因であるかを判別できない場合もあり、その場合には、運用担当者は、原因を切り分けるために、それぞれの保守担当者に調査を依頼する。ここでは、通信制御プログラム10および業務アプリケーション14の保守担当者にそれぞれ調査を依頼する。運用担当者は、それぞれの保守担当者からの検討結果を受信して、原因を特定することになるので、原因特定までかなりの時間がかかることになる。
そして、人がログを監視する方法では監視能力に限界があるため、複数のコンピュータのログを取得し、ログ蓄積データに統計分析を行う監視システムが提案されている(特許文献1)
特開2001−14188号公報
複数のアプリケーションから構成されるシステムにおいて、複数のアプリケーションにまたがった異常がシステム内に発生した場合、システムの運用担当者が短時間で原因を特定するのは容易でない。
本願発明は、上記課題に鑑み、複数のアプリケーションのログを解析して、異常事象を検知するログ解析装置を提供することを目的とする。
上記目的を達成するために、複数のアプリケーションが動作するシステムで、各アプリケーションから出力されるログに基づき、前記システムの異常事象を解析するログ解析装置において、前記各アプリケーションから出力されるエラーに関連するエラーログを統合するログ統合部と、前記システムの過去の異常事象発生毎に、前記各アプリケーションから出力された前記エラーログをまとめたログパターンと前記発生した異常事象の内容を対応させてデータベース化したログパターン登録データを記憶する記憶部と、前記統合ログと前記ログパターン登録データの各ログパターンを比較して、前記統合ログと前記各ログパターンとの類似度を算出して、前記ログパターン登録データの中から類似度の高いログパターンを検出するログパターン検出部と、検出した類似度の高いログパターンについて、対応する異常事象の内容を通知する通知部と、を備える。
本発明によれば、複数のアプリケーションのログを解析して、異常事象を検知するログ解析装置を提供することができる。
証券通信システムを含む全体システムの構成を示す図である。 運用担当者から保守担当者へ連絡の流れを示す図である。 異常が発生した場合のログ解析処理の流れを示す図1である。 異常が発生した場合のログ解析処理の流れを示す図2である。 統合ログの具体例1を示す図である。 統合ログの具体例2を示す図である。 ログパターン登録データの構成の具体例を示す図である。 パターンマッチング方式の具体例1を説明するための図である。 パターンマッチング方式の具体例2を説明するための図である。 パターンマッチング処理のメインのフローチャートである。 パターンマッチング処理のサブルーチンである。 次レコード目以降の処理のサブルーチンである。 類似度の通知を説明するサブルーチンである。 第2のパターンマッチング方式の手順を説明するサブルーチンである。 第2のパターンマッチング方式での、比較の具体例1を示す図である。 第2のパターンマッチング方式での、比較の具体例2を示す図である。 一般的な証券通信システム1の構成の一部を示す図である。
以下、図面に従って本発明の実施形態を説明する。本実施形態では、複数のアプリケーションから構成されるシステムとして、証券通信システム1を例にする。
図1は、証券通信システム1にログ解析装置50が接続された全体システム300の構成を示す図である。全体システム300は、証券通信システム1、ログ収集システム40、ログ解析装置50、接続先(接続先Aや接続先B)のPC(personal computer)20やユーザのPC22等から構成される。
証券通信システム1は、証券取引においてユーザから受け取った注文情報等を、接続仕様に準拠した通信プロトコルに則って、メッセージ形式変換・通信制御を行うことで、接続先(取引相手となる機関投資家・証券会社)とのやり取りを実現するものである。
証券通信システム1は、接続先(接続先Aや接続先B)のPC20やユーザのPC22に接続される。証券通信システム1には、種々のアプリケーションが搭載される。本例では、例えば、通信制御プログラム10、ゲートウェイアプリケーション12及び業務アプリケーション14が備えられる。通信制御プログラム10、ゲートウェイアプリケーション12及び業務アプリケーション14の各アプリケーションは、それぞれ専用のサーバあるいはPCで処理が実行される。
通信制御プログラム10は、ゲートウェイアプリケーションからの指示に従い、接続先PC20との接続仕様に準拠した通信プロトコルに則って、メッセージ形式変換・通信制御を行う。
ゲートウェイアプリケーション12は、業務アプリケーション14のインタフェースに従い、業務アプリケーション14との送受信メッセージ解析、及び、通信制御プログラムアプリケーションを使用することにより、通信制御プログラム10への接続/切断指示、注文指示を行う。
業務アプリケーション14は、ユーザPC22へのインタフェースの提供、ゲートウェイアプリケーション12への注文指示、注文状況の管理を行うものである。業務アプリケーション14は、ユーザに応じて複数種備えられ、図1では業務アプリケーションA、業務アプリケーションBとして示す。業務アプリケーションA、業務アプリケーションBに対応して、ゲートウェイアプリケーション12も、ゲートウェイアプリケーションA、ゲートウェイアプリケーションBが備えられる。
証券通信システム1が稼働中は、各アプリケーションから、イベントログ100が出力される。ログ収集システム40は、証券通信システム1の各アプリケーションから出力されたイベントログ100の中から、エラーログ(エラーログ及び警告ログを含む)110を収集するものである。ログ収集システム40は、収集したエラーログ110を、ログ解析装置50に通知する。
ログ解析装置50は、収集したエラーログ110と過去のエラーログパターンを比較して、システムのエラー(異常事象)の原因を推定して、監視端末80に通知するものである。ログ解析装置50は、ログ解析部52及び記憶部58を備える。
ログ解析部52は、CPU54、ログ解析プログラム56を備え、ログ解析プログラム56を読込んだCPU54により実行される機能部である。ログ解析部52は、CPU54により実行される処理として、ログ統合部52a、ログパターン検出部52b、通知部52cを備える。
記憶部58は、証券通信システム1で過去に異常事象(障害)が発生した場合のエラーログとその異常事象の具体的な内容あるいは原因となるアプリケーション(エラーメッセージ)が記載されたログパターン登録データ150を記憶する。ログパターン登録データ150は、証券通信システム1で過去に発生した障害のデータベースである。システムで異常事象が発生する場合には、複数のログが連続して出力されることが多い。そのため、直接の異常事象を示すエラーログとその直前に連続して出力される警告ログとの組み合わせを、ログパターンとして登録しておき、新たに発生した異常事象の原因特定に利用する。エラーログパターンの具体例は、図7で後述する。
ログ統合部52aは、各アプリケーションから出力されるエラーログ110をタイムスタンプ順に統合して、統合ログ120を生成する。ログパターン検出部52bは、統合ログ120とログパターン登録データ150の各エラーログパターン(ログパターンとも略す)を比較して、統合ログとログパターンとの類似度を算出して、ログパターン登録データ150の中から、今回のエラーと類似度の高い過去のログパターンを検出する。
通知部52cは、ログパターン検出部52bで検出された類似度の高いログパターンにつき、記憶部58から対応するエラーメッセージを読み出して、監視端末80に通知する。監視クライアント(運用担当者)は、監視端末80に表示されたメッセージが見て、保守担当者への連絡等の適当な処置を行う。
図2は、ログ解析装置50で類似度の高いログパターンが検出され、運用担当者から保守担当者へ連絡がされる流れを示す図である。ログ解析部52のログ統合部52aは、ログ収集システム40で収集されたエラーログ110から、統合ログ120を生成する。ログ解析部52のログパターン検出部52bが、統合ログ120と記憶部58に記憶されたログパターン登録データ150をマッチングさせて、類似度を算出する。ログ解析部52は、類似度の高い過去のログパターンを、通知部52cを介して、監視端末80(運用担当者)に通知する。運用担当者は、通知された事象の内容(メッセージ)を見て、問題となるアプリケーションの保守担当者に調査・対処の依頼をする。
図3、図4は、証券通信システム1で具体的に異常が発生した場合に行われるログ解析処理の流れを示す図である。例えば、図3に示すように、証券通信システム1の業務アプリケーションA14及び通信制御プログラム10のイベントログ100で、それぞれエラーログ110が検出されたとする。この場合には、図4で示すように、通信制御プログラム10のイベントログ100のエラーログ110と、業務アプリケーションA14のイベントログ100のエラーログ110が、ログ収集システム40によって収集される。
通信制御プログラム10のイベントログ100のエラーログ110と、業務アプリケーションA14のイベントログ100のエラーログ110が、ログ統合部52aによって統合されて、統合ログ120となる。ログ解析部52は、統合ログ120とログパターン登録データ150を比較し類似度を算出して、類似度の高い事象(ログパターン)を運用担当者に通知する。
運用担当者は、通知されたログパターンの内容から、いずれのあるいは両方のアプリケーションの保守担当者に調査依頼をすべきかを判断し、調査依頼すべき保守担当者に調査依頼を行う。調査依頼された保守担当者は、検出されたエラーログ110に関して調査を行い、調査結果を運用担当者に通知する。運用担当者は、保守担当者からの調査結果を確認して、原因を特定して、必要な処置を行う。
このように、対象のシステムにおいて発生する異常事象について、複数アプリケーションから出力されるエラーログを組み合わせて過去のログパターンのマッチングを行うことで、現行での原因特定作業に比べて、原因切分け作業が容易となり、システム復旧までの作業時間を短縮できる。さらに、ログパターンとの類似度が異常の予兆として通知される場合もあるので、運用担当者が異常事象を早期に検出し、事前に対処することも可能となる。これにより、異常事象発生からシステム復旧までの作業時間をより短縮することができる。
次に、ログパターン検出部52bにおいて行われる類似度検出(パターンマッチング)を、具体的に説明する。なお、以下の例では、説明をわかりやすくするため、通信制御プログラム10と業務アプリケーションA14の2つのアプリケーションで、エラーが発生したとする。なお、業務アプリケーションA14を業務アプリケーション14と略す。
図5、図6は、統合ログ120の具体例をそれぞれ示す図である。図5は、第1の統合ログ120aの例である。左が通信制御プログラム10のイベントログ100aで、右が業務アプリケーション14のイベントログ100bである。イベントログ100a、100bは、タイムスタンプ、種別、接続先、コード、メッセージの各情報から構成される。タイムスタンプは、当該ログの発生時刻である。種別は、ログの種別(情報、警告、エラー)を示す。接続先は、証券通信システム1からの接続先を示し、任意の名称が設定される。コードは、各アプリケーションごとに付与される、ログのコード番号である。
通信制御プログラム10のイベントログ100aと業務アプリケーション14のイベントログ100bから、ログ収集システム40によって警告ログとエラーログが収集される。収集された警告ログとエラーログからログ統合部52aによって、統合ログ120(第1の統合ログ120aと呼ぶ)が生成される。
統合ログ120は、タイムスタンプ順に並べられる。統合ログ120は、タイムスタンプ、出力元、種別、接続先、コードの各情報から構成される。また、統合ログ120での各エラーログの番号を、古い順から1、2・・・とする。統合ログ120での各エラーログを、レコードとも呼ぶ。
図6は、第2の統合ログ120bの例である。通信制御プログラム10のイベントログ100aと業務アプリケーション14のイベントログ100bの具体的なログが異なる例である。第2の統合ログ120bも、第1の統合ログ120aと同様に構成される。
図7は、ログパターン登録データ150の構成の具体例を示す図である。前述のように、ログパターン登録データ150は、過去の異常事象(障害)発生時に、各アプリケーションから出力されたエラー(警告を含む)ログを、タイムスタンプ順に配列したものである。図7では、3つのログパターン例(A00001〜A00003)を示す。A00001〜A00003が、それぞれログパターン1,2,3と呼ぶ。
パターンIDは、ログパターンの番号である。ログパターン毎に統合ログ120とのマッチングが行われる。メッセージは、各ログパターンに対応して発生した異常事象の原因や内容で、監視端末80に表示される。
枝番Eは、ログパターンに含まれる各ログの連番である。出力元は、ログを出力したプログラム(通信制御プログラム/業務アプリケーション)を示す。種別はログの種別(警告/エラー)である。接続先は、証券通信システムからの接続先で、任意の名称が設定される。コードは、各アプリケーションごとに付与される、ログのコード番号である。
例えば、ログパターン1は、枝番1の通信制御プログラム10のエラーログ(種別エラー、接続先A、コード210)、枝番2の業務アプリケーション14のエラーログ(種別エラー、接続先A、コード201)、枝番3の通信制御プログラム10のエラーログ(種別エラー、接続先A、コード201)の、計3つのエラーログから構成される。これは、メッセージに示された内容の異常事象が発生した際に、対応して枝番1〜3のエラーログが時間順に検出されたことを示す。ログパターン2は、枝番1〜枝番6の6個のエラーログから構成される。
図8、図9は、パターンマッチング方式の具体例を説明するための図で、第1のパターンマッチング方式の図である。図5で示した第1の統合ログ120aを例にする。まず、比較開始レコードが設定される。最初は、比較開始レコードがレコードの1番に設定される(S=1)。レコード1から、ログパターン登録データ150との比較を開始する。パターンIDの各枝番1の中で、レコード1と一致するログパターンを探し、レコード1と一致する枝番1のログパターンについて、枝番2以降との一致を判断して、類似度Xを算出する。
第1の統合ログ120aのレコード1とログパターン1の枝番1を比較するが不一致であるので、ログパターンをログパターン1からログパターン2に代えて、ログパターン2の枝番1と比較する。図8に示すように、第1の統合ログ120aのレコード1とログパターン2の枝番1は一致する。レコード1とログパターン2の枝番1が一致したので、ログパターン2につき、枝番2〜枝番6とレコード2〜6を比較する。
枝番2とレコード2が一致する。この時点で、枝番1と枝番2がそれぞれ一致しているので、類似度Xは、2/6=33%と算出される。更に、枝番3〜5までが、レコード3〜5と一致するので、5/6=0.83により類似度Xは83%と算出される。そして、枝番6とレコード6は不一致なので、最終的に類似度Xは83%となる。なお、ログパターン1については、類似度Xは0%とする。次に、レコード1とログパターン3以降の枝番1につき、順番に比較を行い、上と同様にして、各ログパターンでの類似度を算出していく。そして、レコード1を比較開始レコードとした場合に、全てのログパターンで、類似度を算出する。レコード1を比較開始レコードとした比較の終了後、比較開始レコードをレコード1からレコード2に代えて、同様に全てのログパターンについて、類似度を算出する。
図9は、パターンマッチング処理の具体例2で、第2の統合ログ120bに対して、比較開始レコードをレコード2とした場合である。図9に示すように、第2の統合ログ120bのレコード2とログパターン1の枝番1が一致したので、ログパターン1の枝番2、枝番3とレコード3〜4を比較する。レコード3と枝番2が一致するので、類似度Xは66%になり、さらに、レコード4と枝番3が一致するので、ログパターン1の類似度Xは100%と算出される。
図10〜図13のフローチャートを用いて、図8,図9で一例を示したパターンマッチング処理手順の流れを説明する。パターンマッチング処理は、主にログ解析部52により実行される。
図10は、パターンマッチング処理のメインのフローチャートである。ログ統合部52aは、統合ログ120を生成する(ステップS10)。ログパターン検出部52bは、統合ログ120での比較開始レコードの番号をSとし、初期値としてS=1とする(ステップS12)。前述のように、比較開始レコードは、ログパターン登録データ150との比較を開始する統合ログ120のレコード番号である。
また、ログ統合部52aは、統合ログ120を追加する(ステップS14)。ログ統合部52aは、ログ収集システム40から新たなエラーログの通知があれば、各アプリケーションで出力された警告ログやエラーログを、タイムスタンプ順に統合ログ120に追加する。ログパターン検出部52bは、記憶部58からログパターン登録データ150を読み出す(ステップS16)。ログパターン検出部52bは、パターンマッチングを実行する(ステップS18)。
図11は、パターンマッチング処理のサブルーチンである。ログパターンの番号をP(1,2・・・、end)とし、ログパターン1から順番に比較していくため、初期値として、P=1を設定する(ステップS30)。最後のログパターンをPendとする。
統合ログの比較を開始するレコードRとして、Sを設定する(ステップS32)。初期値として、R=1とする。
ログパターンPの中で比較される枝番(1,2・・・、end)につき、初期値として、E=1とする(ステップS34)。最後の枝番をEendと表す。
ログパターン検出部52bは、統合ログ120のレコードRとログパターンPの枝番Eを比較する(ステップS36)。最初は、レコード1とログパターン1の枝番1のデータを比較する。
ログパターン検出部52bは、レコードのデータと枝番のデータを比較して、出力元、種別、接続先、コードの全てが一致するかを判断する(ステップS38)。ログパターン検出部52bは、出力元等全てが一致すると判断すると(ステップS38YES)、(1/Eend×100)を類似度X(P)に加算する(ステップS40)。類似度X(P)は、ログパターンPの類似度である。
次に、ログパターン検出部52bは、次レコード目以降のパターンマッチングを行う。枝番1で一致したからである。図12は、次レコード目以降のパターンマッチング処理のサブルーチンである。統合ログ120の比較するレコードR=R+1、ログパターンの比較する枝番E=E+1とする(ステップS60)。統合ログ120のレコードRとログパターンPの枝番Eを比較する(ステップS62)。
ログパターン検出部52bは、出力元、種別、接続先、コードの全てが一致するかを判断する(ステップS64)。ログパターン検出部52bは、全てが一致すると判断すると(ステップS64YES)、(1/Eend×100)を類似度X(P)に加算する(ステップS66)。ログパターン検出部52bは、統合ログ120の比較するレコードR=R+1、ログパターンの比較する枝番E=E+1とする(ステップS68)。
一方、ログパターン検出部52bは、全てが一致はしないと判断すると(ステップS64NO)、ステップS66をジャンプして、ステップS68に進む。
ステップS68に続き、ログパターン検出部52bは、枝番E>Eendであるかを判断し(ステップS70)、枝番E>Eendでないと判断すると(ステップS70NO)、ステップS62に戻り、次のレコードと枝番との比較を行う。ログパターン検出部52bは、枝番E>Eendであると判断すると(ステップS70YES)、このサブルーチンを終了する。これにより、ログパターンPの類似度Xが算出される。図11のステップS44に進む。
ログパターン検出部52bは、比較するログパターンを切換えるため、ログパターンP=P+1とする(ステップS44)。また、ログパターン検出部52bは、ステップS38で全てが一致はしないと判断すると(ステップS38NO)、ステップS40及びステップS42をジャンプして、ステップS44に進む。この場合には、前述したように、このログパターンの類似度X=0とする。
つまり、第1のパターンマッチング方式では、比較開始レコードと枝番1が一致した場合に限り、そのログパターンについて枝番2以降の比較を行い類似度Xを算出し、比較開始レコードと枝番1が不一致の場合には、そのログパターンについては枝番2以降の比較は行わず、類似度X=0とする。
以上説明した第1のパターンマッチング方式によれば、一番古いレコードであるレコード1を基準にして各ログパターンの類似度を算出して、次のレコード2を基準として各ログパターンの類似度を算出するようにして、統合ログ120の開始レコードを1つずつタイムスタンプの新しいものに切換えていくので、パターンマッチングの処理中に、統合ログ120にエラーログが順次追加させていく場合にも、容易に対応できる。
ログパターン検出部52bは、ログパターンP>Pendであるかを判断し(ステップS46)、ログパターンP>Pendでないと判断すると(ステップS46NO)、ステップS32に戻り、次のログパターンでの比較を行う。ログパターン検出部52bは、ログパターンP>Pendであると判断すると(ステップS46YES)、類似度の通知を行う(ステップS48)。
図13は、類似度の通知を説明するサブルーチンである。ログパターン検出部52bは、類似度Xmaxに、X(1)〜X(Pend)の最大値を設定する(ステップS80)。X(1)はログパターン1で算出された類似度で、X(Pend)はログパターンPendで算出された類似度を示し、つまり、Xmaxは、図12のサブルーチンで得られたログパターンの中での最大の類似度である。
ログパターン検出部52bは、類似度Xmax>80%であるかを判断する(ステップS82)。80%は、保守担当者の監視端末80に通知を行うか否かで設定された閾値である。ログパターン検出部52bが、類似度Xmax>80%であると判断すると(ステップS82YES)、通知部52cは、監視端末80に類似度Xmaxに該当する"ログパターン"、"ログパターンに対応するメッセージ"、"類似度"等を通知する(ステップS84)。通知後、ログパターン検出部52bは、図10のステップS20に進む。
なお、監視端末80へ通知する類似度Xの閾値を80%にしたのは、一例である。また、類似度Xが最大となったログパターンを通知するとしたが、これに限られるものではなく、類似度Xが所定以上になったログパターンを全て通知するようにしてもよい。
そして、ログパターン検出部52bは、類似度Xmax>80%ではないと判断すると(ステップS82NO)、監視端末80等への通知は行わず、図10のステップS20に進む。
ログパターン検出部52bは、S=S+1とする(ステップS20)。比較開始レコードSの番号を1つ増やす。図9で説明したように、R=2が比較開始レコードに設定される。ログパターン検出部52bは、パターンマッチング処理の停止指示を受けたかを判断する(ステップS22)。パターンマッチング処理の停止は、運用担当者の指示により実行される。ログパターン検出部52bは、パターンマッチング処理の停止指示を受けていないと判断すると(ステップS22NO)、ステップS14に戻る。
ログパターン検出部52bは、パターンマッチング処理の停止指示を受けたと判断すると(ステップS22YES)、この処理を終了する。なお、ログパターン検出部52bは、統合ログ120の最後のレコードまで、パターンマッチングが終了した場合には、統合ログ120に新たなエラーログが追加されるまで、ステップS16で停止していてもよい。
パターンマッチングの方式は、図12で紹介した方式に限られず、色々な方式が考えられる。他のパターンマッチング方式の1つとして、第2のパターンマッチング方式を、図14、図15を用いて説明する。
図14は、第2のパターンマッチング方式の処理の手順を説明するフローチャートである。なお、統合ログ120の生成やログパターン登録データ150の記憶部58からの読出しは、図10での処理(ステップS10,S14、S16)と同じであるので、説明は省略する。
ログパターン検出部52bは、ログパターンP=1とする(ステップS90)。ログパターン検出部52bは、統合ログの比較開始レコードS=1とする(ステップS92)。ログパターン検出部52bは、全ての枝番と対応するレコードを比較する(ステップS94)。一致の判断は、ステップS38の場合と同様である。
つまり、第1のパターンマッチング方式では、枝番1と比較開始レコードが一致したログパターンに限り、枝番2〜枝番endとレコードの比較を行ったが、第2のパターンマッチング方式では、枝番1と比較開始レコードが不一致のログパターンでも、そのログパターンの全ての枝番と対応するレコードを比較する。
ログパターン検出部52bは、類似度Xを算出する(ステップS96)。類似度Xの算出は、図11での説明と同様である。ログパターン検出部52bは、比較開始レコードを1つ繰り下げるため、S=S+1とする(ステップS98)。ログパターン検出部52bは、比較されるレコードが最後のレコードRendに達したかを判断する(ステップS100)。ログパターン検出部52bは、比較されるレコードが最後のレコードRendに達していないと判断すると(ステップS100NO)、ステップS94に戻る。ログパターン検出部52bは、比較されるレコードが最後のレコードRendに達したと判断すると(ステップS100YES)、監視端末80に最大の類似度等を通知する(ステップS102)。通知内容は、ステップS84と同等でよい。ログパターン検出部52bは、比較したログパターンの中で最大の類似度が、所定の閾値(80%)を超した場合に、通知するようにしてもよい。
ログパターン検出部52bは、比較するログパターンを切換えるために、P=P+1とする(ステップS104)。ログパターン検出部52bは、P>Pendであるかを判断し(ステップS106)、P>Pendでないと判断すると(ステップS106NO)、ステップS92に戻る。Pendは、ログパターンの最後のパターンを示す。ログパターン検出部52bは、P>Pendであると判断すると(ステップS106YES)、第2のパターンマッチング処理を終了する。
第2のパターンマッチング方式による比較の具体例を、図15A、図15Bに示す。ここでは、枝番の番号をE1、E2等とし、レコードの番号をR1、R2等と示す。図15Aの右側に、統合ログ120cを示し、解析される統合ログ120cが、R1〜Rendのレコードから構成されるとする。図15Aは、ログパターン1でのパターンマッチングである。
まず、統合ログ120cから“R1、R2、R3”が比較のレコードとして選択され、ログパターン1の“E1、E2、E3”とそれぞれ比較されて、類似度X1が算出される。次に、統合ログ120cから“R2、R3、R4”が比較のレコードとして選択され、ログパターン1の“E1、E2、E3”と比較されて、類似度X2が算出される。この処理が、Rendになるまで行われる。Rendに達すると、ログパターン1での処理を終了する。類似度X1〜Xend−2の中で、最大の類似度が通知される。
続いて、ログパターンが1から2に切換えられる。図15Bは、ログパターン2でのパターンマッチング処理である。まず、統合ログ120cから“R1〜R6”が比較のレコードとして選択され、ログパターン2の“E1〜E6”とそれぞれ比較されて、類似度Xが算出される。次に、統合ログ120から“R2〜R7”が比較するレコードとして選択され、ログパターン2の“E1〜E6”と比較されて、類似度Xが算出される。以降は、図15Aでの説明と同等で、ログパターン2での処理を終了する。最大の類似度が通知される。
以上のように、第2のパターンマッチング方式では、統合ログ120の各レコードと各枝番を同時に比較するので、第1のパターンマッチング方式では、取りこぼしてしまうログパターン(開始レコードと枝番1が不一致であるが、それ以降での一致性が極めて高いようなケース)でも、見逃すことなく通知することができる。
以上説明した実施形態により、少なくとも以下の効果が奏せられる。
・監視対象のシステムにおいて発生する異常事象について、現行では複数のアプリケーション間にまたがる異常の原因特定には時間がかかっていたが、複数アプリケーションから出力されるログを組み合わせて、過去の異常事象のログパターンとのパターンマッチングを行うことで、原因切分け作業が容易となり、システム復旧までの作業時間を短縮できる。
・さらに、ログパターンとの類似度を異常の予兆として通知することによって、運用担当者による異常事象の早期検出、及び、事前対処が可能となり、さらに、異常発生からシステム復旧までの作業時間を短縮できる。
なお、上記実施形態では、複数アプリケーションのシステム例として、証券通信システムを例にしたが、交通システムや金融システム等他のシステムにも適用可能である。また、上記実施形態では、ログ解析部52をCPU54によるソフトウェア処理により実現されると説明したが、これに限るものではなく、一部あるいは全てをハードウェアで構成してもよい。
また、本発明は上述した実施形態そのままに限定されるものではく、実施段階でのその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素を適宜組み合わせても良い。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。このような、発明の趣旨を逸脱しない範囲内において種々の変形や応用が可能であることはもちろんである。
1 証券通信システム
10 通信制御プログラム
12 ゲートウェイアプリケーション
14 業務アプリケーション
20 接続先のPC
22 ユーザのPC
40 ログ収集システム
50 ログ解析装置
52 ログ解析部
52a ログ統合部
52b ログパターン検出部
52c 通知部
54 CPU
56 ログ解析プログラム
58 記憶部
80 監視端末
100、100a、100b イベントログ
110 エラーログ
120 統合ログ
120a 第1の統合ログ
120b 第2の統合ログ
150 ログパターン登録データ
300 全体システム

Claims (4)

  1. 複数のアプリケーションが動作するシステムで、各アプリケーションから出力されるログに基づき、前記システムの異常事象を解析するログ解析装置において、
    前記各アプリケーションから出力されるエラーに関連するエラーログを統合するログ統合部と、
    前記システムの過去の異常事象発生毎に、前記各アプリケーションから出力された前記エラーログをまとめたログパターンと前記発生した異常事象の内容を対応させてデータベース化したログパターン登録データを記憶する記憶部と、
    前記統合ログと前記ログパターン登録データの各ログパターンを比較して、前記統合ログと前記各ログパターンとの類似度を算出して、前記ログパターン登録データの中から類似度の高いログパターンを検出するログパターン検出部と、
    検出した類似度の高いログパターンについて、対応する異常事象の内容を通知する通知部と、を備える
    ことを特徴とするログ解析装置。
  2. 前記ログ統合部は、前記エラーログをタイムスタンプ順に並べて前記統合ログを生成し、
    前記ログパターン検出部は、タイムスタンプ順に並んだ前記統合ログの複数のエラーログと、タイムスタンプ順に並べられた前記各ログパターンの中の複数のエラーログを、一対一で比較して類似度を算出する
    ことを特徴とする請求項1に記載のログ解析装置。
  3. 複数のアプリケーションが動作するシステムで、各アプリケーションから出力されるログに基づき、前記システムの異常事象を解析するログ解析方法において、
    前記各アプリケーションから出力されるエラーに関連するエラーログを統合する処理と、
    前記システムの過去の異常事象発生毎に、前記各アプリケーションから出力された前記エラーログをまとめたログパターンと前記発生した異常事象の内容を対応させてデータベース化したログパターン登録データを記憶する記憶部から前記ログパターン登録データを読み出す処理と、
    前記統合ログと前記ログパターン登録データの各ログパターンを比較して、前記統合ログと前記各ログパターンとの類似度を算出して、前記ログパターン登録データの中から類似度の高いログパターンを検出する処理と、
    前記検出した類似度の高いログパターンについて、対応する異常事象の内容を通知する処理と、を含む
    ことを特徴とするログ解析方法。
  4. 複数のアプリケーションが動作するシステムで、各アプリケーションから出力されるログに基づき、前記システムの異常事象を解析するログ解析装置のコンピュータで実行されるプログラムにおいて、
    前記各アプリケーションから出力されるエラーに関連するエラーログを統合する処理と、
    前記システムの過去の異常事象発生毎に、前記各アプリケーションから出力された前記エラーログをまとめたログパターンと前記発生した異常事象の内容を対応させてデータベース化したログパターン登録データを記憶する記憶部から前記ログパターン登録データを読み出す処理と、
    前記統合ログと前記ログパターン登録データの各ログパターンを比較して、前記統合ログと前記各ログパターンとの類似度を算出して、前記ログパターン登録データの中から類似度の高いログパターンを検出する処理と、
    前記検出した類似度の高いログパターンについて、対応する異常事象の内容を通知する処理と、を含む
    ことを特徴とするプログラム。
JP2014151167A 2014-07-24 2014-07-24 ログ解析装置 Pending JP2016024786A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014151167A JP2016024786A (ja) 2014-07-24 2014-07-24 ログ解析装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014151167A JP2016024786A (ja) 2014-07-24 2014-07-24 ログ解析装置

Publications (1)

Publication Number Publication Date
JP2016024786A true JP2016024786A (ja) 2016-02-08

Family

ID=55271451

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014151167A Pending JP2016024786A (ja) 2014-07-24 2014-07-24 ログ解析装置

Country Status (1)

Country Link
JP (1) JP2016024786A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106791976A (zh) * 2016-12-07 2017-05-31 康佳集团股份有限公司 一种安卓电视监测和处理已安装应用的方法及系统
JP2017144852A (ja) * 2016-02-17 2017-08-24 日立オートモティブシステムズ株式会社 車両制御装置
CN107870850A (zh) * 2017-08-25 2018-04-03 成都萌想科技有限责任公司 一种高效的互联网应用日志系统
JP2019191645A (ja) * 2018-04-18 2019-10-31 日本電気株式会社 検出支援装置、検出支援方法、およびプログラム
US10503500B2 (en) 2016-09-01 2019-12-10 Hitachi, Ltd. Inquiry response system and inquiry response method
JPWO2021070291A1 (ja) * 2019-10-09 2021-04-15
US11378944B2 (en) 2017-10-10 2022-07-05 Nec Corporation System analysis method, system analysis apparatus, and program
US11823794B2 (en) 2018-06-20 2023-11-21 Koninklijke Philips N.V. Method to analyze log patterns

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017144852A (ja) * 2016-02-17 2017-08-24 日立オートモティブシステムズ株式会社 車両制御装置
WO2017141589A1 (ja) * 2016-02-17 2017-08-24 日立オートモティブシステムズ株式会社 車両制御装置
US10503500B2 (en) 2016-09-01 2019-12-10 Hitachi, Ltd. Inquiry response system and inquiry response method
CN106791976A (zh) * 2016-12-07 2017-05-31 康佳集团股份有限公司 一种安卓电视监测和处理已安装应用的方法及系统
CN107870850A (zh) * 2017-08-25 2018-04-03 成都萌想科技有限责任公司 一种高效的互联网应用日志系统
US11378944B2 (en) 2017-10-10 2022-07-05 Nec Corporation System analysis method, system analysis apparatus, and program
JP2019191645A (ja) * 2018-04-18 2019-10-31 日本電気株式会社 検出支援装置、検出支援方法、およびプログラム
JP7196415B2 (ja) 2018-04-18 2022-12-27 日本電気株式会社 検出支援装置、検出支援方法、およびプログラム
US11823794B2 (en) 2018-06-20 2023-11-21 Koninklijke Philips N.V. Method to analyze log patterns
JPWO2021070291A1 (ja) * 2019-10-09 2021-04-15
WO2021070291A1 (ja) * 2019-10-09 2021-04-15 日本電信電話株式会社 レベル推定装置、レベル推定方法、および、レベル推定プログラム
JP7302668B2 (ja) 2019-10-09 2023-07-04 日本電信電話株式会社 レベル推定装置、レベル推定方法、および、レベル推定プログラム

Similar Documents

Publication Publication Date Title
JP2016024786A (ja) ログ解析装置
US10365946B2 (en) Clustering based process deviation detection
CN111026653B (zh) 异常程序行为检测方法、装置、电子设备和存储介质
KR102068622B1 (ko) 이기종 네트워크 보안시스템을 위한 빅데이타 분석기반의 지능형 장애예측 시스템
US20180357214A1 (en) Log analysis system, log analysis method, and storage medium
CN110088744B (zh) 一种数据库维护方法及其系统
WO2017143936A1 (zh) 网络日志时间对齐方法、装置及主机
CN104718533A (zh) 企业设备的强健硬件故障管理系统、方法及架构
CN112214411B (zh) 一种容灾系统测试方法、装置、设备及存储介质
JP2010049551A (ja) 障害監視装置および障害監視方法
CN103518192B (zh) 大规模服务的实时诊断流水线
CN112966056B (zh) 一种信息处理方法、装置、设备、系统及可读存储介质
CN111327685A (zh) 分布式存储系统数据处理方法、装置及设备和存储介质
KR102150622B1 (ko) 지능형 장비 이상 증상 사전 탐지 시스템 및 방법
JP2019049802A (ja) 障害解析支援装置、インシデント管理システム、障害解析支援方法及びプログラム
CN117499412A (zh) 一种基于高可用链路的集群优化处理方法及其相关设备
JP6512646B1 (ja) 保守管理装置、システム及びプログラム
US9690639B2 (en) Failure detecting apparatus and failure detecting method using patterns indicating occurrences of failures
US9372746B2 (en) Methods for identifying silent failures in an application and devices thereof
JP2014153736A (ja) 障害予兆検出方法、プログラムおよび装置
KR101288535B1 (ko) 통신 시스템 모니터링 방법 및 이를 위한 장치
CN115629919A (zh) 一种快速故障系统切换的方法及装置
US10291700B2 (en) Network optimized scan with dynamic fallback recovery
JP2008198123A (ja) 障害検知システム及び障害検知プログラム
JP2007264907A (ja) 障害通報システム、障害通報方法及び障害通報プログラム