(57)【要約】【課題】サイレント障害を監視する監視サーバを備えた監視システムにおいて、複数種類の状態を並行して観測分析することで、精度良く障害を検知可能とする障害検知装置を得る。【課題手段】監視対象ホストのサイレント障害の発生を監視する障害検知装置において、前記監視対象ホストにおけるシステムログと、前記監視対象ホストにおける過去に存在したシステムログのログ遷移である正常状態モデルとを比較して異常を判定する異常判定部と、前記異常判定部で異常が判定された場合に、ＳＮＳ情報、キャリアにおけるコールセンター情報、ユーザ行動情報、サービスへのアクセス数の内の少なくとも一つの観測データによるネガティブな事象を考慮するとともに、直前のシステムログの単語出現分布と、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布である結果予想モデルとを比較することでサイレント障害を推定する障害推定部とを備える。【選択図】図１
2015028700.tif 000002
【特許請求の範囲】
【請求項１】
監視対象ホストのサイレント障害の発生を監視する障害検知装置において、
前記監視対象ホストにおけるシステムログと、前記監視対象ホストにおける過去に存在したシステムログのログ遷移である正常状態モデルとを比較して異常を判定する異常判定部と、
前記異常判定部で異常が判定された場合に、ＳＮＳ情報、キャリアにおけるコールセンター情報、ユーザ行動情報、サービスへのアクセス数の内の少なくとも一つの観測データによるネガティブな事象を考慮するとともに、直前のシステムログの単語出現分布と、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布である結果予想モデルとを比較することでサイレント障害を推定する障害推定部と、
を具備したことを特徴とする障害検知装置。
【請求項２】
監視対象ホストのサイレント障害の発生を監視する障害検知装置において、
前記監視対象ホストにおける過去に存在したシステムログのログ遷移を正常状態モデルとして読み込むと共に、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布を結果予想モデルとして読み込む初期設定部と、
前記監視対象ホストにおけるログ遷移監視によりシステムログと、ＳＮＳ情報、キャリアにおけるコールセンター情報、ユーザ行動情報、サービスへのアクセス数の内の少なくとも一つの観測データとを読み込む情報収集部と、
前記システムログを前記各モデルと比較可能な形式に加工するデータ情報加工部と、
前記システムログと前記正常状態モデルを比較して異常を判定する異常判定部と、
前記異常判定部で異常が判定された場合に、前記観測データによるネガティブな事象を考慮するとともに、直前のシステムログの単語出現分布と前記結果予想モデルとを比較することでサイレント障害を推定する障害推定部と、
学習効果による正常状態モデルの生成保持と、前記障害推定部によりサイレント障害が推定された結果予想モデルの生成保持を行うモデル生成部と、
前記モデル作成部において一定期間学習することなく前記異常判定部において前記システムログの新規遷移を観測する非学習期間を管理するタイマ管理部と、
を具備したことを特徴とする障害検知装置。
【請求項３】
監視対象ホストのサイレント障害の発生を監視する方法において、
前記監視対象ホストのシステムログと、ＳＮＳ情報、キャリアにおけるコールセンター情報、ユーザ行動情報、サービスへのアクセス数の内の少なくとも一つの観測データについて、それぞれ正常状態モデルを生成保持し、複数種類の観測項目を組み合わせて異常の有無を観測する手順と、
前記監視対象ホストの過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布を結果予想モデルとして保持し、複数の観測項目において同時に異常が見受けられる際の直前システムログの単語出現分布と前記結果予想モデルとを比較することでサイレント障害の有無を判断する手順と、
を備えたことを特徴とした障害検知方法。
【請求項４】
前記結果予想モデルは、新規遷移の検知数に紐づく単語出現分布（出現率）情報、又は、新規遷移のカテゴリ構成要素に紐づく単語出現分布（出現率）情報により形成する請求項３に記載の障害検知方法。
【請求項５】
前記結果予想モデルを、マハラノビス距離、Z検定、T検定等の分析手法により、前記直前システムログの状態と比較する請求項３に記載の障害検知方法。
【請求項６】
前記ログ遷移監視により検出される新規遷移の組の数が、運用者が指定した閾値を超えた時点から運用者が指定した期間学習せず、前記新規遷移が毎時間閾値を超える数分出続けるか観測することにより、ノイズを除去し目立たず継続する前記閾値を超えた状態を注視して異常として捉えることでサイレント障害の可能性を疑う請求項３に記載の障害検知方法。
【請求項７】
前記閾値を超える新規遷移は、全て継続して観測する請求項６に記載の障害検知方法。
【請求項８】
前記閾値を超える新規遷移は、特定のキーワードを含む新規遷移のみ継続して観測する請求項６に記載の障害検知方法。
【請求項９】
複数の観測対象を、 システム稼働開始時あるいは稼働中に運用者が指定可能とした請求項３に記載の障害検知方法。
【請求項１０】
障害と判断された状態を障害状態モデルとして保管し、以降に同様の状態が検出された場合は、過去の障害状態モデルから抽出した情報を参考値として提示可能とした請求項３に記載の障害検知方法。
【請求項１１】
障害と判断された状態を、システム稼働開始時あるいは稼働中に運用者の指示により障害モデルに学習させることを可能とする請求項３に記載の障害検知方法。
【請求項１２】
請求項３に記載の監視対象ホストの障害検知方法の各手順をコンピュータにより実行することが可能な障害検知プログラム。
【請求項１３】
請求項１２に記載の障害検知プログラムが格納されたことを特徴とするコンピュータに読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の監視対象ホストのサイレント障害（発生しても症状が出ない障害）を監視する監視サーバを備えた障害検知システムに関し、特に、サイレント障害の発生を効率良く検出する障害検知装置、障害検知方法、障害検知プログラム及び記録媒体に関する。
【背景技術】
【０００２】
従来から、ウェブサーバやメールサーバ等のサーバシステムにおけるサイレント障害に関しては、監視対象ホストとなるサーバから出力されるテキストのログであるシスログ(syslog)をモニタリングし、ＣＰＵ負荷、メモリ利用量、Ｉ／Ｏ待ち数、パケット数等のリソース情報をチェックすることで、サイレント障害発生の有無を判断する手法が行われていた。
【０００３】
例えば、閾値監視による異常検知によれば、ＣＰＵ使用率、メモリ使用量等の指定された監視項目を定期的に監視し、観測値が設定した閾値を上下するかしないかで異常を検知する。死活監視、リソース監視技術を用いる一般的な監視ツール（Zabbix、Nagios等）が相当する。
また、相関分析による異常検知によれば、リソース情報、性能情報等の互いの時系列な普遍関係の存在を発見・モデル化・監視し、平常時モデルと異なる挙動の調査により異常を検知する。
状態遷移パターン分析による異常検知によれば、ログレコードやリソース情報の時系列な遷移パターンをモデル化・監視し、平常時モデルには無い遷移パターンの調査により異常を検知する。
上述したシステム又はプロセスの動作の異常を検出する技術は、例えば、特許文献１〜特許文献３及び非特許文献１〜２に開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特願２０１２−２７５１１３号
【特許文献２】特開２０１２−０９４０４６号公報
【特許文献３】特開２０１０−２５０５０２号公報
【非特許文献】
【０００５】
【非特許文献１】電子情報通信学会  Ｖｏｌ１００、Ｐ５０-Ｐ６０
【非特許文献２】NEC技報 Vol.63 No.2/2010．「WebSAM Ver.8が実現するクラウド時代のデータセンター運用」
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した手法であると、リソース情報のみを基に障害の有無を判断するため、障害発生に関して精度良い判断ができない（障害とは関係の無い異常も検知する率が高く、かつ検知した異常が何の障害によるものなのかわかりづらい）という課題があった。
また、全ての監視対象ホストに対してリソース情報を定期的にモニタリングする必要があるため、監視するトラフィック量が多くなり監視負荷も高くなるという課題があった。
【０００７】
従来の相関分析や遷移パターン分析といった検知技術では、監視システムは正常状態を示すモデルをシステム内部に保持し、定期的に観測する現時点の状態を正常状態モデルに照らし合わせ異常か否かを判定し、異常であればアラームを発行する。そこで、異常と判断された状態が継続し、アラームが連続的に発行されるのを防ぐため、一度検出された異常は正常状態としてモデルに学習され、以降同様の状態が発生しても異常としては認識しない仕組み（自動学習機能）を備えている。
しかし、この自動学習機能を利用した場合、同種の異常が複数回発生しても最初の一度しか検知されないため、規模は小さいが（件数は少ないが）継続的に異常が発生しているといった状況を検知することができないという問題があった。
【０００８】
本発明は上記実情に鑑みて提案されたもので、サイレント障害を監視する監視サーバを備えた監視システムにおいて、監視対象ホストを監視する場合の監視負荷の軽減を図りながら、複数種類の状態を並行して観測分析することで、精度良く障害を検知可能とする障害検知装置、障害検知方法、障害検知プログラム及び記録媒体を提供することを目的としている。
【課題を解決するための手段】
【０００９】
上記目的を達成するため本発明は、監視対象ホストのサイレント障害の発生を監視する障害検知装置において、次の構成を含むことを特徴としている。
前記監視対象ホストにおけるシステムログと、前記監視対象ホストにおける過去に存在したシステムログのログ遷移である正常状態モデルとを比較して異常を判定する異常判定部。
前記異常判定部で異常が判定された場合に、ＳＮＳ情報、キャリアにおけるコールセンター情報、ユーザ行動情報、サービスへのアクセス数の内の少なくとも一つの観測データによるネガティブな事象を考慮するとともに、直前のシステムログの単語出現分布と、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布である結果予想モデルとを比較することでサイレント障害を推定する障害推定部。
【００１０】
請求項２の発明は、監視対象ホストのサイレント障害の発生を監視する障害検知装置において、次の構成を含むことを特徴としている。
前記監視対象ホストにおける過去に存在したシステムログのログ遷移を正常状態モデルとして読み込むと共に、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布を結果予想モデルとして読み込む初期設定部。
前記監視対象ホストにおけるログ遷移監視によりシステムログと、ＳＮＳ情報、キャリアにおけるコールセンター情報、ユーザ行動情報、サービスへのアクセス数の内の少なくとも一つの観測データとを読み込む情報収集部。
前記システムログを前記各モデルと比較可能な形式に加工するデータ情報加工部。
前記システムログと前記正常状態モデルを比較して異常を判定する異常判定部。
前記異常判定部で異常が判定された場合に、前記観測データによるネガティブな事象を考慮するとともに、直前のシステムログの単語出現分布と前記結果予想モデルとを比較することでサイレント障害を推定する障害推定部。
学習効果による正常状態モデルの生成保持と、前記障害推定部によりサイレント障害が推定された結果予想モデルの生成保持を行うモデル生成部。
前記モデル作成部において一定期間学習することなく前記異常判定部において前記システムログの新規遷移を観測する非学習期間を管理するタイマ管理部。
【００１１】
請求項３は、監視対象ホストのサイレント障害の発生を監視する方法において、
前記監視対象ホストのシステムログと、ＳＮＳ情報、キャリアにおけるコールセンター情報、ユーザ行動情報、サービスへのアクセス数の内の少なくとも一つの観測データについて、それぞれ正常状態モデルを生成保持し、複数種類の観測項目を組み合わせて異常の有無を観測する手順と、
前記監視対象ホストの過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布を結果予想モデルとして保持し、複数の観測項目において同時に異常が見受けられる際の直前システムログの単語出現分布と前記結果予想モデルとを比較することでサイレント障害の有無を判断する手順と、
を備えたことを特徴としている。
【００１２】
請求項４は、請求項３の障害検知方法において、前記結果予想モデルは、新規遷移の検知数に紐づく単語出現分布（出現率）情報、又は、新規遷移のカテゴリ構成要素に紐づく単語出現分布（出現率）情報により形成することを特徴としている。
【００１３】
請求項５は、請求項３の障害検知方法において、前記結果予想モデルを、マハラノビス距離、Z検定、T検定等の分析手法により、前記直前システムログの状態と比較することを特徴としている。
【００１４】
請求項６は、請求項３の障害検知方法において、前記ログ遷移監視により検出される新規遷移の組の数が、運用者が指定した閾値を超えた時点から運用者が指定した期間学習せず、前記新規遷移が毎時間閾値を超える数分出続けるか観測することにより、ノイズを除去し、目立たず継続する前記閾値を超えた状態を注視して異常として捉えることでサイレント障害の可能性を疑うことを特徴としている。
【００１５】
請求項７は、請求項６の障害検知方法において、前記閾値を超える新規遷移は、全て継続して観測することを特徴としている。
【００１６】
請求項８は、請求項６の障害検知方法において、前記閾値を超える新規遷移は、特定のキーワードを含む新規遷移のみ継続して観測することを特徴としている。
【００１７】
請求項９は、請求項３の障害検知方法において、複数の観測対象を、 システム稼働開始時あるいは稼働中に運用者が指定可能としたことを特徴としている。
【００１８】
請求項１０は、請求項３の障害検知方法において、障害と判断された状態を障害状態モデルとして保管し、以降に同様の状態が検出された場合は、過去の障害状態モデルから抽出した情報を参考値として提示可能としたことを特徴としている。
【００１９】
請求項１１は、請求項３の障害検知方法において、障害と判断された状態を、システム稼働開始時あるいは稼働中に運用者の指示により障害モデルに学習させることを可能とすることを特徴としている。
【００２０】
請求項１２は、請求項３に記載の監視対象ホストの障害検知方法の各手順をコンピュータにより実行することが可能な障害検知プログラムを特徴としている。
【００２１】
請求項１３は、請求項１２に記載の障害検知プログラムが格納されたコンピュータに読み取り可能な記録媒体であることを特徴としている。
【発明の効果】
【００２２】
本発明によれば、サーバシステム（監視対象ホスト）からのシステムログと、ＳＮＳ（呟き情報等）、お客様からの問合せ状況（キャリアにおけるコールセンター情報等）、行動情報（Webアクセス情報、ＧＰＳ情報等）、サービスへのアクセス数の複数種類の観測項データを組み合わせて観測し、複数種類の観測項目において同時に異常が発見された場合に障害を疑うとともに、直前のシステムログの単語出現分布と、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布である結果予想モデルとを比較することでサイレント障害を推定するので、ログ分析とともに他の観測結果における異常を考慮することで、サーバシステムにおける障害発生の有無の判断についての精度を高めることができる。
【００２３】
また、観測対象にて検知した異常の数が、運用者が指定した閾値を超えた時間から運用者が指定した期間（例えば数時間とか２日間とか）モデル学習せず、一定期間異常が継続するかどうか観測することで、動的に学習することで異常有無が判断できない状況が発生することを防止する。
【図面の簡単な説明】
【００２４】
【図１】本発明の障害検知装置を使用して各種サーバシステムのシステムログと、ＳＮＳによるつぶやき情報を収集して障害を検知する場合のシステム全体構成図である。
【図２】本発明の障害検知装置の構成を示すブロック図である。
【図３】障害検知装置の異常判定部の構成を示すブロック図である。
【図４】監視装置に読み込まれたログ情報に対してクラスタリングを行ってモデル化する場合の説明図である。
【図５】障害検知装置が監視するサーバシステムにおける異常パターンの発生例を示すモデル図である。
【発明を実施するための形態】
【００２５】
監視対象ホストのサイレント障害の発生を監視する障害検知装置を備えた監視システムの実施形態の一例について、図１〜図４を参照しながら説明する。
障害検知装置（監視サーバ）１０は、図１に示すように、監視対象となる複数のサーバシステム（監視対象ホスト）１からシステムログ情報の収集を行うとともに、ソーシャルネットワーク（ＳＮＳ）２からの情報を収集し、それぞれ正常モデルとの比較を行い、双方異常であればサイレント障害の発生を疑うとともに、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布である結果予想モデルとの照合を行うことでサイレント障害の有無を推定し、各サーバシステム（監視対象ホスト）１の運用者に対してメールや画面表示、音声等でアラームを発行して障害検知結果の通知を行うものである。
【００２６】
障害検知装置（監視サーバ）１０は、Linux（登録商標）等の一般的なオペレーティングシステム（ＯＳ）を含む基本プログラムや各種の基本デバイスが記憶されたＲＯＭと、各種のプログラムやデータが記憶されるハードディスクドライブ装置（ＨＤＤ）と、ＣＲ−ＲＯＭやＤＶＤ等の記憶媒体からプログラムやデータを読み出すメディアドライブ装置と、プログラムを実行するＣＰＵと、このＣＰＵにワークエリアを提供するＲＡＭと、外部装置と通信するパラレル／シリアルＩＦとを主要な構成としたコンピュータで構成され、記録媒体等を介して監視プログラムがＨＤＤに格納されることで、監視対象となる各種サーバシステム１のサイレント障害を検知可能なように構成されている。
【００２７】
障害検知装置（監視サーバ）１０は、図２に示すように、初期設定パラメータや過去モデルを読み込む初期設定部１１と、複数観測データを読み込む情報収集部１２と、読み込んだデータを加工するデータ情報加工部１３と、異常判定部１４と、障害推定部１５と、モデル生成部１６と、タイマ管理部１７と、アラーム発行部１８を備えて構成されている。
【００２８】
初期設定部１１は、各種サーバシステム（監視対象ホスト）１における過去に存在したシステムログのログ遷移を正常状態モデルとして読み込むと共に、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布を結果予想モデルとして読み込む。
結果予想モデルは、例えば、「仮にこのようなパターンの新規遷移が出現した場合には、それ以前の一定期間におけるログ中の単語出現率はこういう分布と予想される」といったような予測を、過去のデータを基に行うことで作成される単語出現率の分布モデルから構成される。
【００２９】
具体的な結果予想モデルＸ（単語出現分布）は、
単語の分布モデルが、
単語１：６０％
単語２：５０％
単語３：３５％
…
単語Ｎ：〜％
のように、出現率トップＮ個の単語をピックアップしたデータから構成される。
【００３０】
そして、結果予想モデルと実際のシステムログの分布モデルとを比較した場合に、実際のシステムログの分布モデルが結果予想モデルで予測された分布モデル通りにならなかった場合、未知の障害（サイレント障害）として疑うことが可能となる。
【００３１】
初期設定部１１には、過去に生成した障害状態モデルの情報が存在する場合には、障害状態モデルとして読み込まれる。
例えば、過去に障害と判断した際の
（１）各種サーバシステム１におけるログ遷移パターン、
（２）ＳＮＳ情報２におけるネガティブな呟きの出現数（率）リスト等、
（３）各種サーバシステム１における直近のログメッセージ中の単語出現分布、
が障害状態モデルとして保管される。
初期設定部１１に読み込まれた各情報は、情報収集部１２、データ情報加工部１３、異常判定部１４、障害推定部１５、モデル生成部１６の各部間で読み出し可能なメモリ上にて共有する。
また、障害検知を行う場合の各種設定に関する初期設定パラメータが読み込まれる。
【００３２】
情報収集部１２は、各サーバシステム（監視対象ホスト）１におけるログ遷移監視によるシステムログと、呟き等のＳＮＳ情報、キャリアにおけるコールセンター情報、Ｗｅｂアクセス情報やＧＰＳ情報等のユーザ行動情報、サービスへのアクセス数等の複数種類の観測データを読み込む。
【００３３】
データ情報加工部１３は、情報収集部１２で収集されたシステムログ及び観測データについて、初期設定部１１に読込まれた正常状態モデル、障害状態モデル、結果予側モデルの各モデルと比較可能なデータ形式への加工が行われる。
【００３４】
異常判定部１４は、システムログ（原因情報源）と正常状態モデル（原因情報源正常モデル）、観測データ（結果情報源）と正常状態モデル（結果情報源正常モデル）を比較して異常を判定する。
異常判定部１４は、システムログの分析を行って異常の有無を判断するため、図３に示すように、ログ読込部２１と、ログクラスタリング部２２と、ログ分析部２３とを備えて構成されている。ログ読込部２１では、各サーバシステム１で日々発生する各種のログ情報(syslog)が情報収集部１２及び情報加工部１３を介してサーバシステム毎に定期的に読み込まれる。
【００３５】
ログクラスタリング部２２は、一つのサーバシステム（仮想ホスト）１に対して読み込まれた不定形なログ情報(syslog)をカテゴリ毎に分類する。ログ情報(syslog)は、時刻、ホスト名、プログラム名等の情報が含まれている。カテゴリは、ログ情報(syslog)を構成する項目の数や種類により複数のカテゴリに分類される。例えば、図４のように、一つのサーバシステム（仮想ホスト）から読み込まれた各ログ情報について、項目の数や種類（ログ情報のＡug719:00:04〜Ｖpxaに続く省略されたメッセージ部分が異なる）から同種のログ情報同士をカテゴリＡ，Ｂ，Ｃ，Ｄ…に分類する。
【００３６】
モデル生成部１６では、ログ情報の分類結果を基に正常時におけるログ情報の遷移モデルを作成する。例えば、ログ情報をカテゴリＡ，Ｂ，Ｃ，Ｄに分類した図４の場合、遷移元と遷移先の平常モデルとして「カテゴリＡからＢ」「カテゴリＡからＤ」「カテゴリＢからＣ」「カテゴリＣからＡ」が登録（モデル化）される。
正常時におけるログ情報の遷移モデルは、例えば障害のないログ情報の１か月分から予め複数の遷移モデルとして登録しておく。
また、障害のないログ情報の遷移モデルは、正常モデルとして常時追加されるように構成してもよい。
【００３７】
ログ分析部２３は、新たに読み込まれたログ情報のログ分類結果と、モデル生成部１６で作成された遷移モデルを比較し、ログ分類結果によるログ遷移が遷移モデルに無い場合をログ変化と認定する処理が行われる。例えば、正常モデルとして「カテゴリＡからＢ」「カテゴリＡからＤ」「カテゴリＢからＣ」「カテゴリＣからＡ」が登録（モデル化）されている場合に、「カテゴリＢからＣ」「カテゴリＣからＢ」「カテゴリＡからＢ」「カテゴリＢからＡ」「カテゴリＣからＡ」といった遷移を検知したとすると、「カテゴリＣからＢ」と「カテゴリＢからＡ」が正常モデルに無いため、新規遷移（ログ変化の認定による異常検知）を検出したことになる。
そして、ログ分析部２３がログ変化を検知した場合（異常が判定された場合）、障害推定部１５に対して障害推定指示信号が出力し、この信号を受けた障害推定部１５は、複数種類の観測データと前記結果予想モデルから障害を推定する処理が行われる。
【００３８】
すなわち、障害推定部１５では、異常判定部１４で異常が判定された場合に、観測データによるネガティブな事象を考慮するとともに、直前のシステムログの単語出現分布と上述した結果予想モデルとを比較することでサイレント障害の有無を推定する。
過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布である結果予想モデルは、事前に初期設定部１１に読込まれるものであるが、新規遷移が形成されるパターンは、（ａ）既存カテゴリの組み合わせで形成される新規遷移と、（ｂ）新規カテゴリを含む新規遷移、が存在する。
（ａ）の既存カテゴリの組み合わせによる場合は、上述した例によると、「カテゴリＡからＢ」「カテゴリＡからＤ」「カテゴリＢからＣ」「カテゴリＣからＡ」が正常モデルとして登録（モデル化）されている場合に、正常モデルに無い「カテゴリＣからＢ」と「カテゴリＢからＡ」が該当する。
（ｂ）新規カテゴリを含む新規遷移は、新しいカテゴリを含む組み合わせが該当する。
【００３９】
本例においては、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布である結果予想モデルは、新規遷移のカテゴリ構成要素に紐づく単語出現分布（出現率）情報により形成したが、新規遷移の検知数に紐づく単語出現分布（出現率）情報により形成するようにしてもよい。
【００４０】
モデル生成部１６は、正常状態モデルを生成保持（学習）するとともに、障害推定部１５によりサイレント障害が推定された結果予想モデルを生成保持する。
モデル生成部１６に障害推定部１５によりサイレント障害が推定された結果予想モデルが保持されている場合において、異常判定部１４でログ遷移が障害状態モデルのログ遷移パターンと同じであると判定された時、ある区間でのネガティブな呟きの出現数（率）が障害状態モデル以上で、収集した直近のログメッセージ中の一般的な分布類似計算手法による単語出現分布が障害状態モデルと類似している場合には、障害推定部１５において無条件にサイレント障害と推定する。
また、段落番号００３１で記載した（１）〜（３）の３項目について、ＡＮＤ条件で障害を推定するようにしてもよい。
【００４１】
タイマ管理部１７は、モデル作成部１６において一定期間学習することなく異常判定部１４においてシステムログの新規遷移を観測する非学習期間を管理する。
すなわち、ログ遷移監視により検出される新規遷移の組の数が、運用者が指定した閾値を超えた時点から運用者が指定した期間学習せず、新規遷移が毎時間閾値を超える数分出続けるか観測することにより、ノイズを除去し、目立たず継続する前記閾値を超えた状態を注視して異常として捉えることでサイレント障害の可能性を疑う。
この結果、一定期間学習を行わないことで、即座に障害とみなすことなく、継続的に観測することにより、ノイズ（障害ではない一時的な作業等による異常）を無視できる。また、サイレント障害の症状は目立たず継続して少しずつ悪化するケースが多いため、このような事象による障害を捉え易くすることができる。
【００４２】
次に、上述した障害検知装置（監視サーバ）１０を使用して各種サーバシステム（監視対象ホスト）１のサイレント障害を検知する手順について、図１を参照して説明する。
手順１として、ＳＮＳ情報２からのネガティブな呟きの出現数（率）を定期的に観測し、観測結果を蓄積する。
手順２として、各サーバシステム１からの正常状態のログを読み込み、ログ遷移の正常状態モデルを作成する。
手順３として、各サーバシステム１から定期的にログを読み込み、新規遷移を監視する（一定期間継続して発生するか観測する）。
【００４３】
手順４として、連続して新規遷移を検出した場合に、検出した期間内のネガティブな呟きの出願数（率）が閾値を超えている場合、双方の異常から障害を疑い、次の手順に進む。
手順５として、検出した新規遷移のパターンに紐づく単語出現分布（結果予想モデル）と、直近のログメッセージ中の単語出現分布をチェックする。
【００４４】
結果予想モデルと直近のシステムログとの照合は、例えば該当する結果予側モデルが上述した結果予想モデルＸ（単語出現分布）である場合、単語の分布モデルが異なっていないかついて判定される。異なっていれば、従前の説明変数で説明できない事象を検知したこととなり、サイレント障害を疑うこととなる。
結果予想モデルＸ（単語出現分布）と、直前ログの単語出現率の分布モデルとが異なっているかどうかの判定は、例えば、前ログの単語出現率の分布モデルの各単語の出現率が結果予想モデルＸの各単語の出現率とどのくらい一致しているか（乖離しているか）により判定される。どの程度の一致（乖離）による判断基準は、初期設定部１１への入力で予め設定することができる。
また、結果予想モデルと直近のシステムログとの照合を行うに際して、マハラノビス距離、Ｚ検定、Ｔ検定等の分析手法により、直前システムログの状態と比較してもよい。
【００４５】
手順６として、観測した直近の単語出現分布が、結果予側モデルとかけ離れていた場合（予想精度が低かった場合）、未知の障害を疑い、実際のシステムログの分布モデルにおいて、予想外に出現したり、出現しなかった単語を運用者に通知することで、サイレント障害原因追究の参考情報として提供することができる。
手順７として、既知の障害として結果予想モデルはモデル生成部１６で学習される。
また、障害と判断された状態を、システム稼働開始時あるいは稼働中に運用者の指示により障害モデルに手動操作により学習させるようにしてもよい。
【００４６】
各種サーバシステム（監視対象ホスト）１のサイレント障害を検知するに際して、一定期間、ログの新規遷移とＳＮＳ情報（ネガティブな呟きの出現）２を監視した例を図５に示す。
図５において、棒状グラフで検出された各システムログにおける障害個数は、単発では障害と疑われる閾値を下回っているが、閾値より低い異常が連続的に発生している状態（状態Ａ）であり、その期間において、ネガティブな呟きの出現数（もしくは出現率）が閾値以上（状態Ｂ）であれば、状態Ａ及び状態Ｂからサイレント障害を疑うことが行われる。
すなわち、状態Ｂにおいては、ＳＮＳ情報２の呟き情報において、ネガティブワードの出現数（もしくは出現率）が、ある期間において運用者が設定した閾値未満の場合は正常状態とし、閾値以上の場合は異常と判断する。
【００４７】
また、閾値を超える新規遷移の出現数は、全て継続して観測してもよいし、特定のキーワードを含む新規遷移のみ継続して観測するようにしてもよい。
【００４８】
尚、図５においては、ＳＮＳ情報２における状態Ｂは、Twitter情報（どのような呟きがされているか）を例にしたが、これに代えた（若しくは加えた）判定基準として、
・コールセンター情報（お客様からどのような問い合わせを受けているか）
・Ｗｅｂアクセスログ（どのようなＷｅｂサイトにアクセスされているか）
・ＧＰＳ情報（どのような場所に移動しているか）
・サービスへのアクセス数
といったものも考慮することができる。
これらの情報についても、正常状態を定義することで異常を識別可能とするため、本発明の障害検知方法を実現するための状態判定要素の一つとなり得る。
また、複数の観測対象のいずれかを観測データとして使用するかについては、障害検知装置のシステム稼働開始時（初期設定パラメータ入力時）、あるいは稼働中に運用者が指定可能なようにしてもよい。
【００４９】
これらにおいて、正常と異常を判断する場合の手法について、以下に説明する。
・コールセンター情報（お客様からどのような問い合わせを受けているか）による場合
対応者のメモおよびテキスト化された音声データにおいて、ネガティブワードの出現数（もしくは出現率）が、ある期間において運用者が設定した閾値未満の場合は正常状態とし、閾値以上の場合は異常と判断する。
【００５０】
・Ｗｅｂアクセスログ（どのようなＷｅｂサイトにアクセスされているか）による場合
観測対象システムを利用して提供されるサービスや、該当サービスを提供する会社に関わるホームページのアクセス数ランキングを正常時にモデル化しておき、ある期間における各ホームページへのアクセス数をモデルと照合して異常を判断する。
例えば、ＫＤＤＩが提供する各ホームページへのアクセス数を正常時にモデル化しておき、普段は滅多にアクセスされないＨＰへのアクセスが急に多くなった場合に異常と判断する。
また、関連ホームページ内で検索されるキーワードにおいて、ネガティブワードの出現数（もしくは出現率）が、ある期間において運用者が設定した閾値以上の場合も異常と判断する。
【００５１】
・位置情報（どのような場所に移動しているか）による場合
観測対象システムを利用して提供されるサービスに接続する端末のGPS情報等から、正常時の動き（ＧＰＳ等の履歴）をモデル化しておき、ある期間においてモデルに無い位置へ移動した端末数が、運用者が設定した閾値以上の場合は異常と判断する。
【００５２】
・サービスへのアクセス数による場合
観測対象システムを利用して提供されるサービスに対する接続要求数を正常時にモデル化しておき、ある期間におけるサービスへの接続要求数が、ある期間において運用者が設定した上下閾値の以上もしくは以下となった場合に異常と判断する。
【００５３】
上述した障害検知装置によれば、直前のシステムログの単語出現分布と、過去のシステムログの新規遷移出現時に紐付いた一定時間内の単語出現分布である結果予想モデルとを比較するとともに、複数種類の観測データを分析することで障害か否かの判断を行うので、検知した異常をサイレント障害と判断する精度を高めることができる。
【００５４】
システムログのログ遷移に異常があった場合においても、即座に障害とみなさず継続的に観測することにより、ノイズ（障害ではない一時的な作業等による異常）を無視できる。また、サイレント障害の症状は目立たず継続して少しずつ悪化するケースが多いため、該当障害を捉え易くすることができる。
【００５５】
結果予測モデルと共起変数の特定により、事象と相関のある新規の原因（未知の原因）を特定できる。すなわち、予想とかけ離れた異常状態を見つけることにより、未知の状態を検出することができる。
【符号の説明】
【００５６】
１…サーバシステム（監視対象ホスト）、  ２…ＳＮＳ情報、  １０…障害検知装置（監視サーバ）、  １１…初期設定部、  １２…情報収集部１２、  １３…データ情報加工部、  １４…異常判定部、  １５…障害推定部、  １６…モデル生成部、  １７…タイマ管理部、  １８…アラーム発行部１８、  ２１…ログ読込部、  ２２…ログクラスタリング部、  ２３…ログ分析部。
【図１】
2015028700.tif 000003
【図２】
2015028700.tif 000004
【図３】
2015028700.tif 000005
【図４】
2015028700.tif 000006
【図５】
2015028700.tif 000007