JP2016076071A - ログ管理装置,ログ管理プログラム,及びログ管理方法 - Google Patents

ログ管理装置,ログ管理プログラム,及びログ管理方法 Download PDF

Info

Publication number
JP2016076071A
JP2016076071A JP2014205755A JP2014205755A JP2016076071A JP 2016076071 A JP2016076071 A JP 2016076071A JP 2014205755 A JP2014205755 A JP 2014205755A JP 2014205755 A JP2014205755 A JP 2014205755A JP 2016076071 A JP2016076071 A JP 2016076071A
Authority
JP
Japan
Prior art keywords
log
trace
item group
group
output
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.)
Granted
Application number
JP2014205755A
Other languages
English (en)
Other versions
JP6528381B2 (ja
Inventor
一彰 小澤
Kazuaki Ozawa
一彰 小澤
健一 成田
Kenichi Narita
健一 成田
祐司 青木
Yuji Aoki
祐司 青木
井上 典生
Norio Inoue
典生 井上
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 Ltd
Original Assignee
Fujitsu 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 Ltd filed Critical Fujitsu Ltd
Priority to JP2014205755A priority Critical patent/JP6528381B2/ja
Priority to US14/833,522 priority patent/US9804912B2/en
Publication of JP2016076071A publication Critical patent/JP2016076071A/ja
Application granted granted Critical
Publication of JP6528381B2 publication Critical patent/JP6528381B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0715Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】障害に関連するログ項目を消失させずに適切に出力する方法を提供する。【解決手段】複数の監視対象20からそれぞれ出力される複数のログ41のそれぞれについて、各ログ41に含まれる周期性を有するログ項目群を取得する取得部31と、記憶部4において記憶され管理される複数のログ41のうち、所定の条件に基づき選択された解析対象の第1ログから、取得部が取得した第1ログに含まれる周期性を有するログ項目群とは異なる第1ログ項目群を検出する解析部32と、第1ログに関連する第2ログから第1ログ項目群と同期間に出力された第2ログ項目群を特定する抽出部33と、第1ログから第1ログ項目群を抽出して出力するとともに、第2ログから抽出部33が特定した第2ログ項目群を抽出して出力する出力部と、をそなえる。【選択図】図7

Description

本発明は、ログ管理装置,ログ管理プログラム,及びログ管理方法に関する。
サーバ,PC(Personal Computer),又は種々の端末等の情報処理装置は、監視対象、例えば機器(のファームウェア等)又はアプリケーションが出力するトレース等のログデータを、ファイル(ログファイル)として記憶装置に蓄積することができる。記憶装置に蓄積されたログファイルは、例えば情報処理装置(監視対象)に障害が発生した場合に、情報処理装置の管理者や作業者(以下、これらをまとめて管理者という)による障害の原因調査(特定)に用いられる。
なお、関連する技術として、1以上のログファイルから、条件に合致する1以上のログを抽出する技術も知られている(例えば、特許文献1〜3及び5参照)。また、リングバッファが記憶するログデータのうち受信したトリガが示す障害に関連するログデータを抽出し、抽出したログデータを補助記憶装置に記録する技術も知られている(例えば、特許文献4参照)。
特開2004−227360号公報 特開2008−140248号公報 特開2010−182194号公報 特開2013−206147号公報 特開2008−158634号公報
障害の原因調査にはログファイルに含まれるログデータ(1以上のログ項目;ログ項目群)が有用である。なお、ログ項目は障害の原因調査に用いられるログの1単位である。障害の原因調査に用いられるログデータは、障害の発生した監視対象が出力したログデータの他に、障害の発生した監視対象以外の監視対象が出力したログデータも含まれることが好ましい。障害の発生した監視対象から出力されたログデータを単体で参照するよりも、管理者による原因の調査(特定)を容易且つ正確に行なうためである。
しかし、ログファイルのサイズやファイル数は時間経過とともに増加し記憶装置の記憶容量を圧迫するため、情報処理装置は、過去の全てのログファイルを蓄積することが難しい。このため、例えば情報処理装置は、図20に示すように、一定期間経過後やログファイルの一定容量蓄積後に、古いログファイルを記憶装置から削除する(上書きする)ことがある。なお、図20では、A,B,C,Dの順で記憶装置に蓄積されるログファイルのうち、(2)でログファイルAがログファイルCにより、(3)でログファイルBがログファイルDにより、それぞれ上書きされる例を示す。
従って、情報処理装置は、障害が発生した監視対象から出力されたログデータを含む障害に関連するログデータを、記憶装置の容量の制限が存在する中、削除せずに蓄積しておく(出力する)ことが好ましい。
ところで、情報処理装置において障害が発生した場合、管理者による障害の原因調査は障害発生の直後に行なわれるとは限らず、障害発生から時間が経過してから行なわれる場合がある。この場合、管理者が障害の原因調査を行なおうとしても、障害に関連するログデータが情報処理装置から既に削除され、障害の原因調査を行なうことが困難になり得る。
例えば、図20の例では、ログファイルが(1),(2),(3)の順でサイクリックに上書きされるため、網掛けのログファイルBに障害に関連するログデータが含まれる場合、ログファイルBは(3)のタイミングでログファイルDにより上書きされてしまう。
障害に関連するログデータの消失を防ぐため、例えば上述した関連する技術を用いて、情報処理装置にログファイルから障害に関連するログデータを抽出させ、抽出させたログデータを記憶装置に格納させることも考えられる。しかし、以下に例示する場合には、情報処理装置に適切なログデータを抽出・格納(出力)させることが困難となり得る。
・障害に関連するログデータに、情報処理装置が障害と認識する文字列(“error”や“warning”等)が含まれてない場合。
・正常な場合に出力されないログデータが出力され、情報処理装置が当該ログデータを障害と認識するための判断材料を有していない場合。
・正常な場合に出力されるログデータが欠落した場合。
また、障害に関連しないログデータに“error”や“warning”等の文字列が含まれる場合、正常なログデータであるにもかかわらず、情報処理装置は当該ログデータを障害に関連するログデータと判断してしまう場合もある。
1つの側面では、本発明は、障害に関連する適切なログ項目を出力することを目的とする。
1つの態様では、本件のログ管理装置は、取得部,検出部,特定部,及び出力部をそなえる。取得部は、複数の監視対象からそれぞれ出力される複数のログのそれぞれについて、各ログに含まれる周期性を有するログ項目群を取得する。また、検出部は、記憶部において記憶され管理される前記複数のログのうち、所定の条件に基づき選択された解析対象の第1ログから、前記取得部が取得した当該第1ログに含まれる周期性を有するログ項目群とは異なる第1ログ項目群を検出する。さらに、特定部は、前記第1ログに関連する第2ログから前記第1ログ項目群と同期間に出力された第2ログ項目群を特定する。また、出力部は、前記第1ログから前記第1ログ項目群を抽出して出力するとともに、前記第2ログから前記特定部が特定した前記第2ログ項目群を抽出して出力する。
1つの側面では、障害に関連する適切なログ項目を出力することができる。
情報処理装置が実行するプロセスによるログ管理の一例を示す図である。 トレースの出力例を示す図である。 トレースの出力例を示す図である。 協調して動作する複数のプロセスから出力されたトレースの一例を示す図である。 図4に示すプロセスのソースの構成例を示す図である。 一実施形態の一例としての情報処理装置のハードウェア構成例を示す図である。 一実施形態の一例としての情報処理装置の機能構成例を示す図である。 トレースファイルの一例を示す図である。 正常トレース取得部の処理の一例を説明する図である。 トレース解析部の処理の一例を説明する図である。 解析対象のトレースファイルの一例を示す図である。 関連トレース抽出部の処理の一例を説明する図である。 図12に示すプロセスのソースの構成例を示す図である。 関連トレース抽出部による関連トレースの抽出範囲の一例を説明する図である。 関連トレース抽出部による関連トレースの抽出範囲の第1の例を説明する図である。 関連トレース抽出部による関連トレースの抽出範囲の第2の例を説明する図である。 一実施形態に係る情報処理装置の一連の処理の例を説明する図である。 一実施形態に係る情報処理装置の一連の処理の例を説明する図である。 一実施形態に係る情報処理装置の処理の一例を説明するフローチャートである。 情報処理装置においてログファイルが上書きされる例を示す図である。
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。なお、以下の実施形態で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
〔1〕対比例について
はじめに、図1〜図4を参照しながら、一実施形態の対比例について説明する。図1に例示するように、情報処理装置100は、図示しないCPU(Central Processing Unit)等のプロセッサが実行するプログラムにおいて、プロセス110−1及び110−2を実行する。
管理者による障害(トラブル)の調査を短期間で行なうには、例えば監視対象等のソースの実行履歴が分かるように、情報処理装置100が多くのログデータ、例えばトレース情報(ソース通過箇所やパラメータ)を細分化して出力することが好ましい。しかし、情報処理装置100の記憶装置の容量制限下では、多くのログデータを出力されても記憶装置に蓄積できるファイル数が限られるため、障害が発生した際に原因調査に有効な資料が残っているとは限らない。また、容量制限を設けず或いは無視して記憶装置に多くのログデータを蓄積させた場合、記憶装置の容量不足に起因して情報処理装置100の性能劣化も発生し得る。
そこで、図1に例示するように、プロセス110−1が、トレースファイル(ログファイル)を削除するタイミングで削除対象のファイルを解析し、削除対象から障害に関連する特定のトレース(ログデータ)だけを除外する処理を行なうことが考えられる((1)参照)。
また、プロセス110−1における上記(1)の処理に加えて、プロセス110−1から出力された特定のトレースに関連する、他のプロセス110−2から出力された関連トレース(障害に関連するログデータ)を保存することも考えられる。例えば、プロセス110−1で特定のトレースが出力されたときに、プロセス110−1がプロセス110−2への通信処理を行ないイベントを通知する((2−1)参照)。そして、プロセス110−2は、通信処理をトリガに、出力中のトレースファイルからプロセス110−1の特定のトレースに関連する関連トレースを確認し((2−2)参照)、当該関連トレースをプロセス110−2の削除対象のトレースファイルから除外する(削除せずに残す)。
しかし、上記(1)の処理を行なう場合、プロセス110−1では削除対象に対して解析処理が行なわれるため、プロセス110−1の本来の処理に遅延等の影響が及ぶことになる。また、さらに上記(2−1)及び(2−2)の処理を行なう場合、プロセス110−2は関連トレースを確認し、削除対象から除外するための印を付ける(保存対象と認識する)処理を行なうため、プロセス110−2の処理を広範囲に修正することになる。これにより、プロセス110−2の本来の処理の実行時間が増加し遅延等の影響が及ぶことになる。
一例として、プロセス110−1及び110−2で一度に削除されるトレースファイルは、それぞれ最大10Mバイトであるとする。この場合、プロセス110−1及び110−2が削除対象から除外する特定のトレースを検出するためには、10Mバイトのトレースファイルを1行ずつ解析することになる。この解析処理をプロセス110−1及び110−2の各々で行なう場合、解析処理に時間がかかりプロセス110−1及び110−2の処理に影響が生じる。
トレースファイルの最大サイズは情報処理装置100が実行するプログラムにより異なるため、数Gバイトのトレースファイルについて1行ごとの解析が行なわれる場合もあり得る。この場合、ファイルサイズが大きいためRAM(Random Access Memory)等のメモリにトレースファイルを展開して解析処理を行なうことが困難となり得る。従って、情報処理装置100は、メモリよりも低速なHDD(Hard Disk Drive)等の記憶装置にトレースファイルを展開するため、記憶装置へのI/O(Input/Output)が発生し、情報処理装置100(システム)の性能低下等の悪影響を与え得る。
また、プロセス110−1又は110−2において、特定のトレース又は関連トレース(障害に関連するログデータ)を保存する場合にも、以下の場合には、情報処理装置100に適切なトレースを抽出・格納(出力)させることが困難となり得る。
(a)正常なトレースであるが、トレースに情報処理装置100が障害と認識する文字列が含まれる場合。
図2に例示するように、プロセス110−1又は110−2においてスレッドが立ち上がった(生成された)場合、スレッド立ち上げ後のトレースには、正常な場合でも“ERROR”や“WARNING”が含まれる。この場合、情報処理装置100は図2に示す“ERROR”や“WARNING”が含まれるトレースを特定のトレース又は関連トレースと判断し、当該トレースを抽出・格納してしまう。
(b)異常なトレースであるが、情報処理装置100が当該トレースを障害と認識しない場合。
図3に例示するように、“ERROR”や“WARNING”が含まれていないトレースでも、“After APA_CO_02_protocol_2008_osname_”の行のように、スレッドがOS(Operating System)種別を誤判断したことを表すトレースが出力される場合もあり得る。この場合、情報処理装置100は、これらのトレースを特定のトレース又は関連トレースとは判断せず、当該トレースを抽出・格納することが難しい。このような場面は、以下の場合に生じ得る。
・トレースに情報処理装置100が障害と認識する文字列(“ERROR”や“WARNING”等)が含まれない場合。
・正常な場合に出力されないトレースが出力され、情報処理装置100が当該トレースを障害と認識するための判断材料を有していない場合(情報処理装置100が事前に異常であるトレースを認識していない場合)。
(c)トレースに欠落部分がある場合。
図4に例示するように、複数のプロセス110−1〜110−3が協調して動作する場合、プロセス110−2において“trace xxxx 2”のトレース自体が出力されていない場合、情報処理装置100は当該トレースの欠落部分を認識することが難しい。例えば図1に示すプロセス110−1の確認処理においても、プロセス110−1がトレースの欠落を検出することが困難であり、プロセス110−2においてもプロセス110−1からのトリガがないため、関連トレースの確認を行なうことが困難である。この場合、管理者は、欠落したトレースに関連する障害の被疑箇所や影響範囲の絞り込みを行なうことが難しい。
ここで、上記(c)について、図5に示すようにプロセス110−1〜110−3が協調動作を行ない1つの機能を提供する場合において、仮に情報処理装置100がトレースの欠落部分を特定できた場合を考える。なお、図5において、プロセス110−1〜110−3は、それぞれ共通ソース120−1及び120−2を使用する。共通ソース120−1及び120−2は、各プロセス110−1〜110−3をコンパイルする際に用いられる共通関数である。
各プロセス110−1〜110−3のトレースは、共通ソース120−1及び120−2(共通関数)を用いて出力される。共通ソース120−1及び120−2からトレースが出力されない場合、管理者は、障害の原因調査において、該当時刻に他のプロセス110−1〜110−3がどのような動作であったかを調査する必要がある。このため、情報処理装置100は、例えばプロセス110−2の正常時に出力されるトレース“trace xxxx Y”が出力されていないことを検知しても、管理者は共通ソース120−1及び120−2のどこに障害があるかを特定することや調査範囲を絞り込むことが困難である。
以上のように、図1に示す例では、情報処理装置100は、プロセス110−1及び110−2の本来の処理の実行時間(性能)に影響を与えずに、特定のトレース及び関連トレースを抽出・格納(出力)することが困難である。また、情報処理装置100は、障害の原因調査に有用な(適切な)トレースを抽出・格納することが難しい。
〔2〕一実施形態
〔2−1〕情報処理装置の構成例
そこで、一実施形態に係る情報処理装置(ログ管理装置)は、後述する処理により、障害に関連する適切なログ項目を出力することを可能とする。以下、一実施形態に係る情報処理装置について説明する。図6は、一実施形態に係る情報処理装置1のハードウェア構成例を示す図であり、図7は、一実施形態に係る情報処理装置1の機能構成例を示す図である。
情報処理装置1は、ファームウェア,OS,OS上で動作するアプリケーション等の各種プログラムをCPU等のプロセッサにより実行する装置である。そして、本実施形態では、情報処理装置1は、ファームウェア,OS,アプリケーション,情報処理装置1内の機器,情報処理装置1に接続された他の情報処理装置等を監視対象として、監視対象から出力されるログの管理を行なうことができる。
なお、情報処理装置1としては、例えばサーバやPC等のコンピュータのほか、スマートフォン,携帯電話,タブレット,PDA(Personal Digital Assistants)等の端末、腕時計や眼鏡等のウェアラブルデバイス等、種々の装置が挙げられる。
以下、情報処理装置1が、OS上で動作するアプリケーションを監視対象として、アプリケーションから出力されるログを管理するものとして説明する。
(ハードウェア構成例)
一例として、情報処理装置1は、図6に示すように、CPU1a,メモリ1b,記憶部1c,インタフェース部1d,入出力部1e,及び読取部1fをそなえることができる。CPU1aは、種々の制御や演算を行なう演算処理装置(プロセッサ)の一例である。CPU1aは、対応する各ブロック1b〜1fとそれぞれ接続され、メモリ1b,記憶部1c,記録媒体1g,又は図示しないROM(Read Only Memory)等に格納されたプログラムを実行することにより、種々の機能を実現することができる。
メモリ1bは、種々のデータやプログラムを格納する記憶装置である。CPU1aは、プログラムを実行する際に、メモリ1bにデータやプログラムを格納し展開する。なお、メモリ1bとしては、例えばRAM等の揮発性メモリが挙げられる。
記憶部1cは、種々のデータやプログラム等を格納するハードウェアである。記憶部1cとしては、例えばHDD等の磁気ディスク装置,SSD(Solid State Drive)等の半導体ドライブ装置,フラッシュメモリやROM等の不揮発性メモリ等の各種装置が挙げられる。
なお、メモリ1b又は記憶部1c(図6の例では記憶部1c)は、情報処理装置1の各種機能の全部もしくは一部を実現するログ管理プログラム1,トレース41,正常トレース情報42,及び関連トレース群43(図7参照)等を格納することができる。
インタフェース部1dは、有線又は無線による、ネットワークや他の情報処理装置等との間の接続及び通信の制御等を行なう通信インタフェースである。インタフェース部1dとしては、例えば、LAN(Local Area Network),ファイバチャネル(Fibre Channel;FC),インフィニバンド(InfiniBand)等に準拠したアダプタが挙げられる。また、インタフェース部1dの他の例としては、USB(Universal Serial Bus),BLUETOOTH(登録商標),PCI(Peripheral Component Interconnect),PCIe(PCI Express)等に準拠したアダプタが挙げられる。例えば、CPU1aは、インタフェース部1dを介してネットワークから取得したログ管理プログラム3を記憶部1cに格納してもよい。また、CPU1aは、インタフェース部1dを介して監視対象としての他の情報処理装置等とアクセス可能に接続されてもよい。
入出力部1eは、タッチパネル,音声操作のためのマイク,マウス,及びキーボード等の入力装置(操作部),並びにディスプレイ,スピーカー,及びプリンタ等の出力装置(表示部)の少なくとも一方を含むことができる。例えば、入力装置はユーザや管理者等による情報処理装置1の各種操作やデータの入力等の作業に用いられてよく、出力装置は各種通知や処理結果等の出力に用いられてよい。
読取部1fは、コンピュータ読取可能な記録媒体1gに記録されたデータやプログラムを読み出す装置である。記録媒体1gにはログ管理プログラム3が格納されてもよい。
例えば、CPU1aは、記憶部1cに格納されたログ管理プログラム3をメモリ1b等の記憶装置に展開して実行することにより、ログ管理装置(図7参照)の機能を実現することができる。
なお、記録媒体1gとしては、例えばフレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク等の光ディスクや、USB(Universal Serial Bus)メモリやSDカード等のフラッシュメモリが挙げられる。なお、CDとしては、CD−ROM、CD−R(CD-Recordable)、CD−RW(CD-Rewritable)等が挙げられる。また、DVDとしては、DVD−ROM、DVD−RAM、DVD−R、DVD−RW、DVD+R、DVD+RW等が挙げられる。
上述した各ブロック1a〜1f間はそれぞれバスで相互に通信可能に接続される。また、情報処理装置1の上述したハードウェア構成は例示である。従って、情報処理装置1内でのハードウェアの増減(例えば任意のブロックの追加や省略),分割,任意の組み合わせでの統合,バスの追加又は省略等は適宜行なわれてもよい。例えば、情報処理装置1が端末やウェアラブルデバイス等の小型の装置である場合、メモリ1b及び記憶部1cを統合してもよいし、インタフェース部1d,入出力部1e,及び読取部1fの少なくとも1つを省略してもよい。
(機能構成例)
上述の如く構成された情報処理装置1は、機能構成として、図7に示すように、例示的にプロセス実行部2及び保持部4をそなえることができる。プロセス実行部2は、情報処理装置1における種々のプログラム(処理)を実行するものであり、複数のプロセス20と、プロセス20が出力したログを管理するログ管理プロセス30とをそなえることができる。
プロセス20は、情報処理装置1により実行されるプログラム(処理)の実行単位である。プロセス20としては、運用管理を行なうプロセス、一例としてアプリケーションの生存を確認するような監視プロセス(デーモンプロセス)が挙げられる。この場合、プロセス実行部2は、情報処理装置1又は他の装置の運用管理を行なう管理部であるといえる。なお、プロセス20は運用管理を行なうプロセスに限定されるものではなく、種々のプロセスやモジュールであってよい。
各プロセス20は、自身の処理に関する種々の情報をログデータとして出力することができる。本実施形態において、プロセス20は、ログデータの一例として、1以上のファイル形式でトレースファイル(ログファイル,ログ)41を出力し、保持部4に記憶するものとする。以下の説明において、特定のプロセス20を表す場合には、プロセス20−1,20−2,・・・のように符号20の後にハイフン及び番号を付すこととする。
ログ管理プロセス30は、複数のプロセス20の各々から出力されるログ(トレースファイル41)を管理し、当該ログからログ項目を抽出・出力するログ管理部の一例である。ログ管理プロセス30は、後述する処理により、トレースファイル41から障害に関連するログデータの一例として1以上の関連トレース群43を抽出し出力する。なお、障害に関連するログデータとしては、例えば、障害が監視対象の故障,バグ,高負荷等に起因するものか使用者による仕様の誤認であるのかの調査や、障害が監視対象の故障等に起因する場合の故障原因の調査等における判断に用いられるログデータが挙げられる。ログ管理プロセス30の詳細な説明は後述する。
保持部4は、複数の監視対象の各々から出力されるログを記憶する記憶部の一例であり、図7に示すように、例示的にトレースファイル41,正常トレース情報42,及び関連トレース群43を保持(記憶)することができる。なお、保持部4は、図6に示すメモリ1b又は記憶部1c等の記憶装置によって実現することができる。以下の説明において、特定のトレースファイル41を表す場合には、トレースファイル41−1,41−2,・・・のように符号41の後にハイフン及び番号を付すこととし、正常トレース情報42及び関連トレース群43についても同様とする。
トレースファイル41には、例えばプロセス20ごと又はプロセス20のスレッドごとに、プロセス20又はスレッドが立ち上がって(生成されて)から現在までに出力されたトレースが設定され得る。トレースファイル41には、一例として、図8に示すように、プロセス20又はスレッド(この場合スレッド)の起動を示すトレースと、繰り返し継続して出力されるトレースとが含まれ得る。なお、以下、1サイクル分のトレースをトレース群という。
ここで、トレースファイル(ログ)には1以上のログ項目が含まれる。ログ項目は、例えばトレースの1行分や、意味を持つ最小単位の1文等、障害の原因調査に用いられるログの1単位とすることができる。図8の例では、1行のトレースがログ項目であり、1サイクルのトレース群がログ項目群であるといえる。
なお、保持部4に蓄積されたトレースファイル41は、情報処理装置1の記憶容量の確保の観点から、例えば古いトレースファイル41から順にサイクリックに削除される。トレースファイル41が削除されるタイミングはプロセス20ごとに異なり、各プロセス20は、例えば所定期間経過後又は出力中のトレースファイル41が所定サイズに達した場合、古いトレースファイル41を削除して次の出力先のトレースファイル41を生成することができる。或いは、各プロセス20は、例えば出力先のトレースファイル41を1つとして、当該トレースファイル41が所定サイズに達しないように当該トレースファイル41内の古いトレース群から順に削除してもよい。
正常トレース情報42及び関連トレース群43の説明はログ管理プロセス30の説明において行なう。
〔2−2〕ログ管理プロセスの構成例
次に、ログ管理プロセス30の機能構成例について説明する。ログ管理プロセス30は、図7に示すように、例示的に正常トレース取得部31,トレース解析部32,及び関連トレース群抽出部33をそなえることができる。
正常トレース取得部31は、複数のトレースファイル41から、トレースファイル41ごとに正常に処理が実行されたときの1サイクル分のトレース群(ログ項目群)を取得し、取得したトレース群を正常トレース情報42として保持部4に格納する。
例えば情報処理装置1(プロセス実行部2)は、監視対象のアプリケーションがインストールされたときに、新たに追加されたモジュールを互いに関連性のあるモジュールと判定しておく。そして、情報処理装置1は、関連性のあるモジュールがトレースファイル41を出力した場合、システム(アプリケーション)の起動から終了までの間に出力されたトレースファイル41を保持部4に蓄積する。このとき、正常トレース取得部31は、図9に例示するように、各モジュール(プロセス20)について、正常時のトレース群を抽出して正常トレース情報42として保持部4に保存することができる。
また、アプリケーションに対して修正パッチが適用されてモジュールが置き換わった場合やシステム構成が変更となった場合でも、システム上の同一パスに格納される同一名のモジュールは、旧モジュールと同様の動作になると推測される。しかし、この場合、新旧モジュール間でトレースの文字列が変化する可能性がある。
そこで、正常トレース取得部31は、システム上のパス,モジュール(プロセス20),タイムスタンプの情報と、正常時のトレース群とを関連付けて管理しておくことが好ましい(図9の正常トレース管理情報42a参照)。これにより、システム構成が変更となった場合には、正常トレース取得部31は、正常トレース管理情報42aに基づき、正常時のトレース群を再度抽出して正常トレース情報42として保持部4に保存することができる。
なお、1サイクルのトレース群は、以下のように決定することができる。例えば、正常トレース取得部31は、運用管理等を行なうプロセス20が定期的に実行する、コマンド実行,スレッド作成,ファイルアクセス等の処理を監視する。そして、正常トレース取得部31は、プロセス20の定期的な動作(処理)と、その動作のタイミングに出力されるトレースとをマッチングさせることで、1サイクルが開始されるトリガ(サイクルの最初(始期)のトレース)を特定する。正常トレース取得部31は、上記の処理を繰り返すことで、1サイクルが開始されるトリガについて精度を向上させることができる。
以上のように、正常トレース取得部31は、複数の監視対象の各々から出力されるログごとに、ログに含まれる周期性を有するログ項目群を取得する取得部の一例であるといえる。
トレース解析部32は、保持部4に蓄積されたトレースファイル41を解析し、トレースファイル41内の特異なトレースを検出する。
上述のように、トレースファイル41には、図8において“1サイクル”として示すように、プロセス20の処理が正常に実行されていれば、同一(或いは時刻等の可変な文字列を除き実質的に同一)の1サイクル分のトレース群が周期的に記録される。
そこで、トレース解析部32は、プロセス20から出力されたトレースファイル41と、正常時のトレース群とを比較し、両者の差異を判定することで、正常時のトレース群とは異なる1サイクル分のトレース群(ログ項目群)を検出するのである。トレース解析部32により検出されるトレース群には、障害に関連し得る特異なトレースが含まれる。
例えばトレース解析部32は、図10に示すように、プロセス20からの解析用トレース群(トレースファイル41)と、当該プロセス20の正常時のトレース群(正常時トレース情報42)とを比較し、それぞれ同一又は実質的に同一であるか否かを判断する。図10の例では、トレース解析部32は、解析用トレース群に“トレース2”,“トレース5”,及び“トレース6”が含まれていないと判断し、解析対象のトレースファイル41から当該解析用トレース群を特異なトレースを含むトレース群(以下、特異なトレース群という)として検出する。
トレース解析部32は、トレースファイル41と正常時トレース情報42との比較において、トレースの文字列や、各トレース(図10の例ではトレース1〜トレース6)の出力される時間間隔等を評価することができる。トレースの文字列の評価としては、例えばいずれかのトレースにのみ存在する行又は文字列がある,両トレースの文字列が異なる等の評価が挙げられる。時間間隔の評価としては、トレースファイル41の各トレースの出力される時間間隔が、対応する正常トレース情報42での時間間隔よりも所定の割合或いは所定の時間以上空いているか否か等の評価が挙げられる。
なお、トレース解析部32は、特異なトレース群を検出すると、当該トレース群を示す情報を関連トレース群抽出部33に通知する。この通知の手法としては、検出したトレース群の保持部4での格納位置(アドレス等)を通知する,検出したトレース群に印を付け(例えば識別可能な文字列を設定し)、印を付けたトレースファイル41の情報を通知する等、種々の手法が挙げられる。
ここで、トレース解析部32は、解析用トレース群として、解析対象のトレースファイル41から1サイクルのトレース群を抽出して用いることができる。解析対象のトレースファイル41に複数のサイクルが含まれる場合には、トレース解析部32は、当該トレースファイル41から1サイクルずつトレース群を抽出し、抽出したサイクルごとに、正常トレース情報42に基づく解析を行えばよい。
一例として、図11に示すように、解析対象のトレースファイル41に複数のサイクルが含まれる場合、トレース解析部32は、1サイクルずつトレース群を抽出する。図11の例では、紙面上から1番目〜3番目のサイクル(解析用トレース群)は正常トレース情報42と同一であるが、4番目のサイクル(解析用トレース群)は太枠で囲んだトレース(1行)が正常トレース情報42には含まれない。この場合、トレース解析部32は、4番目のサイクルを特異なトレース群と検出する。
ところで、トレース解析部32は、保持部4が保持する複数のトレースファイル41のうち、所定の条件に基づき選択されたトレースファイル41を解析対象のトレースファイル41とする。既述のように、トレースファイル41が削除されるタイミングはトレースファイル41ごとに異なる。本実施形態では、トレース解析部32は、トレースファイル41がサイクリックに削除されるタイミングで、プロセス20により削除対象として選択されたトレースファイル41を解析することができる。
上述した対比例としての情報処理装置100は、トレースファイルをサイクリックに出力し、古いトレースファイルを削除するため、障害に関連するトレースも削除されてしまう場合がある。これに対し、トレース解析部32は、削除対象のトレースファイル41を解析対象とするため、トレースファイル41が削除される前に障害に関連するトレース群を確実に検出することができる。
トレース解析部32によれば、トレースファイル41の解析を行なう際に正常トレースから外れた文字列を含むトレース群、つまりプロセス20が通常とは異なるルート(処理)を実行したときのトレース群を特異なトレース群と判別することができる。正常時とは異なるトレースは障害の被擬箇所を示す又は関連する可能性が高いため、障害とは判明していない事象においても、管理者がこのように検出されたトレースを調査することは効果的である。また、管理者は、障害に関する資料の調査時に、繰り返し出力される正常時の同一のトレースを確認せずに済み、効率よく資料の調査を行なえるため、障害の復旧時間を短縮することができる。
さらに、トレース解析部32によれば、対比例において説明した(a)〜(c)の状況のように、障害のトレースについて事前に認識できていない場合でも、障害に関連する適切なトレースを確実に検出することができる。例えば、トレース解析部32は、潜在的な新規障害が発生したときにだけ出力されるトレースや、トレースの文字列が正常(例えば“Normal End”等)と出力されるトレースについても検出することができる。従って、事前に定義された重要度(例えば“ERROR”や“WARNING”等)等の固定文字列では判定することが困難なトレースを採取することが可能となる。
以上のように、トレース解析部32は、保持部4において記憶され管理される複数のトレースファイル41のうち、所定の条件に基づき選択された解析対象の第1ログから、取得部が取得した当該第1ログに含まれる周期性を有するログ項目群とは異なる第1ログ項目群を検出する検出部の一例であるといえる。
関連トレース群抽出部33は、トレース解析部32から特異なトレース群の情報を通知されると、当該特異なトレース群をトレースファイル41から抽出し、関連トレース群43として保持部4に保存する。すなわち、上述のように、トレース解析部32により解析処理が行なわれる対象は削除対象となったトレースファイル41である。従って、関連トレース群抽出部33は、トレース解析部32から通知された特異なトレース群を削除対象から除外することで、当該トレース群を関連トレース群43として保持部4に退避させることができる。
また、関連トレース群抽出部33は、保持部4の複数のトレースファイル41から、特異なトレース群に関連するトレース群を特定(識別)する。なお、関連トレース群抽出部33は、特定したトレース群について、保持部4での格納位置(アドレス等)を記憶する、或いは特定したトレース群に印を付け(例えば識別可能な文字列を設定し)、印を付けたトレースファイル41の情報を記憶することができる。
さらに、関連トレース群抽出部33は、特定した各トレース群をトレースファイル41から抽出して、関連トレース群43として保持部4に保存する。特定した各トレース群が保存されるタイミングとしては、例えば、特定したトレース群を含むトレースファイル41が削除対象になった場合が挙げられる。この場合、関連トレース群抽出部33は、当該特定したトレース群を削除対象から除外することで、当該トレース群を関連トレース群43として保持部4に退避させることができる。これにより、トレースファイル41が削除対象となるまでは関連トレース群43の保存を保留にできるため、記憶装置の記憶容量の圧迫を低減することが可能となる。
なお、関連トレース群抽出部33は、トレース解析部32から特異なトレース群の情報を通知されると、当該特異なトレース群に関連する各トレース群を、対応するトレースファイル41から直ちに抽出して、関連トレース群43として保持部4に保存してもよい。
以下、図12を参照して、プロセス20−1〜20−3の複数のプロセス20が協調して動作する場合における関連トレース群抽出部33の処理の一例を説明する。なお、図12では、トレース解析部32により、プロセス20−2から出力されたトレースファイル41−2が“trace xxxx 2”の欠落により特異なトレース群であると検出された場合を示す。
この場合、関連トレース群抽出部33は、トレースファイル41−2のトレースが欠落している部分を含む同期性のサイクル、つまり当該特異なトレース群をトレースファイル41から抽出し、関連トレース群43として保持部4に保存する。
また、関連トレース群抽出部33は、特異なトレース群に対応する、同期間(同時間帯)に他プロセス20−1及び20−3から出力されたトレースファイル41−1及び41−3のトレース群を特定する。関連トレース群抽出部33は、特定したトレース群を含むトレースファイル41−1及び41−3の各々が削除対象となった場合に、当該特定したトレース群をトレースファイル41から抽出し、それぞれ関連トレース群43として保持部4に保存する。
なお、関連トレース群抽出部33は、関連トレース群43を保存する際に、特異なトレース群と、1以上の特定したトレース群とを関連付けて管理してもよい(例えば図12の関連トレース群管理情報43a参照)。これにより、管理者は、互いに関係のある関連トレース群43を容易に認識することができ、障害の原因調査にかかる時間を短縮することができる。
このように、関連トレース群抽出部33は、図12に示すように特異なトレース群と同一時間帯(1サイクル)に出力された他のトレース群をプロセス20を横断して採取することができる。
ここで、プロセス20−1〜20−3が協調して動作する場合、図13に例示するように、プロセス20−1〜20−3はそれぞれ共通ソース21−1及び21−2を使用することが想定される。共通ソース21−1及び21−2内の共通関数は、プロセス20により実行されたときにトレースを出力する。なお、共通関数は、例えば図13に示すように、ネットワーク関連の関数である“function1”,ファイル作成の関数である“function2”等、機能ごとに分かれているものとする。
図13に示すソース構成の場合でも、管理者は、プロセス41−1及び41−3の関連トレース群43に基づき、例えば障害の発生時に“function1”が正常に実行できていることからネットワーク的には問題が無かった等と判断することができる。このように、管理者は、プロセス20−1及び20−3等の正常な関連トレース群43を、システム状況の調査,監視対象(ソース)の障害の被擬箇所や影響範囲等の絞り込み,特異なトレース群が出力された原因の特定等に用いることができる。
次に、関連トレース群抽出部33による関連トレース群43の抽出範囲(特定範囲)について説明する。
図14に例示するように、プロセス20−2のトレースファイル41−2で“trace xxxx 2”が欠落した場合、同時間帯にプロセス20−3のトレースファイル41−3で“trace xxxx 2”が出力されていることは、障害の範囲を絞り込む上で重要な情報となり得る。プロセス20−3のトレース“trace xxxx 2”により、調査対象の関数(被疑箇所)を絞り込めるだけでなく、トレース“trace xxxx 2”がプロセス20−3で出力された時刻から、プロセス20−2で出力されなかった時刻までの間に、何らかの問題が発生した可能性を調査できるためである。つまり、関連トレース群抽出部33が特異なトレース群と同時間帯の他プロセス20のトレース群を抽出(保存)することで、管理者は障害の発生した期間を絞り込むことが可能となる。
関連トレース群抽出部33がトレースファイル41から関連トレース群43を抽出(特定)する範囲としては、以下の2つの例が挙げられる。
(A)第1の例
図15に示すように、関連トレース群抽出部33は、プロセス20−2のトレース“trace xxxx 2”が出力されなかった時刻について、プロセス20−2の1サイクルの時間帯(始期〜終期)で、プロセス20−1及び20−3のトレース群を採取する。すなわち、第1の例により抽出される関連トレース群43は、特異なトレース群が出力された期間に関連した、トレースファイル41−1及び41−3に含まれる複数のトレース(ログ項目)である。なお、第1の例は、図14に示す抽出範囲と同様である。
(B)第2の例
図16に示すように、関連トレース群抽出部33は、プロセス20−2のトレース“trace xxxx 2”が出力されなかった時刻について、プロセス20−2の1サイクルの時間帯(始期〜終期)に掛かる、プロセス20−1及び20−3のトレース群を採取する。すなわち、第2の例により抽出される関連トレース群43は、特異なトレース群が出力された期間に関連した、トレースファイル41−1及び41−3において周期性を有するトレース群である。
関連トレース群抽出部33が第2の例のように関連トレース群43を抽出することで、プロセス20−2でトレース“trace xxxx 2”が出力されなかった時刻の前後で、関連するプロセス20−1及び20−3の処理は正常であったことが分かる。つまり、障害の発生箇所をプロセス20−2の処理に絞り込むことが可能となる。
このように、関連トレース群抽出部33によれば、特異なトレース群を含む複数の関連トレース群43が抽出され、保持部4に保存される。従って、管理者による原因調査に有用な情報を確実に残すことができ、情報不足のために障害の再現待ちを行ない解決時期が延伸してしまうことや再調査のコストが発生することを抑制できる。
以上のように、関連トレース群抽出部33は、第1ログに関連する第2ログから第1ログ項目群と同期間に出力された第2ログ項目群を特定する特定部の一例であるといえる。
また、関連トレース群抽出部33は、第1ログから第1ログ項目群を抽出して出力するとともに、第2ログから特定部が特定した第2ログ項目群を抽出して出力する出力部の一例であるといえる。
〔2−3〕ログ管理プロセスによる一連の処理の説明
次に、図17及び図18を参照しながら情報処理装置1(ログ管理プロセス30)の一連の処理を説明する。なお、図17はプロセス20−1及び20−2が協調して動作する場合の情報処理装置1の動作例を示し、図18はプロセス20−1〜20−3が協調して動作する場合の情報処理装置1の動作例を示す。
図17及び図18に示すように、正常トレース取得部31は、各プロセス20が出力するトレースファイル41から正常トレース情報42を取得する((1)参照)。なお、正常トレース取得部31は、図17の例ではプロセス20−1及び20−2のトレースファイル41から、図18の例ではプロセス20−1〜20−3のトレースファイル41から、それぞれ正常トレース情報42を取得する。
次いで、トレース解析部32は、例えばプロセス20−1によりトレースファイル41が削除されるタイミングで、正常トレース情報42に基づき削除対象のトレースファイル41を解析する((2)参照)。
解析処理により、特異なトレースが出力されたことを検知すると、関連トレース群抽出部33は、プロセス20−1の当該特異なトレース群を関連トレース群43として保持部4に保管する((3)参照)。
また、関連トレース群抽出部33は、特異なトレース群に関連する他のプロセス20のトレース群を特定する(印を付ける)((4)参照)。なお、関連トレース群抽出部33は、図17及び図18の例ではプロセス20−2のトレースファイル41のトレース群(“トレース1”〜“トレース3”)を、図18の例ではさらにプロセス20−3のトレース群(“トレース4”〜“トレース6”)を、それぞれ特定する。
そして、関連トレース群抽出部33は、特定したトレース群を含むトレースファイル41が削除対象になったときに、当該特定したトレース群を関連トレース群43として保持部4に保管する((5)参照)。
〔2−4〕情報処理装置の動作例
次に、上述の如く構成された一実施形態に係る情報処理装置1の動作例を図19を参照しながら説明する。なお、前提として、情報処理装置1のOS上で例えば運用管理ツール等のアプリケーションが実行されるものとする。
はじめに、図19に示すように、運用管理ツールのプロセス20が起動し(ステップS1)、起動したプロセス20がトレースファイル41の継続的な出力を開始する(ステップS2)。
ログ管理プロセス30において、正常トレース取得部31は、トレースファイル41を監視し1サイクルのトレースを決定する(ステップS3)。そして、正常トレース取得部31は、正常トレース情報42を取得して保持部4へ保存する。
プロセス20からトレースファイル41が出力されると(ステップS4)、トレース解析部32は、トレースファイル41が削除されるか否かを判断する(ステップS5)。トレースファイル41が削除されない場合(ステップS5のNoルート)、処理がステップS4に移行する。
一方、トレースファイル41が削除される場合(ステップS5のYesルート)、トレース解析部32は、削除対象(解析対象)のトレースファイル41から解析用トレース群抽出し、抽出した解析用トレース群の解析を行なう(ステップS6)。そして、トレース解析部32は、正常トレース情報42に基づき解析用トレース群に特異なトレースを含む特異なトレース群があるか否かを判断する(ステップS7)。
解析用トレース群に特異なトレース群がある場合(ステップS7のYesルート)、関連トレース群抽出部33は、削除対象のトレースファイル41から当該特異なトレース群を抽出し関連トレース群43として保持部4に保存する(ステップS8)。また、関連トレース群抽出部33は、特異なトレース群と同時間帯に出力された、関連する他プロセス20のトレース群を特定し(ステップS9)、処理がステップS10に移行する。
なお、ステップS7において、解析用トレース群に特異なトレース群がない場合(ステップS7のNoルート)、ステップS8及びS9をスキップし、処理がステップS10に移行する。
ステップS10において、関連トレース群抽出部33は、解析用トレース群に、他プロセス20のトレースファイル41についてのステップS9で特定した(印を付けた)、特定済みのトレース群があるか否かを判断する。解析用トレース群に特定済みのトレース群がない場合(ステップS10のNoルート)、処理がステップS4に移行する。
一方、解析用トレース群に特定済みのトレース群がある場合(ステップS10のYesルート)、関連トレース群抽出部33は、削除対象のトレースファイル41から当該特定済みのトレース群を抽出し関連トレース群43として保持部4に保存する(ステップS11)。
ログ管理プロセス30は、システムの構成変更等があるか否かを判断し(ステップS12)、構成変更がある場合(ステップS12のYesルート)、再度正常トレース情報42を取得するため、処理がステップS3に移行する。一方、構成変更がない場合(ステップS12のNoルート)、処理がステップS4に移行する。
以上のように、ログ管理プロセス30によれば、障害に関連する適切なログ項目を出力することができる。
また、ログ管理プロセス30は、プロセス20とは別個のプロセスによりトレースの解析及び動的な印付けの制御等を行なう。これにより、ログの管理によるプロセス20の実行時間(性能)の低下を抑制することができ、且つ、最小限のプログラム修正で障害の原因調査に有用なトレースのみを保管することが可能となる。
プロセス20によっては、トレースの出力回数が少ない場合がある。このような出力回数の少ないトレースを1行だけ保存しても障害の原因調査を行なうことは難しい。
本実施形態では、アプリケーションの生存を確認するような監視プロセス(デーモンプロセス)等で定期的に同様のトレースが出力されることに着目し、正常な1サイクル分のトレース群に基づき特異なトレースを含む1サイクル分の関連トレース群43を採取する。これにより、出力回数が少ない特異なトレースについても、前後のトレース及び同時間帯に出力されている他プロセス20のトレースを保存できるため、調査に有用な資料が上書きされることを防き、障害の解決時間を短縮し得る保守資料を出力することができる。
また、トレースファイル41から特異なトレース群を含む関連トレース群43のみが抽出され、トレースファイル41はサイクリックに削除されるため、障害の原因調査に有用なログ項目のみを出力することができ、記憶装置の記憶容量の圧迫を低減できる。情報処理装置1が端末やウェアラブルデバイス等の小型の装置である場合、記憶装置の記憶容量が小さく、保存できるトレースファイル41の数やサイズの制約が大きい。本実施形態に係るログ管理プロセス30は、特に情報処理装置1が小型の装置である場合に用いて好適である。
〔3〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、かかる特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
例えば、図7に示す情報処理装置1の各機能ブロックは、任意の組み合わせで併合してもよく、分割してもよい。
また、トレース解析部32が、検出した特異なトレース群を示す情報を関連トレース群抽出部33に通知し、関連トレース群抽出部33が、当該特異なトレース群をトレースファイル41から抽出して関連トレース群43として保存するものとして説明したが、これに限定されるものではない。例えば、トレース解析部32が、検出した特異なトレース群を示す情報を関連トレース群抽出部33に通知し、且つ、当該特異なトレース群をトレースファイル41から抽出して関連トレース群43として保存してもよい。この場合、トレース解析部32及び関連トレース群抽出部33が出力部の一例であるといえる。
さらに、出力部の一例としての関連トレース群抽出部33が、抽出したトレース群を関連トレース群43として保持部4に保存する(出力する)ものとして説明したが、これに限定されるものではない。例えば関連トレース群抽出部33は、関連トレース群43を、インタフェース部1dを介して他の装置に通知(送信)したり、書き込み可能に構成された読取部1fを介して記録媒体1gに書き込んでもよく、その他、種々の態様で出力することができる。
〔4〕付記
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
複数の監視対象からそれぞれ出力される複数のログのそれぞれについて、各ログに含まれる周期性を有するログ項目群を取得する取得部と、
記憶部において記憶され管理される前記複数のログのうち、所定の条件に基づき選択された解析対象の第1ログから、前記取得部が取得した当該第1ログに含まれる周期性を有するログ項目群とは異なる第1ログ項目群を検出する検出部と、
前記第1ログに関連する第2ログから前記第1ログ項目群と同期間に出力された第2ログ項目群を特定する特定部と、
前記第1ログから前記第1ログ項目群を抽出して出力するとともに、前記第2ログから前記特定部が特定した前記第2ログ項目群を抽出して出力する出力部と、をそなえる
ことを特徴とする、ログ管理装置。
(付記2)
前記第1ログ項目群と同期間に出力された前記第2ログ項目群は、前記第1ログ項目群が出力された期間に関連した、前記第2ログに含まれる複数のログ項目である、
ことを特徴とする、付記1記載のログ管理装置。
(付記3)
前記第1ログ項目群と同期間に出力された前記第2ログ項目群は、前記第1ログ項目群が出力された期間に関連した、前記第2ログおいて周期性を有するログ項目群である、
ことを特徴とする、付記1記載のログ管理装置。
(付記4)
前記周期性を有するログ項目群は、対応する監視対象による定期的な処理の1サイクルに当該監視対象から出力される正常なログ項目群であり、
前記検出部は、前記解析対象の第1ログから1サイクルのログ項目群を抽出し、前記抽出した1サイクルのログ項目群と、前記取得部が前記解析対象の第1ログについて取得した前記周期性を有するログ項目群とを比較し、比較結果に応じて、前記抽出した1サイクルのログ項目群を前記第1ログ項目群として検出する、
ことを特徴とする、付記1〜3のいずれか1項記載のログ管理装置。
(付記5)
前記解析対象の第1ログは、対応する監視対象により削除される削除対象のログである、
ことを特徴とする、付記1〜4のいずれか1項記載のログ管理装置。
(付記6)
前記出力部は、前記第2ログが削除対象のログとなったときに、前記第2ログから前記第2ログ項目群を抽出して出力する、
ことを特徴とする、付記5記載のログ管理装置。
(付記7)
コンピュータに、
複数の監視対象からそれぞれ出力される複数のログのそれぞれについて、各ログに含まれる周期性を有するログ項目群を取得し、
記憶部において記憶され管理される前記複数のログのうち、所定の条件に基づき選択された解析対象の第1ログから、前記取得した当該第1ログに含まれる周期性を有するログ項目群とは異なる第1ログ項目群を検出し、
前記第1ログに関連する第2ログから前記第1ログ項目群と同期間に出力された第2ログ項目群を特定し、
前記第1ログから前記第1ログ項目群を抽出して出力し、
前記第2ログから前記特定した前記第2ログ項目群を抽出して出力する、
処理を実行させることを特徴とする、ログ管理プログラム。
(付記8)
前記第1ログ項目群と同期間に出力された前記第2ログ項目群は、前記第1ログ項目群が出力された期間に関連した、前記第2ログに含まれる複数のログ項目である、
ことを特徴とする、付記7記載のログ管理プログラム。
(付記9)
前記第1ログ項目群と同期間に出力された前記第2ログ項目群は、前記第1ログ項目群が出力された期間に関連した、前記第2ログにおける周期性を有するログ項目群である、
ことを特徴とする、付記7記載のログ管理プログラム。
(付記10)
前記周期性を有するログ項目群は、対応する監視対象による定期的な処理の1サイクルに当該監視対象から出力される正常なログ項目群であり、
前記コンピュータに、
前記検出する処理において、前記解析対象の第1ログから1サイクルのログ項目群を抽出し、前記抽出した1サイクルのログ項目群と、前記解析対象の第1ログについて前記取得した前記周期性を有するログ項目群とを比較し、比較結果に応じて、前記抽出した1サイクルのログ項目群を前記第1ログ項目群として検出する、
処理を実行させることを特徴とする、付記7〜9のいずれか1項記載のログ管理プログラム。
(付記11)
前記解析対象の第1ログは、対応する監視対象により削除される削除対象のログである、
ことを特徴とする、付記7〜10のいずれか1項記載のログ管理プログラム。
(付記12)
前記コンピュータに、
前記抽出して出力する処理において、前記第2ログが削除対象のログとなったときに、前記第2ログから前記第2ログ項目群を抽出して出力する、
処理を実行させることを特徴とする、付記11記載のログ管理プログラム。
(付記13)
複数の監視対象からそれぞれ出力される複数のログを管理する情報処理装置におけるログ管理方法であって、
前記情報処理装置のログ管理部が、
前記複数のログのそれぞれについて、各ログに含まれる周期性を有するログ項目群を取得し、
記憶部において記憶され管理される前記複数のログのうち、所定の条件に基づき選択された解析対象の第1ログから、前記取得した当該第1ログに含まれる周期性を有するログ項目群とは異なる第1ログ項目群を検出し、
前記第1ログに関連する第2ログから前記第1ログ項目群と同期間に出力された第2ログ項目群を特定し、
前記第1ログから前記第1ログ項目群を抽出して出力し、
前記第2ログから前記抽出した前記第2ログ項目群を抽出して出力する、
ことを特徴とする、ログ管理方法。
(付記14)
前記第1ログ項目群と同期間に出力された前記第2ログ項目群は、前記第1ログ項目群が出力された期間に関連した、前記第2ログに含まれる複数のログ項目である、
ことを特徴とする、付記13記載のログ管理方法。
(付記15)
前記第1ログ項目群と同期間に出力された前記第2ログ項目群は、前記第1ログ項目群が出力された期間に関連した、前記第2ログにおける周期性を有するログ項目群である、
ことを特徴とする、付記13記載のログ管理方法。
(付記16)
前記周期性を有するログ項目群は、対応する監視対象による定期的な処理の1サイクルに当該監視対象から出力される正常なログ項目群であり、
前記ログ管理部が、
前記検出する処理において、前記解析対象の第1ログから1サイクルのログ項目群を抽出し、前記抽出した1サイクルのログ項目群と、前記解析対象の第1ログについて前記取得した前記周期性を有するログ項目群とを比較し、比較結果に応じて、前記抽出した1サイクルのログ項目群を前記第1ログ項目群として検出する、
ことを特徴とする、付記13〜15のいずれか1項記載のログ管理方法。
(付記17)
前記解析対象の第1ログは、対応する監視対象により削除される削除対象のログである、
ことを特徴とする、付記13〜16のいずれか1項記載のログ管理方法。
(付記18)
前記ログ管理部が、
前記抽出して出力する処理において、前記第2ログが削除対象のログとなったときに、前記第2ログから前記第2ログ項目群を抽出して出力する、
ことを特徴とする、付記17記載のログ管理方法。
1 情報処理装置(ログ管理装置)
1a CPU
1b メモリ
1c 記憶部
1d インタフェース部
1e 入出力部
1f 読取部
1g 記録媒体
2 プロセス実行部
20,20−1〜20−3 プロセス
21−1,21−2 共通ソース
3 ログ管理プログラム
30 ログ管理プロセス
31 正常トレース取得部
32 トレース解析部
33 関連トレース群抽出部
4 保持部
41,41−1〜41−3 トレースファイル
42,42−1〜42−3 正常トレース情報
42a 正常トレース管理情報
43,43−1〜43−3 関連トレース群
43a 関連トレース群管理情報

Claims (8)

  1. 複数の監視対象からそれぞれ出力される複数のログのそれぞれについて、各ログに含まれる周期性を有するログ項目群を取得する取得部と、
    記憶部において記憶され管理される前記複数のログのうち、所定の条件に基づき選択された解析対象の第1ログから、前記取得部が取得した当該第1ログに含まれる周期性を有するログ項目群とは異なる第1ログ項目群を検出する検出部と、
    前記第1ログに関連する第2ログから前記第1ログ項目群と同期間に出力された第2ログ項目群を特定する特定部と、
    前記第1ログから前記第1ログ項目群を抽出して出力するとともに、前記第2ログから前記特定部が特定した前記第2ログ項目群を抽出して出力する出力部と、をそなえる
    ことを特徴とする、ログ管理装置。
  2. 前記第1ログ項目群と同期間に出力された前記第2ログ項目群は、前記第1ログ項目群が出力された期間に関連した、前記第2ログに含まれる複数のログ項目である、
    ことを特徴とする、請求項1記載のログ管理装置。
  3. 前記第1ログ項目群と同期間に出力された前記第2ログ項目群は、前記第1ログ項目群が出力された期間に関連した、前記第2ログにおける周期性を有するログ項目群である、
    ことを特徴とする、請求項1記載のログ管理装置。
  4. 前記周期性を有するログ項目群は、対応する監視対象による定期的な処理の1サイクルに当該監視対象から出力される正常なログ項目群であり、
    前記検出部は、前記解析対象の第1ログから1サイクルのログ項目群を抽出し、前記抽出した1サイクルのログ項目群と、前記取得部が前記解析対象の第1ログについて取得した前記周期性を有するログ項目群とを比較し、比較結果に応じて、前記抽出した1サイクルのログ項目群を前記第1ログ項目群として検出する、
    ことを特徴とする、請求項1〜3のいずれか1項記載のログ管理装置。
  5. 前記解析対象の第1ログは、対応する監視対象により削除される削除対象のログである、
    ことを特徴とする、請求項1〜4のいずれか1項記載のログ管理装置。
  6. 前記出力部は、前記第2ログが削除対象のログとなったときに、前記第2ログから前記第2ログ項目群を抽出して出力する、
    ことを特徴とする、請求項5記載のログ管理装置。
  7. コンピュータに、
    複数の監視対象からそれぞれ出力される複数のログのそれぞれについて、各ログに含まれる周期性を有するログ項目群を取得し、
    記憶部において記憶され管理される前記複数のログのうち、所定の条件に基づき選択された解析対象の第1ログから、前記取得した当該第1ログに含まれる周期性を有するログ項目群とは異なる第1ログ項目群を検出し、
    前記第1ログに関連する第2ログから前記第1ログ項目群と同期間に出力された第2ログ項目群を特定し、
    前記第1ログから前記第1ログ項目群を抽出して出力し、
    前記第2ログから前記特定した前記第2ログ項目群を抽出して出力する、
    処理を実行させることを特徴とする、ログ管理プログラム。
  8. 複数の監視対象からそれぞれ出力される複数のログを管理する情報処理装置におけるログ管理方法であって、
    前記情報処理装置のログ管理部が、
    前記複数のログのそれぞれについて、各ログに含まれる周期性を有するログ項目群を取得し、
    記憶部において記憶され管理される前記複数のログのうち、所定の条件に基づき選択された解析対象の第1ログから、前記取得した当該第1ログに含まれる周期性を有するログ項目群とは異なる第1ログ項目群を検出し、
    前記第1ログに関連する第2ログから前記第1ログ項目群と同期間に出力された第2ログ項目群を特定し、
    前記第1ログから前記第1ログ項目群を抽出して出力し、
    前記第2ログから前記特定した前記第2ログ項目群を抽出して出力する、
    ことを特徴とする、ログ管理方法。
JP2014205755A 2014-10-06 2014-10-06 ログ管理装置,ログ管理プログラム,及びログ管理方法 Active JP6528381B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014205755A JP6528381B2 (ja) 2014-10-06 2014-10-06 ログ管理装置,ログ管理プログラム,及びログ管理方法
US14/833,522 US9804912B2 (en) 2014-10-06 2015-08-24 Log management apparatus, computer-readable recording medium having stored therein log management program, and log management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014205755A JP6528381B2 (ja) 2014-10-06 2014-10-06 ログ管理装置,ログ管理プログラム,及びログ管理方法

Publications (2)

Publication Number Publication Date
JP2016076071A true JP2016076071A (ja) 2016-05-12
JP6528381B2 JP6528381B2 (ja) 2019-06-12

Family

ID=55632893

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014205755A Active JP6528381B2 (ja) 2014-10-06 2014-10-06 ログ管理装置,ログ管理プログラム,及びログ管理方法

Country Status (2)

Country Link
US (1) US9804912B2 (ja)
JP (1) JP6528381B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018106638A (ja) * 2016-12-28 2018-07-05 富士通株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
CN112905430A (zh) * 2021-02-24 2021-06-04 浙江大华技术股份有限公司 日志输出方法、装置、存储介质及电子装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10922203B1 (en) * 2018-09-21 2021-02-16 Nvidia Corporation Fault injection architecture for resilient GPU computing
US20230096271A1 (en) * 2021-09-24 2023-03-30 Dell Products, L.P. Guidance System for Computer Repair

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007241540A (ja) * 2006-03-07 2007-09-20 Ricoh Co Ltd ログ情報管理方式
US20090292742A1 (en) * 2008-05-21 2009-11-26 International Business Machines System, Method, and Computer Readable Media for Identifying a Log File Record in a Log File
JP2010086516A (ja) * 2008-09-04 2010-04-15 Hitachi Ltd 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム
JP2013114372A (ja) * 2011-11-28 2013-06-10 Nippon Telegr & Teleph Corp <Ntt> ログ解析装置、ログ解析方法およびプログラム
JP2014501420A (ja) * 2010-12-27 2014-01-20 マイクロソフト コーポレーション リソースアクセスパターンに基づくアプリケーションの障害の予測、診断、および障害からの復旧

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4300808B2 (ja) 2003-01-24 2009-07-22 株式会社日立製作所 統合ログ表示方法及びシステム
JP2005148779A (ja) * 2003-11-11 2005-06-09 Hitachi Ltd 情報端末、ログ管理装置、コンテンツ提供装置、コンテンツ提供システム及びログ管理方法
JP4901442B2 (ja) 2006-12-04 2012-03-21 東京エレクトロン株式会社 トラブル原因究明支援装置,トラブル原因究明支援方法,プログラムを記憶する記憶媒体
JP2008158634A (ja) 2006-12-21 2008-07-10 Nec Corp 情報処理装置、ソフトウェアトレースデータ記録方法及びソフトウェアトレースデータ記録プログラム
US7873712B2 (en) * 2008-11-13 2011-01-18 Netapp, Inc. System and method for aggregating management of devices connected to a server
JP5452030B2 (ja) 2009-02-06 2014-03-26 三菱電機株式会社 統合ログ生成装置及び統合ログ生成プログラム及び記録媒体
US8176366B2 (en) * 2009-04-03 2012-05-08 Arm Limited Trace synchronization
US8069366B1 (en) * 2009-04-29 2011-11-29 Netapp, Inc. Global write-log device for managing write logs of nodes of a cluster storage system
US8046639B1 (en) * 2010-07-29 2011-10-25 Oracle International Corporation Cycle accurate fault log modeling for a digital system
JP2013206147A (ja) 2012-03-28 2013-10-07 Yokohama National Univ ロギング装置、ロギング方法及びプログラム
JP6160171B2 (ja) * 2013-03-28 2017-07-12 富士通株式会社 情報処理装置、制御方法、プログラム、及び情報処理システム
US9535815B2 (en) * 2014-06-04 2017-01-03 Nvidia Corporation System, method, and computer program product for collecting execution statistics for graphics processing unit workloads

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007241540A (ja) * 2006-03-07 2007-09-20 Ricoh Co Ltd ログ情報管理方式
US20090292742A1 (en) * 2008-05-21 2009-11-26 International Business Machines System, Method, and Computer Readable Media for Identifying a Log File Record in a Log File
JP2010086516A (ja) * 2008-09-04 2010-04-15 Hitachi Ltd 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム
JP2014501420A (ja) * 2010-12-27 2014-01-20 マイクロソフト コーポレーション リソースアクセスパターンに基づくアプリケーションの障害の予測、診断、および障害からの復旧
JP2013114372A (ja) * 2011-11-28 2013-06-10 Nippon Telegr & Teleph Corp <Ntt> ログ解析装置、ログ解析方法およびプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018106638A (ja) * 2016-12-28 2018-07-05 富士通株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
CN112905430A (zh) * 2021-02-24 2021-06-04 浙江大华技术股份有限公司 日志输出方法、装置、存储介质及电子装置

Also Published As

Publication number Publication date
US9804912B2 (en) 2017-10-31
US20160098312A1 (en) 2016-04-07
JP6528381B2 (ja) 2019-06-12

Similar Documents

Publication Publication Date Title
US8676568B2 (en) Information processing apparatus and message extraction method
US8949799B2 (en) Program log record optimization
US10761964B2 (en) Object monitoring in code debugging
US11327742B2 (en) Affinity recommendation in software lifecycle management
US10121004B2 (en) Apparatus and method for monitoring virtual machine based on hypervisor
CN105468482B (zh) 一种硬盘盘位识别和故障诊断方法及其服务器设备
WO2020237877A1 (zh) 日志监控方法、装置、终端与存储介质
US10048978B2 (en) Apparatus and method for identifying a virtual machine having changeable settings
CH716436B1 (it) Sistema e metodo di controllo di porzioni di archivio alla ricerca di malware.
JP6528381B2 (ja) ログ管理装置,ログ管理プログラム,及びログ管理方法
WO2015196981A1 (zh) 一种鉴别图片垃圾文件的方法及装置
US20230047615A1 (en) Communication Device, Surveillance Server, and Log Collection Method
JP6282217B2 (ja) 不正プログラム対策システムおよび不正プログラム対策方法
US20160124795A1 (en) Evaluation method and apparatus
JPWO2018070404A1 (ja) マルウェア解析装置、マルウェア解析方法、及び、マルウェア解析プログラムが格納された記録媒体
EP3274839B1 (en) Technologies for root cause identification of use-after-free memory corruption bugs
JP6238221B2 (ja) ソフトウェアの実行を監視する装置、方法およびプログラム
JP2022100232A (ja) 根本原因解析のために経時的にフォレンジックスナップショットを相互参照するためのシステムおよび方法
US8549487B2 (en) Automated identification of redundant method calls
JP2015185027A (ja) ジョブ判別プログラム、装置、及び方法
US9165007B2 (en) Log message optimization to ignore or identify redundant log messages
KR101889222B1 (ko) 악성코드탐지를 수행하는 이동식저장장치 및 이를 위한 방법
JP2016018227A (ja) 作業ログ編集方法、情報処理装置、およびプログラム
JP6340990B2 (ja) メッセージ表示方法、メッセージ表示装置、およびメッセージ表示プログラム
JP6079868B2 (ja) エラー分析方法、情報処理装置およびエラー分析プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180531

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20181016

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190111

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20190121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190402

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190416

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190429

R150 Certificate of patent or registration of utility model

Ref document number: 6528381

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150