JP2021092938A - 監視サーバ、プログラム、及び監視方法 - Google Patents

監視サーバ、プログラム、及び監視方法 Download PDF

Info

Publication number
JP2021092938A
JP2021092938A JP2019222629A JP2019222629A JP2021092938A JP 2021092938 A JP2021092938 A JP 2021092938A JP 2019222629 A JP2019222629 A JP 2019222629A JP 2019222629 A JP2019222629 A JP 2019222629A JP 2021092938 A JP2021092938 A JP 2021092938A
Authority
JP
Japan
Prior art keywords
state
change
data
unit
log
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
JP2019222629A
Other languages
English (en)
Other versions
JP7437145B2 (ja
Inventor
大輔 池田
Daisuke Ikeda
大輔 池田
光平 八代
Kohei Yashiro
光平 八代
千春 小針
Chiharu Kohari
千春 小針
拓也 内藤
Takuya Naito
拓也 内藤
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.)
TIS Inc
Original Assignee
TIS Inc
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 TIS Inc filed Critical TIS Inc
Priority to JP2019222629A priority Critical patent/JP7437145B2/ja
Publication of JP2021092938A publication Critical patent/JP2021092938A/ja
Application granted granted Critical
Publication of JP7437145B2 publication Critical patent/JP7437145B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Testing And Monitoring For Control Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】対象機器で検出された状態変化の原因調査を支援する監視サーバを提供する。【解決手段】監視サーバ100は、データ取得部121、状態変化検出部122、変化時点検出部123、ログ抽出部124、関連情報生成部125を備える。データ取得部は、監視の対象機器から、構成要素の状態の履歴を示す状態データと、イベントの履歴を示すログデータを取得する。モデル記憶部141は、構成要素の通常時の時系列の状態パターンを示す状態パターンモデルを記憶し、状態変化検出部は、状態パターンモデルを参照して、状態パターンから逸脱する構成要素の状態変化を検出する。変化時点検出部は、状態変化が起きた変化時点を検出する。ログ抽出部は、ログデータから変化時点と関連するログデータを抽出する。関連情報生成部は、変化時点の状態変化と、ログ抽出部により抽出されたログデータを関連付けて、ユーザ端末に出力する状態変化ログ関連情報を生成する。【選択図】図3

Description

