(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-19
(45)【発行日】2022-12-27
(54)【発明の名称】検出支援装置、検出支援方法、およびプログラム
(51)【国際特許分類】
G06F 11/07 20060101AFI20221220BHJP
G06F 11/30 20060101ALI20221220BHJP
G06F 11/34 20060101ALI20221220BHJP
【FI】
G06F11/07 190
G06F11/07 181
G06F11/30 172
G06F11/34 176
(21)【出願番号】P 2018080021
(22)【出願日】2018-04-18
【審査請求日】2021-03-04
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100106909
【氏名又は名称】棚井 澄雄
(74)【代理人】
【識別番号】100134544
【氏名又は名称】森 隆一郎
(74)【代理人】
【識別番号】100149548
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100162868
【氏名又は名称】伊藤 英輔
(72)【発明者】
【氏名】阿久津 陽一
【審査官】北川 純次
(56)【参考文献】
【文献】特開2016-024786(JP,A)
【文献】特開2006-331026(JP,A)
【文献】特開2001-109647(JP,A)
【文献】特開2016-126454(JP,A)
【文献】特開2014-067369(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/07
G06F 11/30
G06F 11/34
(57)【特許請求の範囲】
【請求項1】
対象機器が出力した対象ログデータから、1つのエラーコードまたは複数のエラーコードの順列を含む部分ログデータを抽出する抽出部と、
機器に生じた障害に関連付けて、前記機器が出力した過去ログデータに含まれる前記障害に係る1つのエラーコードまたは複数のエラーコードの順列を記憶するノウハウデータベースから、前記部分ログデータに含まれる前記1つのエラーコードまたは前記複数のエラーコードの順列を検索する検索部と、
前記エラーコードに関連付けて当該エラーコードの警告重要度を記憶する重要度記憶部に基づいて、前記部分ログデータに含まれるエラーコードに関連付けられた警告重要度の積算値を算出する重要度積算部と、
前記積算値が所定の閾値を超えた場合に、前記検索部による検索結果を出力する出力部と
を備える検出支援装置。
【請求項2】
前記部分ログデータは、前記対象ログデータのうち、前記1つのエラーコードまたは前記複数のエラーコードのそれぞれの前後7行以上15行以下を抽出したものである
請求項1に記載の検出支援装置。
【請求項3】
前記部分ログデータは、前記対象ログデータのうち、前記1つのエラーコードまたは前記複数のエラーコードのそれぞれの前後10行を抽出したものである
請求項2に記載の検出支援装置。
【請求項4】
前記ノウハウデータベースは、前記1つのエラーコードまたは前記複数のエラーコードの順列に関連付けて、さらに前記障害の処置手段または再発防止手段を記憶し、
前記出力部は、検索された前記1つのエラーコードまたは前記複数のエラーコードの順列に関連付けられた前記障害の処置手段または再発防止手段を出力する
請求項1から請求項3の何れか1項に記載の検出支援装置。
【請求項5】
対象機器が出力した対象ログデータから、1つのエラーコードまたは複数のエラーコードの順列を含む部分ログデータを抽出するステップと、
機器に生じた障害に関連付けて、前記機器が出力した過去ログデータに含まれる前記障害に係る1つのエラーコードまたは複数のエラーコードの順列を記憶するノウハウデータベースから、前記部分ログデータに含まれる前記1つのエラーコードまたは前記複数のエラーコードの順列を検索するステップと、
前記エラーコードに関連付けて当該エラーコードの警告重要度を記憶する重要度記憶部に基づいて、前記部分ログデータに含まれるエラーコードに関連付けられた警告重要度の積算値を算出するステップと、
前記積算値が所定の閾値を超えた場合に、前記1つのエラーコードまたは前記複数のエラーコードの順列の検索結果を出力するステップと
を含む検出支援方法。
【請求項6】
コンピュータに、
対象機器が出力した対象ログデータから、1つのエラーコードまたは複数のエラーコードの順列を含む部分ログデータを抽出するステップと、
機器に生じた障害に関連付けて、前記機器が出力した過去ログデータに含まれる前記障害に係る1つのエラーコードまたは複数のエラーコードの順列を記憶するノウハウデータベースから、前記部分ログデータに含まれる前記1つのエラーコードまたは前記複数のエラーコードの順列を検索するステップと、
前記エラーコードに関連付けて当該エラーコードの警告重要度を記憶する重要度記憶部に基づいて、前記部分ログデータに含まれるエラーコードに関連付けられた警告重要度の積算値を算出するステップと、
前記積算値が所定の閾値を超えた場合に、前記1つのエラーコードまたは前記複数のエラーコードの順列の検索結果を出力するステップと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機器の障害を検出するための検出支援装置、検出支援方法、およびプログラムに関する。
【背景技術】
【0002】
特許文献1、2には、対象機器の障害要因を解析するために、対象機器のエラーログと、過去に生じた障害のデータベースに記憶されているエラーログのパターンとを比較し、障害要因を出力する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2016-024786号公報
【文献】特開2010-224973号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1、2が出力する障害要因は必ずしも正しいとは限らないため、対象機器の運用担当者が、対象機器のエラーログを確認し、出力された障害要因が正しいか否かを検証する。このとき、運用担当者の経験によって、障害要因の特定に要する時間に差が生じる可能性がある。
本発明の目的は、上述した課題を解決する検出支援装置、検出支援方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【0005】
本発明の第1の態様によれば、検出支援装置は、対象機器が出力した対象ログデータから、1つのエラーコードまたは複数のエラーコードの順列を含む部分ログデータを抽出する抽出部と、機器に生じた障害に関連付けて、前記機器が出力した過去ログデータに含まれる前記障害に係る1つのエラーコードまたは複数のエラーコードの順列を記憶するノウハウデータベースから、前記部分ログデータに含まれる前記1つのエラーコードまたは前記複数のエラーコードの順列を検索する検索部と、前記エラーコードに関連付けて当該エラーコードの警告重要度を記憶する重要度記憶部に基づいて、前記部分ログデータに含まれるエラーコードに関連付けられた警告重要度の積算値を算出する重要度積算部と、前記積算値が所定の閾値を超えた場合に、前記検索部による検索結果を出力する出力部とを備える。
【0006】
本発明の第2の態様によれば、検出支援方法は、対象機器が出力した対象ログデータから、1つのエラーコードまたは複数のエラーコードの順列を含む部分ログデータを抽出するステップと、機器に生じた障害に関連付けて、前記機器が出力した過去ログデータに含まれる前記障害に係る1つのエラーコードまたは複数のエラーコードの順列を記憶するノウハウデータベースから、前記部分ログデータに含まれる前記1つのエラーコードまたは前記複数のエラーコードの順列を検索するステップと、前記エラーコードに関連付けて当該エラーコードの警告重要度を記憶する重要度記憶部に基づいて、前記部分ログデータに含まれるエラーコードに関連付けられた警告重要度の積算値を算出するステップと、前記積算値が所定の閾値を超えた場合に、前記1つのエラーコードまたは前記複数のエラーコードの順列の検索結果を出力するステップとを含む。
【0007】
本発明の第3の態様によれば、プログラムは、コンピュータに、対象機器が出力した対象ログデータから、1つのエラーコードまたは複数のエラーコードの順列を含む部分ログデータを抽出するステップと、機器に生じた障害に関連付けて、前記機器が出力した過去ログデータに含まれる前記障害に係る1つのエラーコードまたは複数のエラーコードの順列を記憶するノウハウデータベースから、前記部分ログデータに含まれる前記1つのエラーコードまたは前記複数のエラーコードの順列を検索するステップと、前記エラーコードに関連付けて当該エラーコードの警告重要度を記憶する重要度記憶部に基づいて、前記部分ログデータに含まれるエラーコードに関連付けられた警告重要度の積算値を算出するステップと、前記積算値が所定の閾値を超えた場合に、前記1つのエラーコードまたは前記複数のエラーコードの順列の検索結果を出力するステップとを実行させる。
【発明の効果】
【0008】
上記態様のうち少なくとも1つの態様によれば、運用担当者の経験によらず、障害要因の特定を容易にすることができる。
【図面の簡単な説明】
【0009】
【
図1】一実施形態に係る障害検出システムの構成を示す概略図である。
【
図2】一実施形態に係る検出支援装置の構成を示す概略ブロック図である。
【
図3】一実施形態に係る検出支援装置の設定処理を示すフローチャートである。
【
図4】一実施形態に係る検出支援装置による検出支援処理を示すフローチャートである。
【
図5】検出支援装置の基本構成を示す概略ブロック図である。
【
図6】少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【0010】
以下、図面を参照しながら実施形態について詳しく説明する。
図1は、一実施形態に係る障害検出システムの構成を示す概略図である。
障害検出システム1は、複数の機器10のうちのある機器10に障害が発生したときに、機器10の運用担当者に複数の機器10のログデータに基づいて障害の検出を支援する。障害検出システム1は、複数の機器10と、検出支援装置20とを備える。
複数の機器10は、それぞれ障害の検出対象となる装置である。
【0011】
図2は、一実施形態に係る検出支援装置の構成を示す概略ブロック図である。
検出支援装置20は、ログデータベース201、ワードデータベース202、ノウハウデータベース203、ログ取得部204、エラーコード抽出部205、重要度積算部206、障害判定部208、検索部209、抽出部207、出力部210、入力部211、記録部212を備える。
【0012】
ログデータベース201は複数の機器10が出力するログデータを記憶する。ログデータベース201が記憶するログデータには、過去ログデータが含まれる。
ワードデータベース202は、ログデータに出現するエラーコードに係るキーワードと、当該キーワードが障害の発生を示すものであるか、警告を示すものであるかを関連付けて記憶する。例えば、「FATAL」は、障害の発生を示すキーワードである。また例えば「ERROR」、「WARN」は、警告を示すキーワードである。キーワードは、ログデータのエラーコードの全部または一部であってよいし、エラーコードを正規表現で表したものであってもよい。ワードデータベース202は、警告を示すキーワードに関連付けて、警告重要度を記憶する。警告重要度は、高いほど機器に障害が生じる可能性が高いことを示す。警告重要度は、当該キーワードにマッチするログデータが検出されるたびに、値が積算される。ワードデータベース202は、エラーコードに関連付けて当該エラーコードの警告重要度を記憶する重要度記憶部の一例である。なお、他の実施形態においては、検出支援装置20は、重要度記憶部としてワードデータベース202以外の記憶部を備えてもよい。例えば、他の実施形態に係る重要度記憶部は、キーワードが障害の発生を示すものであるか、警告を示すものであるかを記憶せず、単にキーワードと警告重要度を関連付けて記憶するものであってもよい。
【0013】
ノウハウデータベース203は、複数の機器10の過去の障害に関する情報を記憶する。具体的には、ノウハウデータベース203は、機器10のIDと、障害の発生時刻と、障害に係るエラーコードと、障害の内容を示すエラーメッセージと、障害の原因と、障害を解消するための処置手段と、障害の再発を防止するための再発防止手段と、関連する他のエラーコードとを、関連付けて記憶する。ノウハウデータベース203が記憶する障害に係るエラーコードは、1つのエラーコードであってもよいし、複数のエラーコードであってもよい。ノウハウデータベース203は、1つの障害に係る複数のエラーコードを、順列として記憶する。すなわち、複数のエラーコードの順列は、複数のエラーコードがその順番で出現する場合に、障害が発生することを示す。
【0014】
ログ取得部204は、ログデータベース201から複数の機器10のログデータを取得する。
エラーコード抽出部205は、ログ取得部204が取得したログデータからエラーコードを抽出する。
重要度積算部206は、ワードデータベース202を参照して、抽出されたエラーコードの警告重要度を特定し、警告重要度を積算する。
【0015】
抽出部207は、ログ取得部204が取得したログデータのうち、抽出されたエラーコードの前後の所定行数に係る部分ログデータを抽出する。部分ログデータとしては、エラーコードの前後7行以上15行以下の部分が好ましく、エラーコードの前後10行の部分がさらに好ましい。複数のエラーコードの順列が検索された場合、抽出部207は、各エラーコードの前後の所定行数に係る部分を、時系列の降順に統合することで、1つの部分ログデータを生成する。
【0016】
障害判定部208は、抽出されたエラーコードが障害の発生を示すものである場合、機器10に障害が発生したと判定する。また障害判定部208は、抽出されたエラーコードが警告を示すものであって、かつ警告重要度が所定の閾値を超える場合、機器10に警告を通知するべきであると判定する。
【0017】
検索部209は、障害判定部208が障害を検知した場合、または警告を通知するべきと判定した場合に、ノウハウデータベース203から、取得したログデータに含まれるエラーコード(1つのエラーコード、複数のエラーコードの順列、または関連する他のエラーコード)を検索する。
【0018】
出力部210は、障害が発生したことを示す通知と、部分ログデータと、検索されたエラーコードに関連付けられたエラーメッセージ、原因、処置手段、および再発防止手段を、運用担当者に出力する。出力の例としては、ディスプレイへの表示、シートへの印刷、スピーカからの発声、外部装置への送信、外部媒体への記録などが挙げられる。
【0019】
入力部211は、機器10に発生した障害に係る情報の入力を受け付ける。具体的には、入力部211は、障害に係るエラーコードと、障害の内容を示すエラーメッセージと、障害の原因と、障害を解消するための処置手段と、障害の再発を防止するための再発防止手段と、関連する他のエラーコードとの入力を受け付ける。
【0020】
記録部212は、入力部211に入力された情報と、障害判定部208が検知した障害が発生した機器10のIDおよび障害発生時刻を、ノウハウデータベース203に記録する。また記録部212は、警告重要度が閾値を超えない場合、ワードデータベース202が記憶する警告重要度を、重要度積算部206によって積算された値に更新する。
【0021】
図3は、一実施形態に係る検出支援装置の設定処理を示すフローチャートである。
検出支援装置20による障害の検出支援処理を行う前に、検出支援装置20に予め設定処理を行う必要がある。
まず、管理者は、障害が発生したことを示すキーワードである障害キーワードを決定し、ワードデータベース202に記録する(ステップS1)。また管理者は、警告を示すキーワードである警告キーワードを決定し、警告重要度に関連付けてワードデータベースに記録する(ステップS2)。
【0022】
管理者は、障害に係るエラーコードと、障害の内容を示すエラーメッセージと、障害の原因と、障害を解消するための処置手段と、障害の再発を防止するための再発防止手段と、関連する他のエラーコードとを関連付けてノウハウデータベース203に記録する(ステップS3)。また、ノウハウデータベース203に記録した各障害について、ログデータの参照先の機器10を関連付ける(ステップS4)。
【0023】
管理者は、警告重要度の閾値を決定し、障害判定部208に設定する(ステップS5)。管理者は、検出支援装置20によるログデータの解析周期を設定する(ステップS6)。管理者は、出力部210による情報の出力手段を決定する(ステップS7)。
【0024】
図4は、一実施形態に係る検出支援装置による検出支援処理を示すフローチャートである。
検出支援装置20は、ステップS6で設定された解析周期に係るタイミングごとに、以下の検出支援処理を実行する。検出支援装置20のログ取得部204は、ログデータベース201から機器10のログデータを取得する(ステップS51)。検出支援装置20による、障害検出の対象の機器10は、対象機器の一例である。次に、エラーコード抽出部205は、例えばワードデータベース202に記憶されたキーワードに基づいて、取得したログデータからエラーコードを抽出する(ステップS52)。抽出部207は、ログ取得部204が取得したログデータのうち、抽出されたエラーコードの前後の所定行数に係る部分ログデータを抽出する(ステップS53)。
【0025】
次に、検索部209は、ノウハウデータベース203から、抽出したエラーコード、ログデータに含まれる複数のエラーコードの順列、または関連するエラーコードを検索する(ステップS54)。
該当するエラーコードがノウハウデータベース203に記録されていない場合(ステップS54:NO)、検索部209は、ノウハウデータベース203から、ログデータに含まれる複数のエラーコードに含まれる複数のエラーコードの順列の一部、または複数のエラーコードの順序を無視した組み合わせを、検索する(ステップS55)。エラーコードの出現順序が異なる場合、および順列の一部が欠ける場合であっても、類似した障害である可能性があるため、これを出力することで、障害の検出の一助となり得る。
【0026】
該当するエラーコードがノウハウデータベース203に記録されている場合(ステップS54:YES)、またはステップS55で順列の一部もしくは順序を無視した組み合わせを検索した場合、障害判定部208は、ステップS52で抽出したエラーコードが、障害の発生を通知するものであるか否かを判定する(ステップS56)。抽出したエラーコードが、障害の発生を通知するものである場合(ステップS56:YES)、出力部210は、障害が発生した旨、ステップS54またはステップS55の検索結果、および部分ログデータを出力する(ステップS57)。
【0027】
他方、ステップS56において、抽出したエラーコードが、警告を通知するものである場合(ステップS56:NO)、障害判定部208は、抽出したエラーコードに関連付けられた警告重要度が、ステップS5で決定した閾値以上であるか否かを判定する(ステップS58)。警告重要度が閾値以上である場合(ステップS58:YES)、出力部210は、障害が発生する可能性がある旨の警告、ステップS54またはステップS55の検索結果、および部分ログデータを出力する(ステップS59)。
【0028】
他方、警告重要度が閾値未満である場合(ステップS58:NO)、重要度積算部206は、警告重要度に所定の値(デフォルトで1)を積算する(ステップS60)。記録部212は、ワードデータベース202においてステップS52で抽出されたエラーコードに関連付けられた警告重要度を、積算された警告重要度に更新する(ステップS61)。なお、警告重要度が閾値未満である場合(ステップS58:NO)、出力部210は障害の通知を出力しない。
【0029】
このように、本実施形態に係る検出支援装置20は、対象機器のログデータのうちエラーコードを含む部分ログデータを抽出し、ノウハウデータベース203から、当該ログデータに含まれる1つのエラーコードまたは複数のエラーコードの順列を検索する。部分ログデータは、対象の機器10が出力したログデータのうちエラーコードを含む部分が抽出されたものであるため、運用担当者は、該当箇所を確認することで、検出支援装置20によって検索された障害の内容と対象の機器10に生じた障害とを比較することが容易になる。これにより、検出支援装置20は、運用担当者の経験によらず、障害要因の特定を容易にすることができる。
【0030】
また、本実施形態に係る部分ログデータは、ログデータのうち、1つのエラーコードまたは複数のエラーコードのそれぞれの前後7行以上15行以下を抽出したものである。また好ましくは、エラーコードのそれぞれの前後10行を抽出したものである。発明者は、経験より膨大なログデータのうち、エラーコードのそれぞれの前後7行から15行の部分に、障害要因の特定に有用な情報が含まれる可能性が高く、特に前後10行以内の部分が障害要因を特定するために重要であるという知見を得ている。そのため、本実施形態によれば、膨大なログデータをすべて検証する必要がなくなり、障害要因を容易に特定することができる。
【0031】
また、本実施形態に係る検出支援装置20は、抽出されたエラーコードに関連付けられた警告重要度の積算値を算出し、積算値が閾値を超えた場合に、警告を出力する。これにより、検出支援装置20は、単に軽微なエラーが生じただけで頻繁に通知が発生することを防ぎつつ、エラーが積み重なった場合に、障害が発生する前に警告を発することができる。
【0032】
以上、図面を参照して一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、様々な設計変更等をすることが可能である。
【0033】
図5は、検出支援装置の基本構成を示す概略ブロック図である。
上述した実施形態では、検出支援装置20の一実施形態として
図1に示す構成について説明したが、検出支援装置20の基本構成は、
図5に示すとおりである。
すなわち、検出支援装置20は、抽出部207および検索部209を基本構成とする。
【0034】
抽出部207は、対象機器が出力した対象ログデータから、1つのエラーコードまたは複数のエラーコードの順列を含む部分ログデータを抽出する。
検索部209は、機器に生じた障害に関連付けて、前記機器が出力した過去ログデータに含まれる前記障害に係る1つのエラーコードまたは複数のエラーコードの順列を記憶するノウハウデータベースから、部分ログデータに含まれる前記1つのエラーコードまたは前記複数のエラーコードの順列を検索する。
これにより、検出支援装置20は、運用担当者の経験によらず、障害要因の特定を容易にすることができる。
【0035】
図6は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
コンピュータ90は、プロセッサ91、メインメモリ92、ストレージ93、インタフェース94を備える。
上述の検出支援装置20は、コンピュータ90に実装される。そして、上述した各処理部の動作は、プログラムの形式でストレージ93に記憶されている。プロセッサ91は、プログラムをストレージ93から読み出してメインメモリ92に展開し、当該プログラムに従って上記処理を実行する。また、ストレージ93には、上述した各データベースに対応する記憶領域が確保される。
【0036】
ストレージ93の例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、磁気ディスク、光磁気ディスク、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、半導体メモリ等が挙げられる。ストレージ93は、コンピュータ90のバスに直接接続された内部メディアであってもよいし、インタフェース94または通信回線を介してコンピュータ90に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ90に配信される場合、配信を受けたコンピュータ90が当該プログラムをメインメモリ92に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、ストレージ93は、一時的でない有形の記憶媒体である。
【0037】
また、当該プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、当該プログラムは、前述した機能をストレージ93に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【符号の説明】
【0038】
1 障害検出システム
10 機器
20 検出支援装置
201 ログデータベース
202 ワードデータベース
203 ノウハウデータベース
204 ログ取得部
205 エラーコード抽出部
206 重要度積算部
207 抽出部
208 障害判定部
209 検索部
210 出力部
211 入力部
212 記録部