本発明は、監視サーバ、プログラム、及び監視方法に関する。
従来、システム運用や工場の製造過程において、システムを構成する機器や製造のための機器(以下、「対象機器」という)の時系列の状態を示す状態データを監視し、監視の結果に基づき対象機器の異常を検知する技術が知られている。また、この異常を検知する技術のうち、対象機器における通常時の時系列の状態のパターン(以下、「対象機器」という)に対する状態データの急激な振る舞いの変化を検出することで、対象機器の異常を検知する、いわゆる「変化点検出」が知られている。
下記非特許文献1に開示されている変化点検出の技術では、動的に変化する時系列の状態データ(多変量データ)に含まれる変数(センサー)同士の相関関係のうち不要な成分を除いて本質的な依存関係のみをスパース構造として抽出し、その構造変化に基づいて、状態の異常度を判定する。
Tsuyoshi Ide(井出剛),"IBMプロフェッショナル論文 スパース構造学習によるセンサー・データの変化点検出と異常解析",Provision,2010年3月18日,No.65,p.71−76
非特許文献1のように変化点検出をはじめとして対象機器の異常を検知する技術は多く存在するが、システムの運用などでは、システム管理者などは、対象機器の異常を把握するだけではなく、この異常がどのような原因によるものかを調査する必要がある。例えば、システム管理者は、システム運用の障害管理において、検出された対象機器の状態変化が過去のどの機器のどの処理又はどの構成変更などにより引き起こされたものかといった原因を調査する必要がある。
そこで、本発明は、対象機器の構成要素から検出された状態変化について、原因調査を支援することが可能な監視サーバなどを提供することを目的とする。
本発明の一態様に係る監視サーバは、監視対象の対象機器から、対象機器における構成要素の状態の履歴を示す状態データと、対象機器におけるイベントの履歴を示すログデータとを取得するデータ取得部と、状態データに基づいて、対象機器における通常時の時系列の状態パターンを示す状態パターンモデルを記憶するモデル記憶部を参照して、状態パターンモデルを用いて状態パターンから逸脱する構成要素の状態変化を検出する状態変化検出部と、状態変化が起きた変化時点を検出する変化時点検出部と、ログデータから、変化時点と関連するログデータを抽出するログ抽出部と、変化時点における状態変化とログ抽出部により抽出されたログデータとを関連付けてユーザが使用する端末に出力するための状態変化ログ関連情報を生成する関連情報生成部と、備える。
本発明の一態様に係るプログラムは、コンピュータに、監視対象の対象機器から、対象機器における構成要素の状態の履歴を示す状態データと、対象機器におけるイベントの履歴を示すログデータとを取得するデータ取得機能と、状態データに基づいて、対象機器における通常時の時系列の状態パターンを示す状態パターンモデルを記憶するモデル記憶機能を参照して、状態パターンモデルを用いて状態パターンから逸脱する構成要素の状態変化を検出する状態変化検出機能と、状態変化が起きた変化時点を検出する変化時点検出機能と、ログデータから、変化時点と関連するログデータを抽出するログ抽出機能と、変化時点における状態変化とログ抽出部により抽出されたログデータとを関連付けてユーザが使用する端末に出力するための状態変化ログ関連情報を生成する関連情報生成機能と、を実現させる。
本発明の一態様に係る監視方法は、コンピュータが、監視対象の対象機器から、対象機器における構成要素の状態の履歴を示す状態データと、対象機器におけるイベントの履歴を示すログデータとを取得し、状態データに基づいて、対象機器における通常時の時系列の状態パターンを示す状態パターンモデルを記憶するモデル記憶機能を参照して、状態パターンモデルを用いて状態パターンから逸脱する対象機器における状態変化を検出し、状態変化が起きた変化時点を検出し、ログデータから、変化時点と関連するログデータを抽出し、変化時点における状態変化とログ抽出部により抽出されたログデータとを関連付けてユーザが使用する端末に出力するための状態変化ログ関連情報を生成する。
上記の態様によれば、対象機器における構成要素の状態変化が起きた変化時点を検出し、当該変化時点と関連する対象機器のログデータを、上記状態変化と関連付けてユーザが使用する端末に出力することができる。これにより、ユーザは、状態変化の原因の候補としてログデータに示された対象機器の動作や構成変更とするイベントなどの履歴を把握することができる。
本発明によれば、対象機器において構成要素から検出された状態変化について、原因調査を支援することが可能な監視サーバなどを提供することができる。
本実施形態に係る監視システムのシステム構成例を説明するための図である。 本実施形態に係る監視システムのシステム概要を説明するための図である。 本実施形態に係る監視サーバの機能構成の一例を示す図である。 本実施形態に係る単一の状態データに対する変化点検出の波形図である。 本実施形態に係る複数の状態データ間の相関関係の構造変化の模式図である。 本実施形態に係る監視システムの画面例を示す図である。 本実施形態に係る監視システムの画面例を示す図である。 本実施形態に係る監視サーバの動作例を示す図である。 本実施形態に係る監視システムの動作例を示す図である。 本実施形態に係る監視システムの動作例を示す図である。 図10Aが示す動作例に後続する動作例を示す図である。 図10Bが示す動作例に後続する動作例を示す図である。 本実施形態に係る監視システムの動作例を示す図である。 本実施形態に係るサーバ装置のハードウェア構成の一例を示す図である。
添付図面を参照して、本発明の好適な実施形態(以下、「本実施形態」という)について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
本実施形態において、「部」や「手段」、「装置」、「システム」とは、単に物理的手段を意味するものではなく、その「部」や「手段」、「装置」、「システム」が有する機能をソフトウェアによって実現する場合も含む。また、1つの「部」や「手段」、「装置」、「システム」が有する機能が2つ以上の物理的手段や装置により実現されても、2つ以上の「部」や「手段」、「装置」、「システム」の機能が1つの物理的手段や装置により実現されてもよい。
<1.システム構成>
本実施形態では、システム管理者であるユーザUが、本実施形態に係る監視システム1を利用して、監視対象の第1対象機器T1及び第2対象機器T2を含む対象システムSの運用を監視する例を用いて説明するが、これに限る趣旨ではない。なお、第1対象機器T1と、第2対象機器T2とは、特に区別の必要が無い場合は、まとめて「対象機器T」という。
図1を参照して、本実施形態に係る監視システム1のシステム構成例を説明する。
監視システム1は、ユーザUが、対象システムSの運用を監視するためのシステムである。図1に示すように、監視システム1は、対象機器Tと、監視サーバ100と、対象機器Tの監視結果などをユーザUに対して出力する監視端末200とを含んでもよい。また、監視システム1は、例えば、対象機器Tにおける構成要素の状態データやログデータを収集するために対象機器Tに搭載された監視サーバ100のエージェントプログラム300(以下、単に「エージェント300」という)を含んでもよい。なお、状態データとログデータとは、特に区別の必要が無い場合は、まとめて「監視データ」ともいう。また、対象機器Tにおける構成要素は、例えば、対象機器Tにおける構成するアプリケーション、ミドルウェア、OS、又はハードウェアなどである。対象機器Tにおける構成要素は、監視対象の単位であってもよい。
「状態データ」とは、対象機器Tにおける構成要素の状態の履歴を示すデータである。また、状態データは、対象機器Tにおける監視サーバ100の監視対象のデータでもある。状態データは、例えば、いわゆるメトリクスデータであってもよく、エージェント300などにより測定されたデータであってもよい。状態データは、例えば、監視対象が対象機器TのOSであれば、メモリ容量の使用率若しくはCPU使用率などのリソースの使用状態を示すメトリクス、総プロセス数、又はログインユーザ数などであってもよい。また、状態データは、例えば、監視対象が対象機器Tに搭載されたアプリケーションであれば、当該アプリケーションのヒープ領域やインデックスの使用状態などであってもよい。また、状態データは、他の例として、数値ではなく、low/mid/highなどの「程度」を表すものであってもよい。
「ログデータ」とは、対象機器Tにおけるイベントの履歴を示すデータである。ログデータは、例えば、対象機器Tを構成するハードウェアやソフトウェアに関する動作履歴や構成変更履歴を含んでもよい。また、ログデータは、例えば、障害発生や例外処理発生などのエラーや警告の履歴を含んでもよい。
対象機器Tと監視サーバ100とは、ネットワークNを介して互いに接続されている。また、監視サーバ100と対象機器Tとは、例えば、ネットワークN上に構築されたVPN(Virtual Private Network)を利用するものであって、VPN装置を介して通信してもよい。監視サーバ100から対象機器Tへのリモートアクセスにあたっては、例えば、TELNETなどの通信プロトコル、若しくはSSH(Secure Shell)又はVNC(Virtual Network Computing)などのリモートアクセスツールをそれぞれ用いて実現してもよい。
監視システム1は、例えば、図示していないが、監視サーバ100と対象機器Tとの間に、対象機器Tにおける構成要素の監視データを収集するための収集サーバと当該収集サーバのエージェントプログラム(以下、「収集エージェント」という)とを設けてもよい。また、この収集サーバと収集エージェントとは、サードパーティーシステムのものであってもよい。監視サーバ100と対象機器Tとは、例えば、収集サーバと収集エージェントを介して、監視データの送受信などの通信をしてもよい。
ネットワークNは、無線ネットワークや有線ネットワークにより構成される。ネットワークの一例としては、携帯電話網や、PHS(Personal Handy−phone System)網、無線LAN(Local Area Network)、3G(3rd Generation)、LTE(Long Term Evolution)、4G(4th Generation)、5G(5th Generation)、WiMax(登録商標)、赤外線通信、Bluetooth(登録商標)、有線LAN、電話線、電灯線ネットワーク、IEEE1394などに準拠したネットワークがある。
監視サーバ100は、例えば、対象システムSの対象機器Tにおけるアプリケーション、ミドルウェア、OS、及びハードウェアの少なくとも一つの構成要素を監視するサーバ装置である。監視サーバ100は、所定のプログラムを実行することにより、対象機器Tにおける構成要素の動作状況や通信状況などをモニタリングしたり、対象システムSの運用を監視するための収集された状態データを分析したり、当該分析結果をユーザUに通知したりするサーバ機能を実現する。また、監視サーバ100は、例えば、対象機器Tへのリモートアクセスなどが可能であってもよい。
監視サーバ100からユーザUへの上記分析結果などの通知は、様々な通知の態様が適用可能である。当該通知は、例えば、監視端末200に備えられている既存のメッセージソフトに対するメッセージの出力若しくは既存のメールソフトに対するメール送信、対象システムSの運用状況を示す各種情報・各種データを統合して表示するダッシュボード(以下、単に「ダッシュボード」という)などの管理画面上での出力、又は電話による発呼などが考えられる。なお、ダッシュボードなどの管理画面は、例えば、監視端末200のWebブラウザで表示させるものであってもよい。また、ダッシュボードなどの管理画面は、他の例として、監視端末200に監視システム1専用のアプリケーションプログラム(以下、「監視アプリ」ともいう)をインストールさせて、監視アプリで表示させるものであってもよい。
監視端末200は、ユーザUからの対象システムSの監視のための操作入力や監視サーバ100との通信が可能なスマートフォンやラップトップなどの端末である。監視端末200は、ユーザが使用する端末の一態様である。監視端末200は、所定のプログラムを実行することにより、監視サーバ100と連携して監視に関する情報を送受信したり監視に関する画面を表示したりユーザUの操作入力を受け付けたりする。
エージェント300は、監視データの収集のために、対象機器Tに搭載されるプログラムである。エージェント300は、例えば、搭載された対象機器Tにおける構成要素「OS」のCPU使用率、メモリ使用率、ネットワーク使用率、又はプロセス起動数などの状態データや対象機器Tのログデータを収集する。エージェント300は、収集したこれらの監視データを監視サーバ100へ送信する。
<2.概要>
図2を参照して、監視システム1の概要を説明する。
(1)図2に示すように、監視サーバ100は、サイクリックに又はイベントドリブンで、対象機器Tから状態データとログデータとを取得する。
(2)監視サーバ100は、状態データに基づき、状態パターンモデルを用いて対象機器Tの構成要素において、通常時の時系列の状態パターンから逸脱する状態変化を検出する。ここで「状態パターン」とは、対象機器Tにおける構成要素の時系列の状態の推移をパターン化したものである。また、ここで「状態パターンモデル」とは、対象機器Tにおける構成要素の通常時の時系列の状態パターンを示すモデルである。また、監視サーバ100は、上記検出した状態変化が起きた変化時点を検出する。
監視サーバ100は、例えば、時系列上のあるタイミングにおいて対象機器TのOSのCPU使用率が突如上昇した場合でも、対象機器TのOSが通常時においても時系列上同じタイミングで上昇する傾向にあれば、上記状態変化が発生しているとは判定しない。言い換えれば、監視サーバ100は、上記のような場合において、対象機器TのOSのCPU使用率が通常時においては時系列上同じようなタイミングで上昇しない傾向にあれば、上記状態変化が発生していると判定する。そして、監視サーバ100は、当該状態変化を検出する。
(3)監視サーバ100は、取得したログデータから、上記(2)の変化時点と関連するログデータを抽出する。監視サーバ100は、例えば、当該変化時点が発生した日時(t)を基準として所定の期間内に記録されたログデータを抽出してもよい。(4)監視サーバ100は、抽出したログデータと上記(2)の変化時点の状態変化とを関連付けて出力するための後述のログ一覧画面D1(図6参照)を生成する。ログ一覧画面D1は、状態変化ログ関連情報の一態様である。監視サーバ100は、例えば、ログ一覧画面D1に表示させるログデータのうち上記状態変化と関連付けられているログデータのレコードにおいて、上記状態変化の原因の候補を示す「疑わしいログです」とするテキストメッセージを出力させてもよい。
上記構成によれば、対象機器Tにおける構成要素の状態変化が起きた変化時点を検出し、当該変化時点と関連する対象機器Tのログデータを、上記状態変化と関連付けて監視端末200に出力することができる。これにより、ユーザUは、状態変化の原因の候補としてログデータに示された対象機器の処理や構成変更などの履歴を把握することができる。
<3.機能構成>
図3を参照して、本実施形態に係る監視サーバ100の機能構成を説明する。図3に示すように、監視サーバ100は、通信部110と、制御部120と、記憶部140と、を備える。
通信部110は、ネットワークNを介して、対象機器T又は監視端末200などと各種データ又は各種情報を送受信する。通信部110は、例えば、ネットワークNを介して、対象機器Tから監視データを受信したり、監視端末200に状態変化ログ関連情報を送信したりする。
制御部120は、データ取得部121と、状態変化検出部122と、変化時点検出部123と、ログ抽出部124と、関連情報生成部125と、を備える。また、制御部120は、例えば、相関パターン算出部126、相関度算出部127、異常ログ選別部128、通知部129、リスト追加受付部130、リスト更新部131、評価受付部132、閾値調整部133、モデル構築部134、モデル再構築指示部135、比較情報生成部136、モデル受付部137、単語頻度算出部138、又は類似度算出部139を備えてもよい。
データ取得部121は、通信部110を介して、対象機器Tから監視データを取得する。データ取得部121は、例えば、収集サーバに実装されたAPIを利用して、監視データを取得してもよい。ここで、「API(Application Programming Interface)」とは、各種情報の参照機能などを個別にサービス化して、外部のアプリケーションから利用するために、ソフトウェアコンポーネントが互いにやり取りするために使用するインタフェースである。
データ取得部121は、例えば、上記APIを利用して、監視データの収集を収集サーバに指示する。収集サーバは、当該指示に基づいて、収集エージェントを用いて監視データを収集する。データ取得部121は、収集サーバの当該収集の結果として、当該APIを介して監視データを取得してもよい。
データ取得部121は、他の例として、対象機器Tに搭載されたエージェント300に対象機器Tの監視データを収集させ、収集された監視データをエージェント300から送信させてもよい。データ取得部121は、当該送信された監視データを、通信部110を介して受信する。また、データ取得部121は、他の例として、収集サーバに組み込んだ監視システム1専用のアウトプットプラグイン機能を利用して、収集サーバが収集した監視データを送信させてもよい。データ取得部121は、当該送信された監視データを、通信部110を介して受信する。また、データ取得部121は、他の例として、対象機器Tにリモートアクセスして、監視データを取得してもよい。
データ取得部121は、同一の構成要素若しくは同一の監視項目を有する複数の対象機器それぞれの状態データ、又は対象機器Tが有する複数の構成要素それぞれの状態データを当該対象機器から取得してもよい。ここで「監視項目」とは、対象機器Tの構成要素における監視を行う単位である。監視項目は、例えば、構成要素が対象機器TのOSの場合、メモリ容量の使用率又はCPU使用率などであってもよい。「同一の構成要素を有する複数の対象機器T」とは、例えば、対象システムSに含まれる第1対象機器T1と第2対象機器T2それぞれのOSを構成要素とし、CPU使用率を監視項目とする場合などである。また、「対象機器Tが有する複数の構成要素若しくは複数の監視項目それぞれの状態データ」とは、例えば、第1対象機器Tが有するCPU使用率とスワップ使用率それぞれの状態データとする場合などである。
状態変化検出部122は、状態パターンモデルを記憶するモデル記憶部を参照する。この「モデル記憶部」は、記憶部140に含まれる機能部(後述のモデル記憶部141)であってもよいし、外部の装置が備える機能部であってもよい。そして、状態変化検出部122は、データ取得部121により取得された状態データに基づいて、状態パターンモデルを用いて状態パターンから逸脱する対象機器Tにおける構成要素の状態変化を検出する。
状態変化検出部122は、例えば、単一の状態データにおける上記状態変化を検出してもよい。状態変化検出部122は、このような検出の場合、状態パターンモデルとして、状態パターンモデルがARモデル(autoregressive model(自己回帰モデル))又はARMAモデル(autoregressive moving average model(自己回帰移動平均モデル))などの時系列モデルを用いてもよい。
状態変化検出部122は、例えば、状態パターンモデルを用いて対象機器Tにおける構成要素の状態の予測パターンを算出してもよい。状態変化検出部122は、状態データに基づいて、当該予測パターンの数値と状態データの数値との差分の変化度が所定の第1閾値を超えた際に、状態パターンから逸脱する対象機器Tにおける構成要素の状態変化を検出してもよい。ここで「所定の第1閾値」とは、対象機器Tにおける構成要素の状態データの数値が、通常時の状態パターンに基づき予測される値から逸脱しているか否かを判定するための閾値である。状態変化検出部122は、例えば、予測パターンの数値に対する状態データの数値が、乖離する方向(障害方向)で推移しているか、また、収束する方向(復旧方向)で推移しているか判定してもよい。状態変化検出部122は、前者について対象機器Tの構成要素に障害が発生している可能性があると判定してもよい。状態変化検出部122は、後者について対象機器Tの構成要素が復旧している可能性があると判定してもよい。
状態変化検出部122は、例えば、サイクリックに(例えば、実行間隔を30分に1回にするなど)、状態パターンモデルを用いて所定の期間における予測パターンを算出する。状態変化検出部122は、当該予測パターンの数値と同じ所定の時間における状態データの数値との差分を算出する。状態変化検出部122は、算出した差分の推移を分析する。状態変化検出部122は、当該分析結果に基づいて差分の変化度を算出し、所定の第1閾値を超えた場合、状態変化を検出したと判定する。状態変化検出部122は、上記差分の変化度の算出にあたっては、状態パターンモデルがARモデル又はARMAモデルなどの場合、ChangeFingerなどの変化点検出アルゴリズム技術を用いてもよい。
ここで、図4を用いて、状態変化検出部122における単一の状態データにおける状態変化及び変化点検出の例を示す。縦軸をメモリの使用率(%)とし、横軸を時間軸(秒単位)とした波形図である。当該波形図は、状態データとして取得されたメモリ使用率について、経時的にプロットしたグラフである。P1及びP2がそれぞれ検出された状態変化が起きた変化点である。図4に示すように、一見他の変化点と変わりない変化点でも、上記構成によれば、状態変化検出部122は、通常時の状態パターンから逸脱する状態変化、ひいては変化点を検出することができる。
上記構成によれば、状態変化検出部122は、対象機器Tの構成要素において通常時の状態パターンから一時的に逸脱したものではなく、持続的に逸脱しつづける状態変化を検出することができる。このため、上記構成によれば、状態変化検出部122は、リリース作業後のCPU負荷状況の異常変化や定期バックアップによるディスク増加率の異常変化などを検出することができる。また、上記構成によれば、監視サーバ100は、持続的に逸脱しつづける状態変化において逸脱し始めた変化点を検出することできる。このため、上記構成によれば、状態変化検出部122は、リリース作業など何らかのオペレーションがきっかけで発生したCPU負荷状況が上昇しつづけているような特に重要度・緊急度の高い状態変化にフォーカスして検出することができる。また、上記構成によれば、状態変化検出部122は、状態の変化が許容されるべきものであれば受け入れて、新たな状態をベースに変化を検出し続けられる。
状態変化検出部122は、例えば、複数の状態データ間の相関関係における上記状態変化を検出してもよい。
状態変化検出部122は、例えば、後述の相関パターン算出部126により算出された相関度変動パターンを示す状態パターンモデルを用いて、当該相関度変動パターンに対する後述の相関度算出部127により算出された相関関係の変化度が所定の第2閾値を超えた際に、複数の対象機器T、又は複数の構成要素若しくは複数の監視項目を有する対象機器Tにおける状態パターンから逸脱する状態変化を検出してもよい。ここで「所定の第2閾値」とは、複数の対象機器T、又は複数の構成要素若しくは複数の監視項目の相関関係の変化度が、通常時の相関度変動パターンに基づき予測される値から逸脱しているか否かを判定するための閾値である。
ここで、図5を用いて、状態変化検出部122における複数の状態データ間の相関関係における状態変化検出の例を示す。図5(a)は、通常時の第1対象機器T1における複数の監視項目間の相関関係を表す二次元マトリクスである。図5(b)は、異常時の第1対象機器T1における複数の監視項目間の相関関係を表す二次元マトリクスである。各セルには、各相関関係の度合いが色の濃さで表現されている。図5に示すように、通常時にはCPU使用率とスワップ使用率の相関関係の度合いは高くないものの、リリース作業後の異常時にはCPUの異常によりスワップの使用率が上昇し相関関係の度合いが変化し通常時より高くなっている。このような構成によれば、状態変化検出部122は、単一ではスワップの使用率上昇の原因がなにかを把握することが困難だが、複数の状態データ間の相関関係の変化度を算出することで、スワップの使用率上昇の原因がCPU使用率にある可能性を見出すことができる。
例えば、他の構成要素の障害の影響を受けやすいメモリは、自身の不具合ではなく他の構成要素の不具合によってその使用量が異常となりやすい。しかしながら、上記構成によれば、ユーザは、(1)まず、図4に示すような単一の状態データにおける状態変化としてメモリ使用量の異常を確認する。(2)つぎに、メモリ使用量と他の構成要素の監視項目との状態データ間の相関関係の構造変化を確認して、その構造変化が異常となっていないかを確認する。(3)つぎに、構造変化が異常となっている相手の他の構成要素について障害の原因調査を行う。このように上記(1)〜(3)のステップを踏むことで、一見するとメモリに不具合があるように思われるが本当は別の構成要素に不具合があるケースにおいても障害の原因特定が可能になる。このため、上記構成によれば、ユーザは、障害対応の効率が向上する。
上記構成によれば、状態変化検出部122は、ロードバランサの設定変更に伴う負荷分散状況の変化やリリース作業後の対象機器内のリソース消費のバランスの変化を検出することができる。このため、上記構成によれば、状態変化検出部122は、単一の状態変化の検出だけだと見過ごす可能性のある、対象システムS全体の状態変化を検出することができる。また、上記構成によれば、状態変化検出部122は、状態の変化が許容されるべきものであれば受け入れて、新たな状態をベースに変化を検出し続けられる。
状態変化検出部122は、例えば、後述のモデル受付部137がユーザUから状態パターンモデル候補を採用する指定を受け付けた場合、これまで用いていた状態パターンモデルに替えて後述の状態パターンモデル候補を採用する。
上記構成によれば、状態変化検出部122は、現行の状態パターンモデルによる検知多発などが判定された場合、ユーザからのフィードバックを受けて、状態パターンモデルを現状に合わせて更新することができる。上記構成によれば、状態変化検出部122は、状態パターンモデルを精度よく維持することができる。
状態変化検出部122は、例えば、後述の類似度算出部により算出された各単語の類似度が所定の第3閾値を超えた際に、対象機器Tにおける構成要素の状態変化を検出してもよい。ここで「所定の第3閾値」とは、対象機器Tの各単語の出現頻度の相対度数が、通常時の相対度数から逸脱しているか否かを判定するための閾値である。上記構成によれば、状態変化検出部122は、対象機器Tにおける構成要素のログデータに含まれる各単語の発生傾向の変化を検出することができる。このため、上記構成によれば、状態変化検出部122は、キーワードマッチベースの検出では気付けない各単語の発生傾向の変化を検出することができる。
変化時点検出部123は、状態変化検出部122により検出された状態変化が起きた変化時点を検出する。変化時点検出部123は、例えば、状態パターンモデルがARモデル又はARMAモデルの場合、各時点のうち状態変化が検出された時点を変化時点としてもよい。
変化時点検出部123は、例えば、状態変化検出部122により各単語の類似度が所定の第3閾値を超えた際に検出された状態変化に関する所定の時間帯に基づき、当該変化が起きた変化時点を検出してもよい。
上記構成によれば、変化時点検出部123は、対象機器Tにおける構成要素のログデータに含まれる各単語の発生傾向の変化の変化時点を検出することができる。上記構成によれば、監視サーバ100は、各単語の発生傾向の変化点とログデータを関連付けて出力することで、どの時点のログデータにフォーカスして障害の原因を調査すればよいかといった情報をユーザUに提供することができる。
ログ抽出部124は、データ取得部121により取得されたログデータから、変化時点検出部123により検出された変化時点と関連するログデータを抽出する。ログ抽出部124は、例えば、対象機器Tにおける構成要素ごとに、上記変化時点を基準として所定の範囲内に発生したログデータを抽出してもよい。
関連情報生成部125は、変化時点における状態変化検出部122により検出された状態変化とログ抽出部124により抽出されたログデータとを関連付ける。そして、関連情報生成部125は、当該関連付けに基づいて、状態変化ログ関連情報を生成する。ここで「状態変化ログ関連情報」とは、上記状態変化と上記ログデータとを関連付けて監視端末200に出力するための情報である。状態変化ログ関連情報は、例えば、ログデータを表示するログ一覧画面D1において、各ログデータのレコードに状態変化を示すフラグやメッセージを付与してもよい。
上記構成によれば、関連情報生成部125は、対象機器Tにおける構成要素の状態変化と当該状態変化と関連する対象機器Tのログデータとを関連付けて監視端末200に出力させることができる。これにより、ユーザUは、状態変化の原因の候補としてログデータに示された対象機器の処理や構成変更などの履歴を把握することができる。
相関パターン算出部126は、相関度変動パターンを算出する。ここで「相関度変動パターン」とは、それぞれの状態データ間における通常時の時系列の相関度の変動パターンである。相関パターン算出部126は、当該算出した相関度変動パターンを状態パターンモデルとしてモデル記憶部に記憶する。相関パターン算出部126は、例えば、複数の対象機器T又は単一の対象機器Tが有する複数の構成要素又は複数の監視項目の組み合わせにおいて、それぞれの通常時の所定の期間における状態データに基づいて、GGM(Graphical Gaussian Model)などの技術を用いて、当該組み合わせの相関度を算出する。相関パターン算出部126は、この際併せて、特定の時間幅で逐次ずらしながら、複数回相関度を算出することで、上記相関度の分散値を算出する。相関パターン算出部126は、上記組み合わせそれぞれについて、上記算出した相関度と当該相関度の分散値を、相関度の変動パターンとしてモデル記憶部に記憶してもよい。
相関度算出部127は、データ取得部121に取得された、複数の対象機器T又は単一の対象機器Tが有する複数の構成要素又は複数の監視項目それぞれの状態データに基づいて、それぞれの状態データ間における時系列の相関関係の変化度を算出する。相関度算出部127は、例えば、複数の対象機器T又は単一の対象機器Tが有する複数の構成要素又は複数の監視項目の組み合わせにおいて、それぞれの状態データに基づいて、GGMなどの技術を用いて、当該組み合わせの状態データ間における時系列の相関関係の変化度を算出してもよい。
異常ログ選別部128は、選別リストを記憶するリスト記憶部を参照して、データ取得部により取得されたログデータのうち対象機器Tの異常に関するログデータか否かを選別する。ここで「選別リスト」とは、対象機器Tの異常に関するログデータか否かを選別するためのリストである。選別リストは、例えば、いわゆる、ログデータに対するブラックリスト又はホワイトリストであってもよい。
通知部129は、ログ抽出部124により抽出されたログデータの少なくとも一部を、選別リストに追加する候補として、ユーザUに通知する。通知部129は、例えば、監視端末200で表示される通知メッセージ画面D2(後述の図7参照)に、上記ログデータの少なくとも一部を選別リストに追加する候補として出力するための情報を生成してもよい。通知部129は、当該生成した情報を監視端末200に送信してもよい。また、通知部129の通知の態様は、他の例として、上記ログデータの少なくとも一部が選別リストに追加する候補である旨を示すメッセージやメールを監視端末200が備えるメールソフトやメッセージソフト宛に送信してもよい。
リスト追加受付部130は、通知された候補のログデータの少なくとも一部に対する、ユーザUによる選別リストへの追加の指定を受け付ける。リスト追加受付部130は、例えば、ダッシュボードに上記ログデータの少なくとも一部に対するユーザUの入力による選別リストへの追加の指定を受け付ける受け付け手段を設けて、当該受け付け手段を介して受け付けてもよい。
リスト更新部131は、リスト追加受付部130により追加の指定を受け付けた候補のログデータの少なくとも一部を、リスト記憶部に記憶される選別リストに追加する。この「リスト記憶部」は、記憶部140に含まれる機能部(後述のリスト記憶部142)であってもよいし、外部の装置が備える機能部であってもよい。
上記構成によれば、リスト更新部131は、対象機器Tにおける構成要素の状態変化に関連する、また、ユーザUが指定されたログを選別リストに追加することができる。このため、上記構成によれば、リスト更新部131は、ファクトベースで抽出されたログにより選別リストを更新することで、ログ単体では分からない状態変化と関連性の高いキーワードをもって選別リストにログデータを選別させることができる。これにより、リスト更新部131は、選別リストの精度を向上させることができる。
評価受付部132は、状態変化ログ関連情報により出力された状態変化の検出に対するユーザUからの妥当性評価の指定を受け付ける。当該妥当性評価の指定を受け付けに関して、例えば、ログ一覧画面D1で表示される状態変化と関連付けられたログデータ(例えば、「疑わしいログ」とされたログデータ)に対して「必要」か「不要」の評価の指定を受け付ける受け付け手段をログ一覧D1に設けてもよい。評価受付部132は、この受け付け手段をもって、ユーザUからログデータに関連付けられた状態変化の検出に対して「必要」か「不要」の妥当性の指定を受け付けてもよい。上記構成によれば、評価受付部132は、各状態変化の検出結果がユーザUにとって過検出又は検出不足などであった場合、その評価を受け付けることができる。
閾値調整部133は、評価受付部132により指定を受け付けた妥当性評価に基づき、所定の第1閾値及び所定の第2閾値の少なくともいずれか一つを調整する。
上記構成によれば、閾値調整部133は、各状態変化の検出結果がユーザUにとって過検出又は検出不足などであった場合、その評価を受け付けて、所定の第1閾値及び所定の第2閾値にフィードバックさせることができる。
モデル構築部134は、所定の学習期間における通常時の対象機器Tにおける構成要素の状態データを学習データとして入力することにより状態パターンモデルを構築する。
モデル再構築指示部135は、状態変化検出部122により検出された状態変化が所定の過誤検出条件を満たした場合、所定の学習期間とは異なる期間における通常時の状態データを学習データとして入力して状態パターンモデル候補の構築をモデル構築部134に指示する。ここで「所定の過誤条件」とは、状態変化の検出が過誤検出であるか否かを判定するための条件である。所定の過誤条件は、例えば、特定の監視項目において、同じような状態変化の検出を所定の回数を超えたこととしてもよい。
比較情報生成部136は、モデル比較情報を生成する。ここで「モデル比較情報」とは、状態変化検出部122で用いられている状態パターンモデルと状態パターンモデル候補とを監視端末200に比較可能に出力するための情報である。モデル比較情報は、例えば、状態パターンモデルと状態パターンモデル候補を同じ状態データを入力させて出力される状態パターンを、それぞれ図4のような波形図で比較表示するためのモデル比較画面(不図示)であってもよい。
モデル受付部137は、モデル比較情報により出力された状態パターンモデル及び状態パターンモデル候補に対する、ユーザUから採用するモデルの指定を受け付ける。モデル受付部137のモデルの指定を受け付けにおいては、例えば、上記モデル比較画面において、状態パターンモデルと状態パターンモデル候補のそれぞれに対して採用する旨を受け付ける受け付け手段を設けてもよい。モデル受付部137は、この受け付け手段をもって、状態パターンモデル及び状態パターンモデル候補に対する、ユーザUから採用するモデルの指定を受け付ける。
単語頻度算出部138は、所定の時間帯ごとのログデータに含まれる各単語の出現頻度の相対度数を算出する。ここで「所定の時間帯」とは、ログデータに含まれる各単語の相対的な出現傾向を計るための時間帯である。所定の時間帯は、例えば、対象システムSの稼働日の稼働時間のうち30分又は1時間ごとに区切られた時間帯であってもよい。単語頻度算出部138は、例えば、所定の時間帯ごとの各単語の出現数を算出する。つぎに単語頻度算出部138は、算出した各単語の出現数に基づいて、所定の時間帯における各単語の出現頻度の相対度数を算出する。
類似度算出部139は、出現頻度データを記憶する出現頻度記憶部を参照して、各単語の出現頻度の相対度数と出現頻度データが示す各単語それぞれの通常時の相対度数との類似度を算出する。ここで「出現頻度データ」とは、通常時の所定の時間帯ごとの対象機器Tのログデータにおける各単語の出現頻度の相対度数を示すデータである。また、この「出現頻度記憶部」は、記憶部140に含まれる機能部(後述の出現頻度記憶部143)であってもよいし、外部の装置が備える機能部であってもよい。類似度算出部139は、例えば、ヒストグラムインセクションなどの技術を用いて、上記類似度を算出してもよい。
記憶部140は、監視に関する各種データ及び各種情報を記憶する。記憶部140は、例えば、監視データ、状態変化ログ関連情報、選別リスト情報、モデル比較情報、又は出現頻度データなどを記憶する。また、記憶部140は、例えば、モデル記憶部141、リスト記憶部142、又は出現頻度記憶部143を備えてもよい。記憶部140は、データベースマネジメントシステム(DBMS)を利用して各種データ及び各種情報を記憶してもよいし、ファイルシステムを利用して各種データ及び各種情報を記憶してもよい。DBMSを利用する場合は、上記情報ごとにテーブルを設けて、当該テーブル間を関連付けて各種データ及び各種情報を管理してもよい。
モデル記憶部141は、状態パターンモデルを記憶する。リスト記憶部142は、選別リスト情報を記憶する。出現頻度記憶部143は、出現頻度データを記憶する。
<4.画面例>
図6〜図7を参照して、監視システム1の画面例を説明する。
図6は、ログ一覧画面D1の例を示す図である。図6に示すように、データ取得部121により取得された対象機器Tのログデータを一覧で表示する。
ログ一覧画面D1は、各ログデータのレコードにおいて、関連付けられた状態変化を示す「疑わしいログ」とするテキストメッセージを「状態」欄に表示してもよい。また、ログ一覧画面D1は、ログデータ一覧の表示において、状態変化と関連付けられたログデータ(本例では、「疑わしいログ」とする)に限定して表示してもよい。また、ログ一覧画面D1は、ログデータ一覧の表示において、状態変化と関連付けられていないログデータ(本例では、「通常のログ」とする)に限定して表示してもよい。また、ログ一覧画面D1は、これらの表示の切り替えを受け付ける受け付け手段(本例では、右上の「疑わしいログ」ボタン及び「通常のログ」ボタン)とする)を設けてもよい。
ログ一覧画面D1は、各ログデータのレコードにおいて、関連付けられた状態変化の詳細を表示する詳細画面に遷移するための受け付け手段(本例では、「疑わしいログ」テキストの右隣りの「詳細」ボタンとする)を設けてもよい。この詳細画面は、例えば、状態データにより描画された図4に示すような波形図を表示したり、上記モデル比較画面を表示したりしてもよい。
図7は、通知メッセージ画面D2の例を示す図である。図7に示すように、通知メッセージ画面D2は、対象システムSの監視においてユーザUに通知するメッセージをリストアップして表示する。通知メッセージ画面D1は、例えば、ログデータの一部(本例では、キーワード「Warning」とする)ブラックリストの追加候補として通知するメッセージを表示する。
<5.動作例>
図8〜図11を参照して、監視サーバ100又は監視システム1の動作例を説明する。なお、以下に示す図5〜図11の動作例の処理の順番は一例であって、適宜、変更されてもよい。
図8は、監視サーバ100における、監視データの取得処理から対象機器Tにおける構成要素の状態変化とログデータの関連付けを出力する情報の生成処理までの流れを示すフロー図である。
図8に示すように、監視サーバ100のデータ取得部121は、対象機器Tから、状態データとログデータとを取得する(S10)。状態変化検出部122は、状態データに基づいて、状態パターンモデルを記憶するモデル記憶部を参照して、状態パターンモデルを用いて状態パターンから逸脱する対象機器Tにおける構成要素の状態変化の検出を判定する(S11)。
状態変化検出部122が対象機器Tにおける構成要素の状態変化を検出した場合(S12のYes)、変化時点検出部123は、当該状態変化が起きた変化時点を検出する(S13)。
ログ抽出部124は、ログデータから、上記変化時点と関連するログデータを抽出する(S14)。関連情報生成部125は、上記変化時点における状態変化とログ抽出部124により抽出されたログデータとを関連付けて状態変化ログ関連情報を生成する(S15)。
監視サーバ100は、監視を終了しない場合(S16のNo)、フローチャートのステップS10の前に戻り監視を継続する。
図9は、監視システム1における、監視の前処理として、対象機器Tにおける構成要素の通常時の状態データを用いて状態パターンモデルを構築する際の相互作用の例を示すシーケンス図である。
図6に示すように、監視サーバ100及び第1対象機器T1と、監視サーバ100及び第2対象機器T2とは、対象機器Tの通常時において、複合フラグメントpara1(Parallel1、以下同じ)が示すエリア内の破線上部と下部にあるメッセージのやり取り及び処理をそれぞれ実行する。また、これらの機器は、所定の学習期間、複合フラグメントpara1が示すエリア内のやり取り及び処理を繰り返し実行してもよい。具体的には、第1対象機器T1は、自身の状態データを収集する(S20)。第1対象機器T1は、収集した状態データを監視サーバ100に送信する(S21)。監視サーバ100は、第1対象機器T1から状態データを取得する(S22)。第2対象機器T2は、搭載されたエージェント300により状態データを収集する(S23)。第2対象機器T2は、収集した状態データを監視サーバ100に送信する(S24)。監視サーバ100は、第2対象機器T2から状態データを取得する(S25)。
監視サーバ100は、所定の学習期間において取得した対象機器Tにおける構成要素の状態データを学習データとして入力することにより状態パターンモデルを構築する(S26)。監視サーバ100は、例えば、状態データを学習データとして入力してそれぞれの状態データ間における相関度変動パターンを算出してもよい。監視サーバ100は、構築した状態パターンモデルをモデル記憶部141に記憶する(S26)。監視サーバ100は、例えば、上記算出した相関度変動パターンを状態パターンモデルとしてモデル記憶部141に記憶してもよい。
図10A〜10Cは、監視システム1における、対象機器Tにおける構成要素の異常時において、状態変化を検出し、当該状態変化とログデータを関連付けて出力する際の相互作用の例を示すシーケンス図である。さらに、図10A〜10Cは、監視システム1における、上記状態変化とログデータとの関連付けを利用して、選別リストの更新や所定の第2閾値の調整する際の相互作用の例も示すシーケンス図である。
図10Aに示すように、監視サーバ100及び第1対象機器T1と、監視サーバ100及び第2対象機器T2とは、いずれかの対象機器Tにおける構成要素の異常時において、複合フラグメントpara2が示すエリア内の破線上部と下部にあるメッセージのやり取り及び処理をそれぞれ実行する。具体的には、第1対象機器T1は、自身の状態データ及びログデータを収集する(S30)。第1対象機器T1は、収集した状態データ及びログデータを監視サーバ100に送信する(S31)。監視サーバ100は、第1対象機器T1から状態データ及びログデータを取得する(S32)。第2対象機器T2は、搭載されたエージェント300により状態データ及びログデータを収集する(S33)。第2対象機器T2は、収集した状態データ及びログデータを監視サーバ100に送信する(S34)。監視サーバ100は、第2対象機器T2から状態データ及びログデータを取得する(S35)。
監視サーバ100は、上記状態データに基づいて、状態パターンモデルを用いて対象機器Tにおける構成要素の状態の予測パターンを算出する(S36)。監視サーバ100は、第1対象機器T1と第2対象機器T2はそれぞれ、当該予測パターンの数値と状態データの数値との差分の変化度と所定の第1閾値とを比較する(S37)。監視サーバ100と監視端末200とは、第1対象機器T1の差分の変化度が所定の第1閾値を超えた場合、複合フラグメントopt1(Option1、以下同じ)が示すエリア内にある処理を実行する。具体的には、監視サーバ100は、状態パターンから逸脱する第1対象機器T1における構成要素の状態変化(以下、「第1状態変化」ともいう)を検出する(S38)。
監視サーバ100は、第1状態変化が起きた変化時点(以下、「第1変化時点」という)を検出する(S39)。監視サーバ100は、第1対象機器T1から取得したログデータから、第1変化時点と関連するログデータ(以下、「第1ログデータ」という)を抽出する(S40)。監視サーバ100は、第1変化時点における第1状態変化と第1ログデータとを関連付けて監視端末200に出力するための状態変化ログ関連情報(以下、「第1状態変化ログ関連情報」という)を生成する(S41)。なお、監視サーバ100は、この状態変化ログ関連情報の生成にあたって、第1ログデータの一部(本例では、キーワード「Warning」とする)を選別リスト(本例では、「ブラックリスト」とする)の追加候補としてユーザUに通知するための情報を状態変化ログ関連情報に含める。
監視サーバ100は、第1状態変化ログ関連情報を監視端末200に送信する(S42)。監視端末200は、監視サーバ100から、第1状態変化ログ関連情報を取得する(S43)。監視端末200は、第1状態変化ログ関連情報に基づき、第1状態変化と第1ログデータとの関連付けをログ一覧画面D1に表示する(S44)。監視端末200は、通知メッセージ画面D2を表示して、第1ログデータの一部を選別リストの追加する候補としてユーザUに通知する(S45)。監視端末200は、第1ログデータの一部に対するユーザUによる選別リストへの追加の指定入力を受け付ける(S46)。
監視端末200は、監視サーバ100に、上記第1ログデータの一部に対する選別リストへの追加の指定を要求する(S47)。監視サーバ100は、第1ログデータの一部に対する、ユーザUによる選別リストへの追加の指定を受け付ける(S48)。監視サーバ100は、追加の指定を受け付けた候補の第1ログデータの一部を、選別リストに追加する(S49)。ステップ49に後続する監視サーバ100及び監視端末200のメッセージのやり取り及び処理を図10Bに示す。
図10Bに示すように、監視サーバ100は、第1対象機器T1及び第2対象機器T2それぞれの状態データに基づいて、それぞれの状態データの数値間における時系列の相関関係の変化度を算出する(S50)。監視サーバ100は、算出した相関度の変化度と所定の第2閾値とを比較する(S51)。監視サーバ100と監視端末200とは、当該比較の結果、相関度の変化度が所定の第2閾値を超えた場合、複合フラグメントopt2が示すエリア内にあるメッセージのやり取り及び処理を実行する。具体的には、監視サーバ100は、第1対象機器T1及び第2対象機器T2における構成要素の状態パターンから逸脱する状態変化(以下、「第2状態変化」という)を検出する(S52)。
監視サーバ100は、第2状態変化が起きた変化時点(以下、「第2変化時点」という)を検出する(S53)。監視サーバ100は、第1対象機器T1及び第2対象機器T2から取得したログデータから、第2変化時点と関連するログデータ(以下、「第2ログデータ」という)を抽出する(S54)。監視サーバ100は、第2変化時点における第2状態変化と第2ログデータとを関連付けて監視端末200に出力するための状態変化ログ関連情報(以下、「第2状態変化ログ関連情報」という)を生成する(S55)。なお、監視サーバ100は、この状態変化ログ関連情報の生成にあたって、第2状態変化の検出に対するユーザUからの妥当性評価の指定を受け付ける受け付け手段を、状態変化ログ関連情報に含める。
監視サーバ100は、第2状態変化ログ関連情報を監視端末200に送信する(S56)。監視端末200は、監視サーバ100から、第2状態変化ログ関連情報を取得する(S57)。監視端末200は、第2状態変化ログ関連情報に基づき、第2状態変化と第2ログデータとの関連付けをログ一覧画面D1に表示する(S58)。また、監視端末200は、モデル比較画面において、上記妥当性評価の指定を受け付ける受け付け手段も表示する。監視端末200は、ログ一覧画面D1で表示した第2状態変化の検出に対する妥当性評価の指定入力をモデル比較画面の受け付け手段により受け付ける(S59)。
監視端末200は、監視サーバ100に、上記妥当性評価の指定を要求する(S60)。監視サーバ100は、第2状態変化の検出に対する、ユーザUによる妥当性評価の指定を受け付ける(S61)。監視サーバ100は、上記指定を受け付けた妥当性評価に基づき、第2状態変化に対応する所定の第2閾値を調整する(S62)。ステップ62に後続する監視サーバ100及び監視端末200のメッセージのやり取り及び処理を図10Cに示す。
図10Cに示すように、監視サーバ100は、取得したログデータに含まれる各単語の所定の時間帯ごとの出現頻度の相対度数を算出する(S70)。監視サーバ100は、出現頻度データを記憶する出現頻度記憶部143を参照して、算出した各単語の出現頻度の相対度数と出現頻度データが示す各単語それぞれの通常時の相対度数との類似度を算出する(S71)。
監視サーバ100は、上記算出した各単語の類似度と所定の第3閾値とを比較する(S72)。監視サーバ100と監視端末200とは、当該比較の結果、各単語の類似度が所定の第3閾値を超えた場合、複合フラグメントopt3が示すエリア内にあるメッセージのやり取り及び処理を実行する。具体的には、監視サーバ100は、各単語を含むログデータの出力元の対象機器Tにおける状態パターンから逸脱する状態変化(以下、「第3状態変化」という)を検出する(S73)。
監視サーバ100は、第3状態変化に関する上記所定の時間帯に基づき、第3状態変化が起きた変化時点(以下、「第3変化時点」という)を検出する(S74)。監視サーバ100は、対象機器Tから取得したログデータから、第3変化時点と関連するログデータ(以下、「第3ログデータ」という)を抽出する(S75)。監視サーバ100は、第3変化時点における第3状態変化と第3ログデータとを関連付けて監視端末200に出力するための状態変化ログ関連情報(以下、「第3状態変化ログ関連情報」という)を生成する(S76)。
監視サーバ100は、第3状態変化ログ関連情報を監視端末200に送信する(S77)。監視端末200は、監視サーバ100から、第3状態変化ログ関連情報を取得する(S78)。監視端末200は、第3状態変化ログ関連情報に基づき、第3状態変化と第3ログデータとの関連付けをログ一覧画面D1に表示する(S79)。
図11は、監視システム1における、対象機器Tにおける構成要素の異常時において、状態変化を検出し、当該状態変化とログデータを関連付けて出力する際の相互作用の例を示すシーケンス図である。さらに、図11は、監視システム1における、状態変化の検出が所定の過誤検出条件を満たしたことにより状態パターンモデルを再構築し、既存のものと切り替える際の相互作用の例も示すシーケンス図である。
図11に示すように、監視サーバ100及び第1対象機器T1と、監視サーバ100及び第2対象機器T2とは、いずれかの対象機器Tにおける構成要素の異常時において、複合フラグメントpara3が示すエリア内の破線上部と下部にあるメッセージのやり取り及び処理をそれぞれ実行する。具体的には、第1対象機器T1は、自身の状態データ及びログデータを収集する(S90)。第1対象機器T1は、収集した状態データ及びログデータを監視サーバ100に送信する(S91)。監視サーバ100は、第1対象機器T1から状態データ及びログデータを取得する(S92)。第2対象機器T2は、搭載されたエージェント300により状態データ及びログデータを収集する(S93)。第2対象機器T2は、収集した状態データ及びログデータを監視サーバ100に送信する(S94)。監視サーバ100は、第1対象機器T2から状態データ及びログデータを取得する(S95)。
監視サーバ100は、上記状態データに基づいて、状態パターンモデルを用いて通常時の時系列の状態パターンから逸脱する対象機器Tにおける構成要素の状態変化を検出する(S96)。監視サーバ100と監視端末200は、当該状態変化が所定の過誤検出条件を満たした場合、複合フラグメントopt3が示すエリア内にあるメッセージのやり取り及び処理を実行する。具体的には、監視サーバ100は、所定の学習期間とは異なる期間における通常時の状態データを学習データとして入力して状態パターンモデル候補の構築をモデル構築部に指示する(S98)。監視サーバ100は、所定の学習期間とは異なる期間における通常時の対象機器Tにおける構成要素の状態データを学習データとして入力することにより状態パターンモデルを構築する(S99)。
監視サーバ100は、状態変化検出部で用いられている現行の状態パターンモデルと状態パターンモデル候補とを監視端末200に比較可能に出力するためのモデル比較情報を生成する(S100)。監視サーバ100は、モデル比較情報を監視端末200に送信する(S101)。監視端末200は、監視サーバ100からモデル比較情報を取得する(S102)。監視端末200は、モデル比較情報に基づき、モデル比較画面を表示する(S103)。監視端末200は、モデル比較画面により出力された現行の状態パターンモデル及び状態パターンモデル候補に対する、ユーザUから採用するモデルの指定を受け付ける(S104)。
監視端末200は、監視サーバ100に、上記採用するモデルの指定を要求する(S105)。監視サーバ100は、現行の状態パターンモデル及び状態パターンモデル候補に対する、ユーザUから採用するモデルの指定を受け付ける(S106)。監視サーバ100は、状態パターンモデル候補を採用する指定を受け付けた場合、複合フラグメントopt4−1が示すエリア内にある処理を実行する。具体的には、監視サーバ100は、現行の状態パターンモデルから状態パターンモデル候補に切り替える(S107)。
<6.ハードウェア構成>
図12を参照して、上述してきた監視サーバ100をコンピュータ800により実現する場合のハードウェア構成の一例を説明する。なお、それぞれの装置の機能は、複数台の装置に分けて実現することもできる。
図12に示すように、コンピュータ800は、プロセッサ801と、メモリ803と、記憶装置805と、入力I/F部807と、データI/F部809と、通信I/F部811、及び表示装置813を含む。
プロセッサ801は、メモリ803に記憶されているプログラムを実行することによりコンピュータ800における様々な処理を制御する。例えば、監視サーバ100の制御部120が備える各機能部などは、メモリ803に一時記憶された上で、主にプロセッサ801上で動作するプログラムとして実現可能である。
メモリ803は、例えばRAM(Random Access Memory)などの記憶媒体である。メモリ803は、プロセッサ801によって実行されるプログラムのプログラムコードや、プログラムの実行時に必要となるデータを一時的に記憶する。
記憶装置805は、例えばハードディスクドライブ(HDD)やフラッシュメモリなどの不揮発性の記憶媒体である。記憶装置805は、オペレーティングシステムや、上記各構成を実現するための各種プログラムを記憶する。この他、記憶装置805は、監視データ、状態変化ログ関連情報、選別リスト情報、モデル比較情報、又は出現頻度データを登録するテーブルと、当該テーブルを管理するDBを記憶することも可能である。このようなプログラムやデータは、必要に応じてメモリ803にロードされることにより、プロセッサ801から参照される。
入力I/F部807は、ユーザからの入力を受け付けるためのデバイスである。入力I/F部807の具体例としては、キーボードやマウス、タッチパネル、各種センサ、ウェアラブル・デバイスなどが挙げられる。入力I/F部807は、例えばUSB(Universal Serial Bus)などのインタフェースを介してコンピュータ800に接続されても良い。
データI/F部809は、コンピュータ800の外部からデータを入力するためのデバイスである。データI/F部809の具体例としては、各種記憶媒体に記憶されているデータを読み取るためのドライブ装置などがある。データI/F部809は、コンピュータ800の外部に設けられることも考えられる。その場合、データI/F部809は、例えばUSBなどのインタフェースを介してコンピュータ800へと接続される。
通信I/F部811は、コンピュータ800の外部の装置と有線又は無線により、インターネットNを介したデータ通信を行うためのデバイスである。通信I/F部811は、コンピュータ800の外部に設けられることも考えられる。その場合、通信I/F部811は、例えばUSBなどのインタフェースを介してコンピュータ800に接続される。
表示装置813は、各種情報を表示するためのデバイスである。表示装置813の具体例としては、例えば液晶ディスプレイや有機EL(Electro−Luminescence)ディスプレイ、ウェアラブル・デバイスのディスプレイなどが挙げられる。表示装置813は、コンピュータ800の外部に設けられても良い。その場合、表示装置813は、例えばディスプレイケーブルなどを介してコンピュータ800に接続される。また、入力I/F部807としてタッチパネルが採用される場合には、表示装置813は、入力I/F部807と一体化して構成することが可能である。
なお、本実施形態は、本発明を説明するための例示であり、本発明をその実施の形態のみに限定する趣旨ではない。また、本発明は、その要旨を逸脱しない限り、さまざまな変形が可能である。さらに、当業者であれば、以下に述べる各要素を均などなものに置換した実施の形態を採用することが可能であり、かかる実施の形態も本発明の範囲に含まれる。
[変形例]
なお、本発明を上記実施形態に基づいて説明してきたが、以下のような場合も本発明に含まれる。
上記実施形態に係る監視サーバ100における各構成の少なくとも一部は、対象機器Tに搭載するエージェント300又は監視端末200が備えてもよい。
1…監視システム、100…監視サーバ、110…通信部、120…制御部、140…記憶部、300…エージェントプログラム、800…コンピュータ、801…プロセッサ、803…メモリ、805…記憶装置、807…入力I/F部、809…データI/F部、811…通信I/F部、813…表示装置、S…対象システム、T、T1、T2…対象機器、U…ユーザ。

Claims (9)

  1. 監視対象の対象機器から、前記対象機器における構成要素の状態の履歴を示す状態データと、前記対象機器におけるイベントの履歴を示すログデータとを取得するデータ取得部と、
    前記状態データに基づいて、前記構成要素における通常時の時系列の状態パターンを示す状態パターンモデルを記憶するモデル記憶部を参照して、前記状態パターンモデルを用いて前記状態パターンから逸脱する前記構成要素の状態変化を検出する状態変化検出部と、
    前記状態変化が起きた変化時点を検出する変化時点検出部と、
    前記ログデータから、前記変化時点と関連するログデータを抽出するログ抽出部と、
    前記変化時点における前記状態変化と前記ログ抽出部により抽出されたログデータとを関連付けてユーザが使用する端末に出力するための状態変化ログ関連情報を生成する関連情報生成部と、を備える、
    監視サーバ。
  2. 前記状態変化検出部は、前記状態データに基づいて、前記状態パターンモデルを用いて前記構成要素における状態の予測パターンを算出し、前記予測パターンの数値と前記状態データの数値との差分の変化度が所定の第1閾値を超えた際に、前記状態パターンから逸脱する前記構成要素における状態変化を検出する、
    請求項1に記載の監視サーバ。
  3. 前記データ取得部は、同一の構成要素若しくは同一の監視項目を有する複数の対象機器それぞれの状態データ、又は前記対象機器が有する複数の構成要素若しくは複数の監視項目それぞれの状態データを前記対象機器から取得し、
    前記それぞれの状態データ間における通常時の時系列の相関度の変動パターンを示す相関度変動パターンを算出し、前記算出した相関度変動パターンを前記状態パターンモデルとして前記モデル記憶部に記憶する相関パターン算出部と、
    前記それぞれの状態データに基づいて、前記それぞれの状態データ間における時系列の相関関係の変化度を算出する相関度算出部と、をさらに備え、
    前記状態変化検出部は、前記状態パターンモデルを用いて前記相関度変動パターンに対する前記相関関係の変化度が所定の第2閾値を超えた際に、前記複数の対象機器それぞれの前記同一の構成要素又は複数の構成要素における前記状態パターンから逸脱する状態変化を検出する、
    請求項2に記載の監視サーバ。
  4. 前記状態変化ログ関連情報により出力された状態変化の検出に対する前記ユーザからの妥当性評価の指定を受け付ける評価受付部と、
    前記評価受付部により指定を受け付けた妥当性評価に基づき、前記所定の第1閾値及び前記所定の第2閾値の少なくともいずれか一つを調整する閾値調整部と、をさらに備える、
    請求項3に記載の監視サーバ。
  5. 前記対象機器の異常に関するログデータか否かを選別するための選別リストを記憶するリスト記憶部を参照して、前記データ取得部により取得されたログデータのうち前記対象機器の異常に関するログデータか否かを選別する異常ログ選別部と、
    前記ログ抽出部により抽出されたログデータの少なくとも一部を、前記選別リストに追加する候補として、前記ユーザに通知する通知部と、
    前記通知された候補のログデータの少なくとも一部に対する、前記ユーザによる前記選別リストの追加の指定を受け付けるリスト追加受付部と、
    前記リスト追加受付部により追加の指定を受け付けた候補のログデータの少なくとも一部を、前記選別リストに追加するリスト更新部と、をさらに備える、
    請求項1から4のいずれか一項に記載の監視サーバ。
  6. 所定の学習期間における通常時の前記構成要素の前記状態データを学習データとして入力することにより前記状態パターンモデルを構築するモデル構築部と、
    前記状態変化が所定の過誤検出条件を満たした場合、前記所定の学習期間とは異なる期間における通常時の前記状態データを学習データとして入力して状態パターンモデル候補の構築を前記モデル構築部に指示するモデル再構築指示部と、
    前記状態変化検出部で用いられている前記状態パターンモデルと前記状態パターンモデル候補とを前記端末に比較可能に出力するためのモデル比較情報を生成する比較情報生成部と、
    前記モデル比較情報により出力された前記状態パターンモデル及び前記状態パターンモデル候補に対する、前記ユーザから採用するモデルの指定を受け付けるモデル受付部と、をさらに備え、
    前記状態変化検出部は、前記モデル受付部が前記ユーザから前記状態パターンモデル候補を採用する指定を受け付けた場合、これまで用いていた前記状態パターンモデルに替えて前記状態パターンモデル候補を採用する、
    請求項1から5のいずれか一項に記載の監視サーバ。
  7. 所定の時間帯ごとの前記ログデータに含まれる各単語の出現頻度の相対度数を算出する単語頻度算出部と、
    通常時の前記所定の時間帯ごとの前記対象機器のログデータにおける前記各単語の出現頻度の相対度数を示す出現頻度データを記憶する出現頻度記憶部を参照して、前記各単語の出現頻度の相対度数と前記出現頻度データが示す各単語それぞれの通常時の相対度数との類似度を算出する類似度算出部と、をさらに備え、
    前記状態変化検出部は、前記各単語の類似度が所定の第3閾値を超えた際に、前記構成要素における状態変化を検出し、
    前記変化時点検出部は、前記状態変化に関する前記所定の時間帯に基づき、前記状態変化が起きた変化時点を検出する、
    請求項1から6のいずれか一項に記載の監視サーバ。
  8. コンピュータに、
    監視対象の対象機器から、前記対象機器における構成要素の状態の履歴を示す状態データと、前記対象機器におけるイベントの履歴を示すログデータとを取得するデータ取得機能と、
    前記状態データに基づいて、前記対象機器における通常時の時系列の状態パターンを示す状態パターンモデルを記憶するモデル記憶機能を参照して、前記状態パターンモデルを用いて前記状態パターンから逸脱する前記構成要素の状態変化を検出する状態変化検出機能と、
    前記状態変化が起きた変化時点を検出する変化時点検出機能と、
    前記ログデータから、前記変化時点と関連するログデータを抽出するログ抽出機能と、
    前記変化時点における前記状態変化と前記ログ抽出機能により抽出されたログデータとを関連付けてユーザが使用する端末に出力するための状態変化ログ関連情報を生成する関連情報生成機能と、を実現させる、
    プログラム。
  9. コンピュータが、
    監視対象の対象機器から、前記対象機器における構成要素の状態の履歴を示す状態データと、前記対象機器におけるイベントの履歴を示すログデータとを取得し、
    前記状態データに基づいて、前記構成要素における通常時の時系列の状態パターンを示す状態パターンモデルを記憶するモデル記憶機能を参照して、前記状態パターンモデルを用いて前記状態パターンから逸脱する前記構成要素の状態変化を検出し、
    前記状態変化が起きた変化時点を検出し、
    前記ログデータから、前記変化時点と関連するログデータを抽出し、
    前記変化時点における前記状態変化と前記抽出されたログデータとを関連付けてユーザが使用する端末に出力するための状態変化ログ関連情報を生成する、
    監視方法。
JP2019222629A 2019-12-10 2019-12-10 監視サーバ、プログラム、及び監視方法 Active JP7437145B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019222629A JP7437145B2 (ja) 2019-12-10 2019-12-10 監視サーバ、プログラム、及び監視方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019222629A JP7437145B2 (ja) 2019-12-10 2019-12-10 監視サーバ、プログラム、及び監視方法

Publications (2)

Publication Number Publication Date
JP2021092938A true JP2021092938A (ja) 2021-06-17
JP7437145B2 JP7437145B2 (ja) 2024-02-22

Family

ID=76312582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019222629A Active JP7437145B2 (ja) 2019-12-10 2019-12-10 監視サーバ、プログラム、及び監視方法

Country Status (1)

Country Link
JP (1) JP7437145B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114998839A (zh) * 2022-07-06 2022-09-02 北京原流科技有限公司 一种基于层级分布的数据管理方法以及系统
WO2024013797A1 (ja) * 2022-07-11 2024-01-18 日本電信電話株式会社 処理装置、処理方法およびプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8843347B2 (en) 2011-07-01 2014-09-23 The Boeing Company Method, monitoring system and computer program product for monitoring the health of a monitored system utilizing an associative memory
JP2015028700A (ja) 2013-07-30 2015-02-12 Kddi株式会社 障害検知装置、障害検知方法、障害検知プログラム及び記録媒体
JP2019185468A (ja) 2018-04-12 2019-10-24 株式会社日立産機システム 異常予測制御システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114998839A (zh) * 2022-07-06 2022-09-02 北京原流科技有限公司 一种基于层级分布的数据管理方法以及系统
CN114998839B (zh) * 2022-07-06 2023-01-31 北京原流科技有限公司 一种基于层级分布的数据管理方法以及系统
WO2024013797A1 (ja) * 2022-07-11 2024-01-18 日本電信電話株式会社 処理装置、処理方法およびプログラム

Also Published As

Publication number Publication date
JP7437145B2 (ja) 2024-02-22

Similar Documents

Publication Publication Date Title
JP6055285B2 (ja) データ保全装置およびその方法、システム
JP2016173782A (ja) 故障予測システム、故障予測方法、故障予測装置、学習装置、故障予測プログラム及び学習プログラム
JP6708203B2 (ja) 情報処理装置、情報処理方法、及び、プログラム
JP2011181070A (ja) 変電所装置の資産状態を監視するためのシステムおよび方法
US9152487B2 (en) Service outage details in an error message
JP7437145B2 (ja) 監視サーバ、プログラム、及び監視方法
JPWO2009090939A1 (ja) ネットワーク異常検出装置及び方法
US9933772B2 (en) Analyzing SCADA systems
US9860109B2 (en) Automatic alert generation
US10591970B2 (en) Industrial asset management systems and methods thereof
EP4102782A1 (en) Communication device, surveillance server, and log collection method
US10474954B2 (en) Feedback and customization in expert systems for anomaly prediction
JP6475469B2 (ja) 診断ジョブ生成システム、診断ジョブ生成方法及び診断ジョブ生成表示方法
JP2015185120A (ja) 情報処理装置、情報処理方法、およびプログラム
JP2013033149A (ja) 画質異常予測システム及びプログラム
CN110750423A (zh) 机器学习平台的运维方法和运维系统
JP6168209B2 (ja) 運用管理装置、運用管理システム、情報処理方法、及び運用管理プログラム
WO2014167917A1 (ja) 状態監視装置、状態監視システム、及び状態監視方法
JP2014238852A (ja) 運用管理装置、運用管理システム、情報処理方法、及び運用管理プログラム
JP2020030628A (ja) 監視システム、監視方法および監視プログラム
JP2017034311A (ja) 情報処理装置、情報処理システム、及びプログラム
JP5724145B2 (ja) 被疑装置の判定装置、判定方法及び被疑装置の判定プログラム
JP2016218636A (ja) システムモデル生成支援装置、システムモデル生成支援方法、及び、プログラム
JP2013242902A (ja) 運用管理装置、運用管理システム、情報処理方法、及び運用管理プログラム
US10986014B2 (en) Monitoring system and non-transitory computer-readable recording medium storing monitoring program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221109

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231019

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231227

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: 20240117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240209

R150 Certificate of patent or registration of utility model

Ref document number: 7437145

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150