JP7147361B2 - 異常診断プログラムおよび異常診断方法 - Google Patents

異常診断プログラムおよび異常診断方法 Download PDF

Info

Publication number
JP7147361B2
JP7147361B2 JP2018154215A JP2018154215A JP7147361B2 JP 7147361 B2 JP7147361 B2 JP 7147361B2 JP 2018154215 A JP2018154215 A JP 2018154215A JP 2018154215 A JP2018154215 A JP 2018154215A JP 7147361 B2 JP7147361 B2 JP 7147361B2
Authority
JP
Japan
Prior art keywords
response
size
message
abnormality diagnosis
peak
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.)
Active
Application number
JP2018154215A
Other languages
English (en)
Other versions
JP2020031281A (ja
Inventor
淳一 樋口
乾 横山
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 JP2018154215A priority Critical patent/JP7147361B2/ja
Priority to US16/451,515 priority patent/US10833921B2/en
Publication of JP2020031281A publication Critical patent/JP2020031281A/ja
Application granted granted Critical
Publication of JP7147361B2 publication Critical patent/JP7147361B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0695Management of faults, events, alarms or notifications the faulty arrangement being the maintenance, administration or management system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • H04L41/026Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using e-messaging for transporting management information, e.g. email, instant messaging or chat
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • H04L41/0273Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using web services for network management, e.g. simple object access protocol [SOAP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、異常診断プログラムおよび異常診断方法に関する。
従来、データセンタ内のサーバ上に構築したシステムにより提供されるWebサービスの運用フェーズにおける異常を診断したいという要望がある。運用フェーズにおける異常診断手法としては、例えば、Webサービスにかかる通信で送受信されるパケットを取得し、取得したパケット内のHTTP(Hypertext Transfer Protocol)ステータスコードから、Webサービスの異常を診断するものがある。
関連する先行技術としては、例えば、Webサーバの応答時間の変動を定期的に観測し、応答時間の低下時には、外部Webサイトからの参照状況と比較することによって、応答時間の低下をもたらしたアクセス集中の原因を特定するものがある。また、各個別処理について、取得したパケット転送遅延時間、レスポンスタイム及びQoE評価値を統計処理することによって、パケット転送遅延時間とQoE評価値との間の相関を示す推定モデルを作成し、推定モデルに基づきQoE推定値を決定する技術がある。また、上位階層サーバの処理の塊における最初のパケットの受信時刻と最後のパケットの受信時刻との差を用いて、下位階層サーバの処理の塊の間に行われる当該下位階層サーバの処理のための、上位階層サーバの処理時間を算出する技術がある。
特開2008-130010号公報 特開2015-12361号公報 特開2010-218185号公報
しかしながら、従来技術では、Webサービスの異常を診断することができない場合がある。例えば、通信が暗号化されている場合には、レスポンスのデータパケットのプロトコル解析ができないため、HTTPステータスコードを取得して異常を検知することができない。
一つの側面では、本発明は、暗号化された通信パケットであっても異常診断を可能にすることを目的とする。
1つの実施態様では、所定期間内に送受信された暗号化されたパケット群から特定されるレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータを取得し、取得した前記メッセージデータに基づいて、レスポンスメッセージのメッセージサイズの頻度分布から第1条件を満たすピークサイズを特定し、特定した前記ピークサイズのうち、予め記憶された正常時におけるレスポンスメッセージのピークサイズと異なるピークサイズがある場合、前記メッセージデータに基づいて、前記異なるピークサイズのレスポンスメッセージの応答時間の頻度分布が第2条件を満たすか否かを判断し、前記第2条件を満たす場合に、サービスの異常と判定する、異常診断プログラムが提供される。
本発明の一側面によれば、暗号化された通信パケットであっても異常診断が可能になるという効果を奏する。
図1は、異常診断システム100のシステム構成例を示す説明図である。 図2は、実施の形態にかかる異常診断方法の一実施例を示す説明図である。 図3は、異常診断装置101のハードウェア構成例を示すブロック図である。 図4は、メッセージデータDB120の記憶内容の一例を示す説明図である。 図5は、正常ピークサイズデータ130の記憶内容の一例を示す説明図である。 図6は、正常応答時間分布DB140の記憶内容の一例を示す説明図である。 図7は、異常診断装置101の機能的構成例を示すブロック図である。 図8は、レスポンスサイズ頻度分布テーブル800の記憶内容の一例を示す説明図である。 図9は、異常ピークサイズテーブル900の記憶内容の一例を示す説明図である。 図10は、応答時間頻度分布テーブル1000の記憶内容の一例を示す説明図である。 図11は、異常診断結果テーブル1100の記憶内容の一例を示す説明図である。 図12は、サービステーブル1200の記憶内容の一例を示す説明図である。 図13は、異常ピークサイズの抽出例を示す説明図である。 図14は、診断対象のサービスの異常の判定例を示す説明図である。 図15は、異常診断結果画面の画面例を示す説明図(その1)である。 図16は、異常診断結果画面の画面例を示す説明図(その2)である。 図17は、異常診断装置101の異常診断処理手順の一例を示すフローチャートである。 図18は、異常ピークサイズ抽出処理の具体的処理手順の一例を示すフローチャートである。 図19は、応答時間変動テーブル1900の記憶内容の一例を示す説明図である。 図20は、サービス異常判定処理の具体的処理手順の一例を示すフローチャートである。
以下に図面を参照して、本発明にかかる異常診断プログラムおよび異常診断方法の実施の形態を詳細に説明する。
(実施の形態)
まず、実施の形態にかかる異常診断システム100のシステム構成例について説明する。異常診断システム100は、ネットワークシステムにより提供されるサービスの異常診断を行うコンピュータシステムである。
図1は、異常診断システム100のシステム構成例を示す説明図である。図1において、異常診断システム100は、異常診断装置101と、Webサーバ102と、APサーバ103と、DBサーバ104と、クライアント装置105と、管理装置106と、を含む。異常診断システム100において、異常診断装置101、Webサーバ102、APサーバ103、DBサーバ104、クライアント装置105および管理装置106は、有線または無線のネットワーク110を介して接続される。ネットワーク110は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。ネットワーク110には、ネットワークスイッチ107が含まれる。
ここで、異常診断装置101は、診断対象のサービスの異常診断を行うコンピュータである。診断対象のサービスは、例えば、Webシステムにより提供されるWebサービスである。Webシステムは、例えば、Webサーバ102、APサーバ103およびDBサーバ104により構築される3階層システムである。
異常診断装置101は、メッセージデータDB(Database)120、正常ピークサイズデータ130および正常応答時間分布DB140を有する。なお、メッセージデータDB120、正常ピークサイズデータ130および正常応答時間分布DB140の記憶内容については、図4~図6を用いて後述する。
Webサーバ102は、クライアント装置105のブラウザからの要求に応じて、ウェブページなどのデータを送信するコンピュータである。APサーバ103は、Webサーバ102とDBサーバ104との橋渡しを行い、データベースの検索/更新処理を制御するコンピュータである。DBサーバ104は、データベースの検索/更新処理を実行するコンピュータである。
クライアント装置105は、サービスを利用するユーザが使用するコンピュータである。管理装置106は、異常診断システム100の管理者が使用するコンピュータである。クライアント装置105および管理装置106は、例えば、PC(Personal Computer)、タブレットPC、スマートフォンなどである。
ネットワークスイッチ107は、回線の交換機能を有し、経路選択をして適切な転送先に情報を中継する通信装置である。また、ネットワークスイッチ107は、自身を通過するデータをミラーリングする機能を有する。ミラーリングとは、あるポートに出力されるデータと同じデータを、他のポートからも出力する機能である。
例えば、Webサーバ102に接続されたポートのミラーリング先として、異常診断装置101に接続されたポートが指定されている。このため、Webサーバ102宛のパケットは、宛先となるWebサーバ102に入力されるとともに、異常診断装置101にも入力される。
なお、異常診断システム100では、クライアント装置105とWebシステムとが通信するにあたり、例えば、同じTCP(Transmission Control Protocol)のコネクション内で、リクエストメッセージとレスポンスメッセージとがシリアル(直列)にやり取りされる場合を想定する。
また、図1では、Webサーバ102、APサーバ103、DBサーバ104およびクライアント装置105をそれぞれ1台のみ表示したが、それぞれ2台以上であってもよい。また、ネットワーク110には、2台以上のネットワークスイッチ107が含まれていてもよい。
ここで、運用フェーズにおけるWebサービスの異常診断を行うにあたり、Webサービスにかかる通信で送受信されるパケットを取得し、取得したパケット内のHTTPステータスコードから異常を診断する手法がある。HTTPステータスコードは、リクエストに対するサーバの状態を示すコードである。
例えば、HTTPステータスコードの200番台は、正常処理を示す。300番台は、リダイレクションを示す。500番台は、サーバエラーを示す。このため、例えば、パケット内のHTTPステータスコードが500番台であれば、異常が発生していることを検知することができる。
しかしながら、通信が暗号化されている場合、レスポンスのデータパケットのプロトコル解析ができず、パケット内のHTTPステータスコードを取得することができない。このため、サービス利用負荷などが多発するWebサービスの障害による異常を検知することができない。
なお、リクエスト数の変動からWebサービスの障害による異常を検知することも考えられる。ところが、障害発生時は、サービスが利用できないためにリクエスト数が減少する可能性もあるし、クライアントがリクエストを繰り返してリクエスト数が増加する可能性もある。すなわち、リクエスト数だけでは異常を診断することは難しい。また、正常時にリクエスト数が増減する場合との区別がつかない。
そこで、本実施の形態では、診断対象のサービスについて、クライアント/サーバ間の通信が暗号化されている場合、すなわち、暗号化された通信パケットであっても異常診断を可能にする異常診断方法について説明する。ここで、実施の形態にかかる異常診断方法の一実施例について説明する。
図2は、実施の形態にかかる異常診断方法の一実施例を示す説明図である。以下、異常診断装置101の処理例(1)~(4)について説明する。
(1)異常診断装置101は、所定期間T内に送受信されたパケット群から特定されるレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータを取得する。ここで、所定期間Tは、サービスの異常診断を行う対象期間であり、任意に設定可能である。例えば、所定期間Tは、5分~10分程度の長さの期間に設定される。
パケット群は、診断対象のサービスにかかる通信で送受信されるパケット群であり、例えば、データ部分が暗号化されたパケット群である。したがって、パケット(データパケット)のプロトコル解析ができず、パケット内のHTTPステータスコードを取得することができない。ただし、パケット群は、暗号化されていなくてもよい。メッセージサイズは、メッセージのサイズであり、例えば、メッセージを形成するパケットのサイズの合計によって表される。応答時間は、リクエストメッセージに対してレスポンスメッセージが返ってくるまでの時間である。
図1の例では、メッセージデータ200が取得された場合を想定する。メッセージデータ200は、所定期間T内にWebサーバ102からクライアント装置105に送られたレスポンスメッセージのメッセージサイズと応答時間とを示す。
(2)異常診断装置101は、取得したメッセージデータに基づいて、レスポンスメッセージのメッセージサイズの頻度分布から、第1条件を満たすピークサイズを特定する。ここで、レスポンスメッセージのメッセージサイズの頻度分布とは、所定のサイズ幅で区切った階級ごとに、当該階級にメッセージサイズが属するレスポンスメッセージの頻度を表すものである。所定のサイズ幅は、任意に設定可能であり、例えば、10[byte]程度の幅に設定される。
以下の説明では、レスポンスメッセージのメッセージサイズの頻度分布を「レスポンスサイズ頻度分布」と表記する場合がある。すなわち、レスポンスサイズ頻度分布は、メッセージサイズの階級ごとに、当該階級のレスポンスメッセージが、レスポンスメッセージの総数に対して、どれだけの割合で出現したのかを表す。
第1条件は、任意に設定可能である。第1条件には、例えば、レスポンスメッセージが集中しているピークサイズ(階級)を判別する条件が設定される。具体的には、例えば、異常診断装置101は、レスポンスサイズ頻度分布のうち、隣り合う階級との頻度の差分が閾値α以上の階級に対応するメッセージサイズを、第1条件を満たすピークサイズとして特定する。
閾値αは、任意に設定可能であり、例えば、0.01~0.05程度の値に設定される。階級に対応するメッセージサイズは、例えば、階級の代表値(階級内の真ん中の値)である。一例として、階級を「185[byte]~195[byte]」とすると、代表値は「190[byte]」となる。
図1の例では、レスポンスサイズ頻度分布210から、第1条件を満たすピークサイズ「190,920」が特定された場合を想定する(単位:byte)。レスポンスサイズ頻度分布210は、メッセージデータ200に基づく、レスポンスメッセージのメッセージサイズの頻度分布である。
(3)異常診断装置101は、特定したピークサイズのうち、予め記憶された正常時におけるレスポンスメッセージのピークサイズと異なるピークサイズがあるか否かを判断する。そして、異常診断装置101は、異なるピークサイズがある場合、取得したメッセージデータに基づいて、異なるピークサイズのレスポンスメッセージの応答時間の頻度分布が第2条件を満たすか否かを判断する。
ここで、正常時におけるレスポンスメッセージのピークサイズとは、診断対象のサービスについて、障害が発生していないときのレスポンスサイズ頻度分布におけるピークサイズである。また、レスポンスメッセージの応答時間の頻度分布とは、所定の時間幅で区切った階級ごとに、当該階級に応答時間が属するレスポンスメッセージの頻度を表すものである。所定の時間幅は、任意に設定可能であり、例えば、10[msec]程度の幅に設定される。
以下の説明では、正常時におけるレスポンスメッセージのピークサイズを「正常ピークサイズ」と表記する場合がある。また、レスポンスメッセージの応答時間の頻度分布を「応答時間頻度分布」と表記する場合がある。すなわち、応答時間頻度分布は、応答時間の階級ごとに、当該階級のレスポンスメッセージが、レスポンスメッセージの総数に対して、どれだけの割合で出現したのかを表す。
また、第2条件は、任意に設定可能である。第2条件は、例えば、正常ピークサイズと異なるピークサイズのレスポンスメッセージの応答時間頻度分布が、正常時のレスポンスメッセージの応答時間頻度分布と統計的に異なるといえる条件に設定される。
具体的には、例えば、異常診断装置101は、異なるピークサイズのレスポンスメッセージの応答時間頻度分布と、正常時におけるレスポンスメッセージの応答時間頻度分布とを比較する。そして、異常診断装置101は、比較した結果、応答時間の変動があると判定した場合に、第2条件を満たすと判断する。
図1の例では、レスポンスサイズ頻度分布220は、正常時におけるレスポンスメッセージのメッセージサイズの頻度分布を表している。レスポンスサイズ頻度分布220から特定される正常ピークサイズを「310,920,1280」とする。この場合、第1条件を満たすピークサイズ「190,920」のうち、ピークサイズ「190」が、正常ピークサイズと異なるピークサイズとなる。
また、異なるピークサイズ「190」のレスポンスメッセージの応答時間頻度分布を応答時間頻度分布230とし、正常時におけるレスポンスメッセージの応答時間頻度分布を応答時間頻度分布240とする。この場合、応答時間頻度分布230と応答時間頻度分布240とを比較すると、応答時間に変動があるため(図2中、点線枠部分)、第2条件を満たすと判断される。
(4)異常診断装置101は、第2条件を満たす場合に、サービスの異常と判定する。ここで、サービスの異常とは、サービスの障害により異常となっている状態である。図1の例では、第2条件を満たすため、サービスの異常と判定される。
このように、異常診断装置101によれば、パケットの中身(データ部分)を解析することなく、サービスの異常診断を行うことができる。このため、クライアント/サーバ間の通信が暗号化されている場合、すなわち、暗号化された通信パケットであっても、サービスの異常診断を行うことができる。
具体的に説明すると、正常時は、どういったサービス、機能にアクセスするかによって、レスポンスメッセージのメッセージサイズは変動する傾向がある。一方、サーバエラーなどの異常発生時には、異なるリクエスト種別(例えば、URLなど)でも、ステータスコードごとにレスポンスメッセージのメッセージサイズが特定値付近に集中する傾向がある。例えば、エラーメッセージを表示するためのレスポンスメッセージが急増すると、メッセージサイズが特定値付近に偏る。この傾向を利用して、異常診断装置101は、サービスにかかるパケット群から得られるレスポンスサイズ頻度分布にあらわれたピークサイズのうち、正常時におけるピークサイズと異なるピークサイズを、異常ピークサイズとして抽出する。
ただし、異常発生時でなくても、レスポンスメッセージのメッセージサイズが特定値付近に集中する可能性がある。例えば、リダイレクションや静的コンテンツについてのレスポンスメッセージも、メッセージサイズが特定値付近に集中する傾向がある。したがって、メッセージサイズに着目しただけでは、サービスの異常診断の精度を確保できない場合がある。
一方、サーバエラーなどの異常発生時は、レスポンスを即座に返す処理(あるいは、レスポンスを返すのに長時間かかる処理)が増えて、応答時間が正常時と比較して変動する傾向がある。この傾向を利用して、異常診断装置101は、異常ピークサイズとして抽出したピークサイズのレスポンスメッセージに着目し、そのレスポンスメッセージの応答時間に変動があれば、サービスの異常と判定する。
これにより、サービスを提供するシステムに手を加えることなく、暗号化通信の場合であっても、レスポンスメッセージのメッセージサイズや応答時間から、サービス利用不可などの障害時の異常を診断することが可能となる。
(異常診断装置101のハードウェア構成例)
つぎに、異常診断装置101のハードウェア構成例について説明する。
図3は、異常診断装置101のハードウェア構成例を示すブロック図である。図3において、異常診断装置101は、CPU(Central Processing Unit)301と、メモリ302と、I/F(Interface)303と、ディスクドライブ304と、ディスク305と、を有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、異常診断装置101の全体の制御を司る。CPU301は、複数のコアを有していてもよい。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
I/F303は、通信回線を通じてネットワーク110に接続され、ネットワーク110を介して他の装置(例えば、管理装置106、ネットワークスイッチ107など)に接続される。そして、I/F303は、ネットワーク110と装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。I/F303には、例えば、モデムやLANアダプタなどを採用することができる。
ディスクドライブ304は、CPU301の制御に従ってディスク305に対するデータのリード/ライトを制御する。ディスク305は、ディスクドライブ304の制御で書き込まれたデータを記憶する。ディスク305としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
なお、異常診断装置101は、上述した構成部のほかに、例えば、SSD(Solid State Drive)、入力装置、ディスプレイ等を有することにしてもよい。また、図1に示したWebサーバ102、APサーバ103、DBサーバ104、クライアント装置105、管理装置106およびネットワークスイッチ107についても、異常診断装置101と同様のハードウェア構成により実現することができる。ただし、クライアント装置105や管理装置106は、例えば、入力装置、ディスプレイ等を有する。
(メッセージデータDB120の記憶内容)
つぎに、異常診断装置101が有するメッセージデータDB120の記憶内容について説明する。メッセージデータDB120は、例えば、図3に示した異常診断装置101のメモリ302、ディスク305などの記憶装置により実現される。
図4は、メッセージデータDB120の記憶内容の一例を示す説明図である。図4において、メッセージデータDB120は、レスポンスタイムスタンプ、リクエストサイズ、レスポンスサイズおよび応答時間のフィールドを有し、各フィールドに情報を設定することで、メッセージデータ(メッセージデータ400-1~400-6)をレコードとして記憶する。
ここで、レスポンスタイムスタンプは、レスポンスメッセージの取得時刻を示す。レスポンスメッセージの取得時刻は、異常診断装置101が、ネットワークスイッチ107によりミラーリングされたパケット(レスポンスメッセージのパケット)を取得した日時である。レスポンスメッセージの取得時刻は、レスポンスメッセージが、Webサーバ102からクライアント装置105に送信された日時、あるいは、クライアント装置105に受信された日時に相当する。
リクエストサイズは、リクエストメッセージのサイズを示す(単位:byte)。レスポンスサイズは、レスポンスメッセージのサイズを示す(単位:byte)。応答時間は、リクエストメッセージに対してレスポンスメッセージが返ってくるまでの時間である。すなわち、応答時間は、一組のリクエストメッセージの取得時刻とレスポンスメッセージの取得時刻との間隔に相当する。
なお、図示は省略するが、メッセージデータには、例えば、クライアントIPアドレス、クライアントポート番号、サーバIPアドレス、サーバポート番号、トランスポート層プロトコルなどが含まれていてもよい。クライアントIPアドレスは、リクエストメッセージを送信したクライアント装置105のIPアドレスである。クライアントポート番号は、リクエストメッセージを送信したクライアント装置105のポート番号である。サーバIPアドレスは、レスポンスメッセージを送信したサーバ(例えば、Webサーバ102)のIPアドレスである。サーバポート番号は、レスポンスメッセージを送信したサーバのポート番号である。トランスポート層プロトコルは、通信に使用されるトランスポート層のプロトコルを示す。例えば、サーバIPアドレスとサーバポート番号との組み合わせから、クライアント装置105のユーザが利用しているサービスを特定することができる。
(正常ピークサイズデータ130の記憶内容)
つぎに、異常診断装置101が有する正常ピークサイズデータ130の記憶内容について説明する。正常ピークサイズデータ130は、例えば、異常診断装置101のメモリ302、ディスク305などの記憶装置に記憶される。
図5は、正常ピークサイズデータ130の記憶内容の一例を示す説明図である。図5において、正常ピークサイズデータ130は、正常ピークサイズ(単位:byte)を記憶する。ここで、正常ピークサイズとは、正常時(サービスについて障害が発生していないとき)におけるレスポンスメッセージのピークサイズを示す。
正常ピークサイズは、例えば、診断対象のサービスについて、障害が発生していないときのパケットを収集し、収集したパケット群から特定されるレスポンスメッセージのレスポンスサイズ頻度分布にあらわれるピークサイズを求めることにより得ることができる。また、正常ピークサイズは、所定のサイズ幅の階級に対応する。例えば、正常ピークサイズ「310」は、階級「305~315」に対応する。
なお、正常ピークサイズデータ130は、例えば、診断対象のサービスごとに設けられる。具体的には、例えば、正常ピークサイズデータ130は、診断対象のサービスを特定する情報と対応付けて、メモリ302、ディスク305などの記憶装置に記憶される。診断対象のサービスを特定する情報は、例えば、サーバIPアドレスとサーバポート番号との組み合わせである。
(正常応答時間分布DB140の記憶内容)
つぎに、異常診断装置101が有する正常応答時間分布DB140の記憶内容について説明する。正常応答時間分布DB140は、例えば、異常診断装置101のメモリ302、ディスク305などの記憶装置により実現される。
図6は、正常応答時間分布DB140の記憶内容の一例を示す説明図である。図6において、正常応答時間分布DB140は、代表レスポンスサイズ、応答時間の階級値、応答時間の階級および頻度のフィールドを有し、各フィールドに情報を設定することで、正常応答時間分布データ(例えば、正常応答時間分布データ600-1~600-5)をレコードとして記憶する。
代表レスポンスサイズは、所定のサイズ幅で区切ったレスポンスサイズの階級の代表値を示す(単位:byte)。ここでは、所定のサイズ幅を「10」とする。例えば、代表レスポンスサイズ「730」は、レスポンスサイズの階級「725~735」の代表値を示す。
応答時間の階級値は、所定の時間幅で区切った応答時間の階級の代表値を示す(単位:msec)。応答時間の階級は、所定の時間幅で区切った応答時間の階級を示す。ここでは、所定の時間幅を「10」とする。例えば、応答時間の階級値「10」は、応答時間の階級「5~15」の代表値を示す。頻度は、レスポンスメッセージの総数に対する、各階級のレスポンスメッセージの数(度数)の割合(相対度数)を示す。
例えば、正常応答時間分布データ600-1は、レスポンスサイズが「725~735」のレスポンスメッセージについて、応答時間の階級「5~15」の頻度「0.05」を示す。すなわち、正常応答時間分布データ600-1は、レスポンスサイズが725[byte]以上735[byte]未満のレスポンスメッセージのうち、応答時間が5[msec]以上15[msec]未満となるレスポンスメッセージの割合が5[%]であることを示す。
なお、正常応答時間分布DB140は、例えば、診断対象のサービスごとに設けられる。具体的には、例えば、正常応答時間分布DB140は、診断対象のサービスを特定する情報と対応付けて、メモリ302、ディスク305などの記憶装置に保持される。
(異常診断装置101の機能的構成例)
図7は、異常診断装置101の機能的構成例を示すブロック図である。図7において、異常診断装置101は、取得部701と、第1の算出部702と、抽出部703と、第2の算出部704と、異常判定部705と、出力部706と、を含む。取得部701~出力部706は制御部となる機能であり、具体的には、例えば、図3に示したメモリ302、ディスク305などの記憶装置に記憶されたプログラムをCPU301に実行させることにより、または、I/F303により、その機能を実現する。各機能部の処理結果は、例えば、メモリ302、ディスク305などの記憶装置に記憶される。
取得部701は、メッセージデータを取得する。ここで、メッセージデータは、レスポンスメッセージのメッセージサイズと応答時間とを示す情報である。メッセージデータは、例えば、異常診断装置101において生成することにしてもよい。この場合、取得部701は、自装置において生成されたメッセージデータを取得する。
具体的には、例えば、異常診断装置101は、ネットワークスイッチ107を介して、クライアント装置105とWebサーバ102との間で送受信されるパケットをキャプチャする。キャプチャされたパケット(データパケット)は、例えば、メモリ302、ディスク305などの記憶装置に蓄積される。パケットは、データ部分が暗号化されたパケットであってもよい。
つぎに、異常診断装置101は、蓄積したパケット群を読み出す。この際、異常診断装置101は、所定期間T内に送受信されたパケット群を読み出すことにしてもよい。所定期間Tは、サービスの異常診断を行う対象期間であり、例えば、5分~10分程度の期間である。そして、異常診断装置101は、読み出したパケット群を解析してメッセージを再構成する。なお、パケットを解析してメッセージを再構成するメッセージ解析処理は、周知技術のため説明を省略する。
つぎに、異常診断装置101は、リクエストメッセージとレスポンスメッセージとのペア(組)を特定する。リクエストメッセージは、クライアント装置105からWebサーバ102に送信されるメッセージである。レスポンスメッセージは、Webサーバ102からクライアント装置105に送信されるメッセージである。
リクエストメッセージとペアとなるレスポンスメッセージは、リクエストメッセージのパケットの次にキャプチャされたパケットにより再構成されたメッセージである。また、リクエスト元(クライアント)とリクエスト先(サーバ)がリクエストメッセージと共通である。
そして、異常診断装置101は、特定したリクエストメッセージに対してレスポンスメッセージが返ってくるまでの応答時間を算出する。応答時間は、例えば、同一コネクションにおけるパケット(データパケット)の通信方向が、上り(クライアントからサーバ)から下り(サーバからクライアント)に変化するときの時間間隔から計測される。
なお、レスポンスメッセージの応答時間を計測する具体的な処理内容については、例えば、特開2016-146588号公報を参照することができる。また、通信が暗号化されていても、データ部分以外の情報(ヘッダ部分)は参照できるため、リクエスト元の情報(例えば、クライアントのIPアドレス、ポート番号)やリクエスト先の情報(例えば、サーバのIPアドレス、ポート番号)は特定可能である。
これにより、レスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータを生成することができる。なお、各メッセージ(リクエストメッセージ、レスポンスメッセージ)のメッセージサイズは、各メッセージを形成するパケットのサイズの合計によって表される。
ただし、取得部701は、外部のコンピュータからメッセージデータを取得することにしてもよく、また、不図示の入力装置を用いたユーザの操作入力により、メッセージデータを取得することにしてもよい。
取得されたメッセージデータは、例えば、図4に示したメッセージデータDB120に記憶される。メッセージデータには、例えば、クライアントIPアドレス、クライアントポート番号、サーバIPアドレス、サーバポート番号、トランスポート層プロトコルなどを含めることにしてもよい。
第1の算出部702は、取得されたメッセージデータに基づいて、レスポンスサイズ頻度分布を算出する。ここで、レスポンスサイズ頻度分布は、レスポンスメッセージのメッセージサイズの頻度分布である。
具体的には、例えば、第1の算出部702は、メッセージデータDB120から、所定期間Tにレスポンスタイムスタンプが含まれるメッセージデータを取得する。つぎに、第1の算出部702は、取得したメッセージデータに基づいて、所定のサイズ幅(階級幅)で区切った階級ごとに、当該階級にメッセージサイズが属するレスポンスメッセージの頻度を算出する。
より詳細に説明すると、例えば、第1の算出部702は、各階級にメッセージサイズが属するレスポンスメッセージの度数をカウントする。そして、第1の算出部702は、カウントした各階級の度数を、レスポンスメッセージの総数で割ることにより、各階級の頻度(相対度数)を算出する。レスポンスメッセージの総数は、取得したメッセージデータの総数に相当する。
これにより、メッセージサイズの階級ごとに、当該階級のレスポンスメッセージが、レスポンスメッセージの総数に対して、どれだけの割合で出現したのかを表すレスポンスサイズ頻度分布を算出することができる。
なお、メッセージデータDB120には、複数のサービスについてのメッセージデータが記憶されている場合がある。この場合、第1の算出部702は、診断対象のサービスについてのメッセージデータを取得する。診断対象のサービスのメッセージデータは、例えば、サーバIPアドレスおよびサーバポート番号から特定される。
算出されたレスポンスサイズ頻度分布は、例えば、図8に示すようなレスポンスサイズ頻度分布テーブル800に記憶される。レスポンスサイズ頻度分布テーブル800は、例えば、メモリ302、ディスク305などの記憶装置に記憶される。
図8は、レスポンスサイズ頻度分布テーブル800の記憶内容の一例を示す説明図である。図8において、レスポンスサイズ頻度分布テーブル800は、階級値、階級および頻度のフィールドを有し、各フィールドに情報を設定することで、レスポンスサイズ分布データ(例えば、レスポンスサイズ分布データ800-1~800-5)をレコードとして記憶する。
ここで、階級値は、レスポンスサイズの階級の代表値である(単位:byte)。階級は、レスポンスサイズの階級である(単位:byte)。頻度は、レスポンスサイズの階級の頻度(相対度数)である。例えば、レスポンスサイズ分布データ800-1は、レスポンスサイズの階級値「710」、階級「705~715」および頻度「0.06」を示す。
なお、第1の算出部702は、取得されたメッセージデータのうち、レスポンスサイズが所定サイズ以下のレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータに基づいて、レスポンスサイズ頻度分布を算出することにしてもよい。所定サイズは、任意に設定可能であり、サーバエラーなどの異常発生時に受け渡されるレスポンスメッセージのメッセージサイズの取り得る範囲を考慮して設定される。例えば、所定サイズは、1500[byte]程度のサイズに設定される。
抽出部703は、算出されたレスポンスサイズ頻度分布から、第1条件を満たすピークサイズを特定する。そして、抽出部703は、特定した第1条件を満たすピークサイズのうち、正常ピークサイズと異なるピークサイズを抽出する。正常ピークサイズは、予め記憶された正常時におけるレスポンスのピークサイズである。
以下の説明では、第1条件を満たすピークサイズのうち、正常ピークサイズと異なるピークサイズを「異常ピークサイズ」と表記する場合がある。
具体的には、例えば、抽出部703は、図8に示したレスポンスサイズ頻度分布テーブル800を参照して、隣り合う階級の頻度との差分が閾値α以上の階級の階級値(代表値)を、第1条件を満たすピークサイズとして特定する。
一例として、レスポンスサイズ頻度分布テーブル800内のレスポンスサイズ分布データ800-3を例に挙げると、頻度は「0.12」である。また、隣り合う階級の頻度は、「0.08」と「0.07」である。また、閾値αを「α=0.04」とする。頻度「0.12」と隣り合う階級の頻度「0.08」との差分は、「0.04=0.12-0.08」である。頻度「0.12」と隣り合う階級の頻度「0.07」との差分は、「0.05=0.12-0.07」である。差分「0.08」と「0.07」は、双方とも閾値α以上である。このため、抽出部703は、レスポンスサイズ分布データ800-3の階級値「730」を、第1条件を満たすピークサイズとして特定する。
つぎに、抽出部703は、図5に示した正常ピークサイズデータ130を参照して、特定したピークサイズのうち、正常ピークサイズと異なるピークサイズを、異常ピークサイズとして抽出する。なお、正常ピークサイズデータ130がサービスごとに設けられる場合、抽出部703は、診断対象のサービスに対応する正常ピークサイズデータ130を参照する。
例えば、特定されたピークサイズを「730」とする。このピークサイズ「730」は、正常ピークサイズデータ130のいずれの正常ピークサイズとも一致しない。このため、抽出部703は、特定したピークサイズ「730」を、異常ピークサイズとして抽出する。なお、異常ピークサイズのより具体的な抽出例については、図13を用いて後述する。
抽出された異常ピークサイズは、例えば、図9に示すような異常ピークサイズテーブル900に記憶される。異常ピークサイズテーブル900は、例えば、メモリ302、ディスク305などの記憶装置に記憶される。
図9は、異常ピークサイズテーブル900の記憶内容の一例を示す説明図である。図9において、異常ピークサイズテーブル900は、日時および異常ピークサイズのフィールドを有し、各フィールドに情報を設定することで、異常ピークサイズ情報(例えば、異常ピークサイズ情報900-1~900-6)をレコードとして記憶する。
ここで、日時は、サービスの異常診断を行う対象日時であり、例えば、所定期間Tの先頭の日時である。異常ピークサイズは、抽出された異常ピークサイズである。なお、「NA」は、異常ピークサイズが抽出されなかったことを示す。例えば、異常ピークサイズ情報900-1は、日時「2018/02/13 09:00:00」および異常ピークサイズ「80」を示す。
第2の算出部704は、取得されたメッセージデータに基づいて、抽出された異常ピークサイズのレスポンスメッセージの応答時間頻度分布を算出する。ここで、応答時間頻度分布は、レスポンスメッセージの応答時間の頻度分布である。
具体的には、例えば、第2の算出部704は、メッセージデータDB120から、所定期間Tにレスポンスタイムスタンプが含まれるメッセージデータを取得する。つぎに、第2の算出部704は、異常ピークサイズテーブル900を参照して、所定期間Tに対応する異常ピークサイズを選択する。
例えば、所定期間Tが「2018/02/13 09:00:00~2018/02/13 09:10:00」の場合、第2の算出部704は、異常ピークサイズ情報900-1の異常ピークサイズ「80」を選択する。つぎに、第2の算出部704は、取得したメッセージデータのうち、レスポンスサイズが、選択した異常ピークサイズに対応するメッセージデータを抽出する。
例えば、異常ピークサイズが「80」の場合、レスポンスサイズが「75~85」のメッセージデータを抽出する。そして、第2の算出部704は、抽出したメッセージデータに基づいて、所定の時間幅(階級幅)で区切った階級ごとに、当該階級に応答時間が属するレスポンスメッセージの頻度を算出する。
より詳細に説明すると、例えば、第2の算出部704は、各階級に応答時間が属するレスポンスメッセージの度数をカウントする。そして、第2の算出部704は、カウントした各階級の度数を、レスポンスメッセージの総数で割ることにより、各階級の頻度(相対度数)を算出する。レスポンスメッセージの総数は、抽出したメッセージデータの総数に相当する。
これにより、応答時間の階級ごとに、当該階級のレスポンスメッセージが、レスポンスメッセージの総数に対して、どれだけの割合で出現したのかを表す応答時間頻度分布を算出することができる。なお、メッセージデータDB120には、複数のサービスについてのメッセージデータが記憶されている場合がある。この場合、第2の算出部704は、診断対象のサービスについてのメッセージデータを取得する。
算出された応答時間頻度分布は、例えば、図10に示すような応答時間頻度分布テーブル1000に記憶される。応答時間頻度分布テーブル1000は、例えば、メモリ302、ディスク305などの記憶装置に記憶される。
図10は、応答時間頻度分布テーブル1000の記憶内容の一例を示す説明図である。図10において、応答時間頻度分布テーブル1000は、代表レスポンスサイズ、階級値、階級および頻度のフィールドを有し、各フィールドに情報を設定することで、応答時間分布データ(例えば、応答時間分布データ1000-1~1000-5)をレコードとして記憶する。
ここで、代表レスポンスサイズは、異常ピークサイズが属する階級の代表値である。すなわち、代表レスポンスサイズフィールドには、選択された異常ピークサイズが属する階級の代表値が設定される。階級値は、応答時間の階級の代表値である(単位:msec)。階級は、応答時間の階級である(単位:msec)。頻度は、応答時間の階級の頻度(相対度数)である。
例えば、応答時間分布データ1000-1は、代表レスポンスサイズ「730」、応答時間の階級値「10」、階級「5~15」および頻度「0.04」を示す。
なお、第2の算出部704は、取得されたメッセージデータのうち、応答時間が所定時間以下のレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータに基づいて、異常ピークサイズのレスポンスメッセージの応答時間頻度分布を算出することにしてもよい。所定時間は、任意に設定可能であり、サーバエラーなどの異常発生時に受け渡されるレスポンスメッセージの応答時間の取り得る範囲を考慮して設定される。例えば、所定時間は、100~500[msec]程度の時間に設定される。
異常判定部705は、算出された異常ピークサイズのレスポンスメッセージの応答時間頻度分布が、第2条件を満たすか否かを判断する。ここで、第2条件は、例えば、異常ピークサイズのレスポンスメッセージの応答時間頻度分布が、正常時のレスポンスメッセージの応答時間頻度分布と統計的に異なるといえる条件に設定される。
そして、異常判定部705は、第2条件を満たすと判断した場合、サービスの異常と判定する。一方、第2条件を満たさないと判断した場合には、異常判定部705は、サービスが正常と判定する。また、異常判定部705は、抽出部703によって異常ピークサイズが抽出されなかった場合、サービスが正常と判定する。
具体的には、例えば、まず、異常判定部705は、図6に示した正常応答時間分布DB140から、選択された異常ピークサイズに対応する代表レスポンスサイズの正常応答時間分布データを抽出する。なお、正常応答時間分布DB140がサービスごとに設けられる場合、異常判定部705は、診断対象のサービスに対応する正常応答時間分布DB140を参照する。
これにより、異常ピークサイズと同一のレスポンスサイズのレスポンスメッセージについて、正常時のレスポンスメッセージの応答時間頻度分布を特定することができる。
つぎに、異常判定部705は、例えば、図10に示した応答時間頻度分布テーブル1000を参照して、異常ピークサイズのレスポンスメッセージの応答時間頻度分布が、正常時のレスポンスメッセージの応答時間頻度分布と統計的に異なるか否かを検定して、応答時間の変動の有無を判定する。
そして、異常判定部705は、応答時間の変動があると判定した場合に、第2条件を満たすと判断する。一方、応答時間の変動がないと判定した場合には、異常判定部705は、第2条件を満たさないと判断する。なお、検定手法としては、例えば、分布の形によらず適用可能なノンパラメトリック手法であるコルモゴロフ-スミルノフ検定を利用することができる。
また、異常判定部705は、各応答時間頻度分布(異常ピークサイズのレスポンスメッセージの応答時間頻度分布、正常時のレスポンスメッセージの応答時間頻度分布)の統計値から、応答時間頻度分布の類似性を判定することにしてもよい。各応答時間頻度分布の統計値は、例えば、応答時間の平均値、標準偏差、分散などである。
この場合、異常判定部705は、応答時間頻度分布に類似性がないと判定した場合に、第2条件を満たすと判断する。一方、応答時間頻度分布に類似性があると判定した場合には、異常判定部705は、第2条件を満たさないと判断する。
より詳細に説明すると、例えば、異常判定部705は、下記式(1)を用いて、各応答時間頻度分布の統計値を算出することにしてもよい。ただし、rmeanは、応答時間の平均値である。riは、階級i番目の応答時間の階級値(単位:msec)である。iは、階級値が低いほうから番号付けするものとする。ciは、階級i番目の頻度(相対度数)である。nは、階級の総数である。
Figure 0007147361000001
そして、異常判定部705は、例えば、各応答時間頻度分布の統計値の差分が閾値β以上の場合に、応答時間頻度分布に類似性がないと判定する。閾値βは、任意に設定可能である。ここで、閾値βを「β=10[msec]」とする。また、異常ピークサイズのレスポンスメッセージの応答時間頻度分布の統計値を「45[msec]」とし、正常時のレスポンスメッセージの応答時間頻度分布の統計値を「72[msec]」とする。この場合、各応答時間頻度分布の統計値の差分は、「27[msec]」となり、閾値β以上となる。このため、異常判定部705は、応答時間頻度分布に類似性がないと判定する。
なお、診断対象のサービスの異常の判定例については、図14を用いて後述する。判定された判定結果は、例えば、図11に示すような異常診断結果テーブル1100に記憶される。異常診断結果テーブル1100は、例えば、メモリ302、ディスク305などの記憶装置に記憶される。
図11は、異常診断結果テーブル1100の記憶内容の一例を示す説明図である。図11において、異常診断結果テーブル1100は、日時および診断結果のフィールドを有し、各フィールドに情報を設定することで、診断結果情報(例えば、診断結果情報1100-1~1100-6)をレコードとして記憶する。
ここで、日時は、サービスの異常診断を行う対象日時であり、例えば、所定期間Tの先頭の日時である。診断結果は、サービスが異常であるか正常であるかを示す診断結果である。例えば、診断結果情報1100-1は、日時「2018/02/13 09:00:00」および診断結果「正常」を示す。
なお、異常診断結果テーブル1100は、例えば、診断対象のサービスごとに設けられる。
出力部706は、異常判定部705によって判定された判定結果を出力する。具体的には、例えば、出力部706は、サービスの異常と判定された場合、サービスの異常を示す異常診断結果を出力する。一方、サービスが正常と判定された場合、出力部706は、サービスが正常であることを示す異常診断結果を出力する。
出力部706の出力形式としては、例えば、メモリ302、ディスク305などの記憶装置への記憶、I/F303による他のコンピュータへの送信、不図示のディスプレイへの表示、不図示のプリンタへの印刷出力などがある。
より詳細に説明すると、例えば、出力部706は、図11に示した異常診断結果テーブル1100を参照して、図1に示した管理装置106に対して、診断対象のサービスの診断結果情報を送信する。診断結果情報には、例えば、診断対象のサービスを識別する情報が含まれる。
診断対象のサービスを識別する情報は、例えば、サービスの種別である。サービスの種別は、例えば、図12に示すようなサービステーブル1200から特定することができる。サービステーブル1200は、例えば、メモリ302、ディスク305などの記憶装置に記憶される。
図12は、サービステーブル1200の記憶内容の一例を示す説明図である。図12において、サービステーブル1200は、サービス種別、IPアドレスおよびポート番号のフィールドを有し、各フィールドに情報を設定することで、サービス情報(例えば、サービス情報1200-1,1200-2)をレコードとして記憶する。
ここで、サービス種別は、診断対象のサービスの種別である。IPアドレスおよびポート番号は、診断対象のサービスを提供するサーバ(例えば、Webサーバ102)のIPアドレスおよびポート番号である。例えば、サービス情報1200-1は、サービス種別「勤怠管理サービス」、IPアドレス「xxx.xx.xxx.x」およびポート番号「xxx」を示す。
サービステーブル1200によれば、例えば、異常診断に用いたメッセージデータに含まれるサーバIPアドレスおよびサーバポート番号から、診断対象のサービスのサービス種別を特定することができる。
異常診断装置101から管理装置106に診断結果情報が送信されると、管理装置106において、異常診断結果画面が表示される。異常診断結果画面は、診断対象のサービスの異常診断結果を表示する画面である。異常診断結果画面の画面例については、図15および図16を用いて後述する。
(異常ピークサイズの抽出例)
つぎに、図13を用いて、異常ピークサイズの抽出例について説明する。
図13は、異常ピークサイズの抽出例を示す説明図である。図13において、レスポンスサイズ頻度分布1300は、クライアント装置105とWebサーバ102との間で所定期間T内に受け渡されたレスポンスメッセージのメッセージサイズの頻度分布である。
この場合、抽出部703は、レスポンスサイズ頻度分布1300から、第1条件を満たすピークサイズを特定する。ここでは、第1条件を満たすピークサイズ「190,310,730,920,1280」が特定された場合を想定する。つぎに、抽出部703は、正常ピークサイズデータ130を参照して、特定したピークサイズのうち、正常ピークサイズと異なるピークサイズを、異常ピークサイズとして抽出する。
ここで、正常ピークサイズは「310,920,1280」である。このため、ピークサイズ「190,310,730,920,1280」のうち、正常ピークサイズ「310,920,1280」と異なるピークサイズ「190,730」が、異常ピークサイズとして抽出される。
(診断対象のサービスの異常の判定例)
つぎに、図14を用いて、診断対象のサービスの異常の判定例について説明する。ここでは、図13に示したように、異常ピークサイズ「190,730」が抽出された場合を想定する。
図14は、診断対象のサービスの異常の判定例を示す説明図である。図14において、応答時間頻度分布1410は、異常ピークサイズ「190」のレスポンスメッセージの応答時間の頻度分布である。応答時間頻度分布1420は、異常ピークサイズ「730」のレスポンスメッセージの応答時間の頻度分布である。
この場合、異常判定部705は、各異常ピークサイズ「190,730」の応答時間頻度分布1410,1420が第2条件を満たすか否かをそれぞれ判断する。具体的には、例えば、異常判定部705は、正常応答時間分布DB140から、異常ピークサイズ「190」に対応する正常時のレスポンスメッセージの応答時間頻度分布1411を特定する。
つぎに、異常判定部705は、異常ピークサイズ「190」の応答時間頻度分布1410が、正常時のレスポンスメッセージの応答時間頻度分布1411と統計的に異なるか否かを検定して、応答時間の変動の有無を判定する。ここでは、応答時間の変動ありと判定された場合を想定する。この場合、異常判定部705は、異常ピークサイズ「190」の応答時間頻度分布1410が、第2条件を満たすと判断する。
また、異常判定部705は、正常応答時間分布DB140から、異常ピークサイズ「730」に対応する正常時のレスポンスメッセージの応答時間頻度分布1421を特定する。つぎに、異常判定部705は、異常ピークサイズ「730」の応答時間頻度分布1420が、正常時のレスポンスメッセージの応答時間頻度分布1421と統計的に異なるか否かを検定して、応答時間の変動の有無を判定する。ここでは、応答時間の変動なしと判定された場合を想定する。この場合、異常判定部705は、異常ピークサイズ「730」の応答時間頻度分布1420が、第2条件を満たさないと判断する。
そして、異常判定部705は、各異常ピークサイズ「190,730」の応答時間頻度分布1410,1420の少なくともいずれかが第2条件を満たすと判断した場合に、サービスの異常と判定する。ここでは、異常ピークサイズ「190」の応答時間頻度分布1410が第2条件を満たすため、サービスの異常と判定される。
(異常診断結果画面の画面例)
つぎに、図15および図16を用いて、管理装置106に表示される異常診断結果画面の画面例について説明する。
図15は、異常診断結果画面の画面例を示す説明図(その1)である。図15において、異常診断結果画面1500は、診断対象のサービスの異常診断結果を示す通報メッセージ1501~1504を時系列に表示する画面である。
通報メッセージ1501~1505は、日時とサービス種別とステータスと発生期間とを含む。日時は、異常診断装置101からサービスの診断結果情報を受信した日時である。サービス種別は、サービスの種別である。ステータスは、サービスの異常診断結果を示す。ここでは、異常診断結果が「異常」である場合のみ表示される。発生期間は、サービスの異常と判定した期間であり、サービスに障害が発生した期間を表す。発生期間は、例えば、サービスの異常診断を行った対象日時を基準とする所定期間Tに対応する。
異常診断結果画面1500によれば、異常診断システム100の管理者は、診断対象のサービスごとに、障害が発生した期間を把握することができる。例えば、通報メッセージ1501,1503によれば、サービス種別「勤怠管理サービス」のサービスについて、発生期間「2018/02/13 09:20~09:30」および「2018/02/13 09:30~09:40」に障害が発生したことを把握することができる。
図16は、異常診断結果画面の画面例を示す説明図(その2)である。図16において、異常診断結果画面1600は、診断対象のサービスの異常診断結果をグラフ化して表示する画面である。具体的には、異常診断結果画面1600には、診断対象のサービスごとの帯グラフ1601~1603が表示されている。各帯グラフ1601~1603は、各サービスの10分ごとの異常診断結果を示す。
異常診断結果画面1600によれば、異常診断システム100の管理者は、時間の経過とともに変化する各サービスの異常診断結果(正常または異常)を直感的に把握することができる。例えば、帯グラフ1601によれば、サービス種別「勤怠管理サービス」のサービスについて、期間「09:20~09:40」に障害が発生したことを把握することができる。
(異常診断装置101の異常診断処理手順)
つぎに、図17を用いて、異常診断装置101の異常診断処理手順について説明する。異常診断装置101の異常診断処理は、例えば、所定時間(10分間隔)が経過するたびに、診断対象のサービスごとに実行される。ここでは、あるサービスに着目した場合の異常診断処理手順について説明する。
図17は、異常診断装置101の異常診断処理手順の一例を示すフローチャートである。図17のフローチャートにおいて、まず、異常診断装置101は、メッセージデータDB120から、所定期間Tにレスポンスタイムスタンプが含まれるメッセージデータを取得する(ステップS1701)。
つぎに、異常診断装置101は、取得したメッセージデータに基づいて、異常ピークサイズを抽出する異常ピークサイズ抽出処理を実行する(ステップS1702)。異常ピークサイズ抽出処理の具体的な処理手順については、図18を用いて後述する。
つぎに、異常診断装置101は、診断対象のサービスの異常診断を行うサービス異常判定処理を実行する(ステップS1703)。サービス異常判定処理の具体的な処理手順については、図19および図20を用いて後述する。
そして、異常診断装置101は、サービス異常判定処理において診断された診断対象のサービスの異常診断結果を出力して(ステップS1704)、本フローチャートによる一連の処理を終了する。これにより、パケットの中身(データ部分)を解析しなくても、レスポンスメッセージのレスポンスサイズや応答時間をもとに、診断対象のサービスの異常診断を行って異常診断結果を出力することができる。
つぎに、図18を用いて、図17に示したステップS1702の異常ピークサイズ抽出処理の具体的な処理手順について説明する。
図18は、異常ピークサイズ抽出処理の具体的処理手順の一例を示すフローチャートである。図18のフローチャートにおいて、まず、異常診断装置101は、ステップS1701において取得したメッセージデータから、レスポンスサイズが所定サイズ以下のメッセージデータを抽出する(ステップS1801)。
つぎに、異常診断装置101は、抽出したメッセージデータに基づいて、レスポンスサイズ頻度分布を算出する(ステップS1802)。例えば、異常診断装置101は、所定のサイズ幅(階級幅)で区切った階級ごとに、当該階級にメッセージサイズが属するレスポンスメッセージの頻度を算出する。
そして、異常診断装置101は、算出したレスポンスサイズ頻度分布から、第1条件を満たすピークサイズを特定する(ステップS1803)。例えば、異常診断装置101は、隣り合う階級の頻度との差分が閾値α以上の階級の階級値(代表値)を、第1条件を満たすピークサイズとして特定する。
つぎに、異常診断装置101は、第1条件を満たすピークサイズが特定されたか否かを判断する(ステップS1804)。ここで、第1条件を満たすピークサイズが特定されなかった場合(ステップS1804:No)、異常診断装置101は、異常ピークサイズ抽出処理を呼び出したステップに戻る。
一方、第1条件を満たすピークサイズが特定された場合(ステップS1804:Yes)、異常診断装置101は、正常ピークサイズデータ130を参照して、特定したピークサイズと正常ピークサイズとを比較する(ステップS1805)。そして、異常診断装置101は、比較した結果に基づいて、特定したピークサイズのうち、正常ピークサイズと異なるピークサイズがあるか否かを判断する(ステップS1806)。
ここで、異なるピークサイズがない場合(ステップS1806:No)、異常診断装置101は、異常ピークサイズ抽出処理を呼び出したステップに戻る。一方、異なるピークサイズがある場合(ステップS1806:Yes)、異常診断装置101は、当該異なるピークサイズを異常ピークサイズとして抽出して(ステップS1807)、異常ピークサイズ抽出処理を呼び出したステップに戻る。
これにより、Webサービスの障害による異常が発生したときのレスポンスメッセージ候補を絞り込むための異常ピークサイズを抽出することができる。
つぎに、図19および図20を用いて、図17に示したステップS1703のサービス異常判定処理の具体的な処理手順について説明する。ここでは、まず、サービス異常判定処理に用いる応答時間変動テーブル1900について説明する。
図19は、応答時間変動テーブル1900の記憶内容の一例を示す説明図である。図19において、応答時間変動テーブル1900は、異常ピークサイズおよび変動フラグのフィールドを有し、各フィールドに情報を設定することで、応答時間変動情報(例えば、応答時間変動情報1900-1,1900-2)をレコードとして記憶する。
ここで、異常ピークサイズは、レスポンスメッセージの異常ピークサイズである。異常ピークサイズフィールドには、図18に示したステップS1807において抽出された異常ピークサイズが設定される。変動フラグは、応答時間の変動の有無を示すフラグである。変動フラグ「0」は、応答時間の変動がないことを示す。変動フラグ「1」は、応答時間の変動があることを示す。
図20は、サービス異常判定処理の具体的処理手順の一例を示すフローチャートである。図20のフローチャートにおいて、まず、異常診断装置101は、ステップS1701において取得したメッセージデータから、応答時間が所定時間以下のメッセージデータを抽出する(ステップS2001)。
つぎに、異常診断装置101は、図19に示した応答時間変動テーブル1900から選択されていない未選択の異常ピークサイズを選択する(ステップS2002)。なお、異常ピークサイズが一つもない場合には、異常診断装置101は、サービス異常判定処理を呼び出したステップに戻る。
そして、異常診断装置101は、正常応答時間分布DB140から、選択した異常ピークサイズに対応する代表レスポンスサイズの正常応答時間分布データを抽出することにより、正常時のレスポンスメッセージの正常応答時間頻度分布を特定する(ステップS2003)。
つぎに、異常診断装置101は、抽出したメッセージデータのうち、レスポンスサイズが、選択した異常ピークサイズに対応するメッセージデータに基づいて、異常ピークサイズのレスポンスメッセージの応答時間頻度分布を算出する(ステップS2004)。例えば、異常診断装置101は、所定の時間幅(階級幅)で区切った階級ごとに、当該階級に応答時間が属するレスポンスメッセージの頻度を算出する。
そして、異常診断装置101は、算出した異常ピークサイズのレスポンスメッセージの応答時間頻度分布が、特定した正常時のレスポンスメッセージの応答時間頻度分布と統計的に異なるか否かを検定して、応答時間の変動の有無を判定する(ステップS2005)。判定された判定結果は、応答時間変動テーブル1900に記憶される。
例えば、応答時間の変動がないと判定された場合、選択された異常ピークサイズと対応付けて、変動フラグ「0」が応答時間変動テーブル1900に記憶される。一方、応答時間の変動があると判定された場合、選択された異常ピークサイズと対応付けて、変動フラグ「1」が応答時間変動テーブル1900に記憶される。
つぎに、異常診断装置101は、応答時間変動テーブル1900から選択されていない未選択の異常ピークサイズがあるか否かを判断する(ステップS2006)。ここで、未選択の異常ピークサイズがある場合(ステップS2006:Yes)、異常診断装置101は、ステップS2002に戻る。
一方、未選択の異常ピークサイズがない場合(ステップS2006:No)、異常診断装置101は、応答時間変動テーブル1900を参照して、変動フラグ「1」のレコードがあるか否かを判断する(ステップS2007)。ここで、変動フラグ「1」のレコードがない場合(ステップS2007:No)、異常診断装置101は、診断対象のサービスが正常と判定して(ステップS2008)、サービス異常判定処理を呼び出したステップに戻る。
一方、変動フラグ「1」のレコードがある場合(ステップS2007:Yes)、異常診断装置101は、診断対象のサービスの異常と判定して(ステップS2009)、サービス異常判定処理を呼び出したステップに戻る。
これにより、Webサービスの障害による異常が発生しているときは、応答時間が正常時と比較して変動することを利用して、Webサービスの異常診断を行うことができる。
以上説明したように、実施の形態にかかる異常診断装置101によれば、所定期間T内に送受信されたパケット群から特定されるレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータを取得することができる。パケット群は、データ部分が暗号化されたパケット群であってもよい。そして、異常診断装置101によれば、取得したメッセージデータに基づいて、レスポンスサイズ頻度分布から第1条件を満たすピークサイズを特定し、特定したピークサイズのうち、予め記憶された正常ピークサイズと異なるピークサイズを特定することができる。
これにより、サーバエラーなどの異常発生時には、レスポンスメッセージのメッセージサイズが特定値付近に集中するという傾向を利用して、異常発生時のレスポンスメッセージ候補を絞り込むための異常ピークサイズを抽出することができる。
また、異常診断装置101によれば、取得したメッセージデータに基づいて、異常ピークサイズのレスポンスメッセージの応答時間頻度分布が第2条件を満たすか否かを判断し、第2条件を満たす場合に、サービスの異常と判定することができる。
これにより、サーバエラーなどの異常発生時は、例えば、レスポンスを即座に返す処理が急増して応答時間が正常時と比較して変動するという傾向を利用して、異常ピークサイズのレスポンスメッセージの応答時間の変動の有無から、サービスの異常を診断することができる。また、パケットの中身(データ部分)を解析することなく、サービスの異常を判定できるため、暗号化通信の場合でも、サービスの異常診断を行うことができる。
また、異常診断装置101によれば、異常ピークサイズのレスポンスメッセージの応答時間頻度分布と、予め記憶された正常時におけるレスポンスメッセージの応答時間頻度分布とを比較して、応答時間の変動があると判定した場合に、第2条件を満たすと判断することができる。
これにより、レスポンスメッセージの応答時間頻度分布が正常時と統計的に異なるかどうかを検定して、応答時間の変動の有無を判定することができる。
また、異常診断装置101によれば、取得したメッセージデータに基づいて、所定のサイズ幅で区切った階級ごとに、当該階級にメッセージサイズが属するレスポンスメッセージの頻度(相対度数)を算出することができる。そして、異常診断装置101によれば、算出した算出結果に基づいて、隣り合う階級との頻度の差分が閾値α以上の階級に対応するメッセージサイズを、第1条件を満たすピークサイズとして特定することができる。
これにより、レスポンスメッセージが集中しているピークサイズを適切に判別することができる。
また、異常診断装置101によれば、取得したメッセージデータのうち、レスポンスサイズが所定サイズ以下のレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータに基づいて、第1条件を満たすピークサイズを特定することができる。
これにより、サーバエラーなどの異常発生時に受け渡されるレスポンスメッセージのメッセージサイズの取り得る範囲を考慮して、異常診断に用いるレスポンスメッセージを、メッセージサイズが所定サイズ以下のレスポンスメッセージに絞り込むことができる。
また、異常診断装置101によれば、異常ピークサイズがない場合、または、第2条件を満たさない場合、サービスが正常と判定することができる。
これにより、診断時のレスポンスサイズ頻度分布にあらわれたピークサイズが正常時と同じであったり、異常ピークサイズのレスポンスメッセージの応答時間が正常時から変動がないときは、サービスが正常であると診断することができる。
また、異常診断装置101によれば、判定した判定結果を出力することができる。これにより、異常診断システム100の管理者等に対して、サービスの異常診断結果を通知することができる。
また、異常診断装置101によれば、取得したメッセージデータのうち、応答時間が所定時間以下のレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータに基づいて、異常ピークサイズのレスポンスメッセージの応答時間頻度分布が第2条件を満たすか否かを判断することができる。
これにより、サーバエラーなどの異常発生時に受け渡されるレスポンスメッセージの応答時間の取り得る範囲を考慮して、異常診断に用いるレスポンスメッセージを、応答時間が所定時間以下のレスポンスメッセージに絞り込むことができる。
これらのことから、実施の形態にかかる異常診断システム100および異常診断装置101によれば、サービスを提供するシステムに手を加えることなく、暗号化通信の場合でも、サービス利用不可などの障害時の異常を診断することができる。また、暗号化通信でない場合であっても、レスポンスのデータパケットをプロトコル解析してステータスコードを取得するといった処理を行うことなく、サービスの異常診断ができるため、大容量の通信トラフィックに対応することが可能となる。
なお、本実施の形態で説明した異常診断方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本異常診断プログラムは、ハードディスク、フレキシブルディスク、CD(Compact Disc)-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本異常診断プログラムは、インターネット等のネットワークを介して配布してもよい。
また、本実施の形態で説明した異常診断装置101は、スタンダードセルやストラクチャードASIC(Application Specific Integrated Circuit)などの特定用途向けICやFPGAなどのPLD(Programmable Logic Device)によっても実現することができる。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)所定期間内に送受信された暗号化されたパケット群から特定されるレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータを取得し、
取得した前記メッセージデータに基づいて、レスポンスメッセージのメッセージサイズの頻度分布から第1条件を満たすピークサイズを特定し、
特定した前記ピークサイズのうち、予め記憶された正常時におけるレスポンスメッセージのピークサイズと異なるピークサイズがある場合、前記メッセージデータに基づいて、前記異なるピークサイズのレスポンスメッセージの応答時間の頻度分布が第2条件を満たすか否かを判断し、
前記第2条件を満たす場合に、サービスの異常と判定する、
処理をコンピュータに実行させることを特徴とする異常診断プログラム。
(付記2)前記判断する処理は、
前記異なるピークサイズのレスポンスの応答時間の頻度分布と、予め記憶された正常時におけるレスポンスメッセージの応答時間の頻度分布とを比較して、応答時間の変動があると判定した場合に、前記第2条件を満たすと判断する、ことを特徴とする付記1に記載の異常診断プログラム。
(付記3)前記特定する処理は、
前記メッセージデータに基づいて、所定のサイズ幅で区切った階級ごとに、前記階級にメッセージサイズが属するレスポンスメッセージの頻度を算出し、
算出した算出結果に基づいて、隣り合う階級との頻度の差分が閾値以上の階級に対応するメッセージサイズを、前記第1条件を満たすピークサイズとして特定する、
ことを特徴とする付記1または2に記載の異常診断プログラム。
(付記4)前記特定する処理は、
取得した前記メッセージデータのうち、レスポンスサイズが所定サイズ以下のレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータに基づいて、前記第1条件を満たすピークサイズを特定する、ことを特徴とする付記1~3のいずれか一つに記載の異常診断プログラム。
(付記5)前記異なるピークサイズがない場合、または、前記第2条件を満たさない場合、前記サービスが正常と判定する、処理を前記コンピュータに実行させることを特徴とする付記1~4のいずれか一つに記載の異常診断プログラム。
(付記6)判定した判定結果を出力する、処理を前記コンピュータに実行させることを特徴とする付記1~5のいずれか一つに記載の異常診断プログラム。
(付記7)前記パケット群は、前記サービスについて、前記所定期間内に送受信されたパケット群である、ことを特徴とする付記1~6のいずれか一つに記載の異常診断プログラム。
(付記8)前記判断する処理は、
取得した前記メッセージデータのうち、応答時間が所定時間以下のレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータに基づいて、前記異なるピークサイズのレスポンスメッセージの応答時間の頻度分布が第2条件を満たすか否かを判断する、ことを特徴とする付記1~7のいずれか一つに記載の異常診断プログラム。
(付記9)所定期間内に送受信された暗号化されたパケット群から特定されるレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータを取得し、
取得した前記メッセージデータに基づいて、レスポンスメッセージのメッセージサイズの頻度分布から第1条件を満たすピークサイズを特定し、
特定した前記ピークサイズのうち、予め記憶された正常時におけるレスポンスメッセージのピークサイズと異なるピークサイズがある場合、前記メッセージデータに基づいて、前記異なるピークサイズのレスポンスメッセージの応答時間の頻度分布が第2条件を満たすか否かを判断し、
前記第2条件を満たす場合に、サービスの異常と判定する、
処理をコンピュータが実行することを特徴とする異常診断方法。
100 異常診断システム
101 異常診断装置
102 Webサーバ
103 APサーバ
104 DBサーバ
105 クライアント装置
106 管理装置
107 ネットワークスイッチ
110 ネットワーク
120 メッセージデータDB
130 正常ピークサイズデータ
140 正常応答時間分布DB
200 メッセージデータ
210,220,1300 レスポンスサイズ頻度分布
230,240,1410,1411,1420,1421 応答時間頻度分布
300 バス
301 CPU
302 メモリ
303 I/F
304 ディスクドライブ
305 ディスク
701 取得部
702 第1の算出部
703 抽出部
704 第2の算出部
705 異常判定部
706 出力部
800 レスポンスサイズ頻度分布テーブル
900 異常ピークサイズテーブル
1000 応答時間頻度分布テーブル
1100 異常診断結果テーブル
1200 サービステーブル
1500,1600 異常診断結果画面
1501,1502,1503,1504,1505 通報メッセージ
1601,1602,1603 帯グラフ
1900 応答時間変動テーブル

Claims (7)

  1. 所定期間内に送受信された暗号化されたパケット群から特定されるレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータを取得し、
    取得した前記メッセージデータに基づいて、レスポンスメッセージのメッセージサイズの頻度分布から、レスポンスメッセージが集中しているピークサイズを判別する第1条件を満たすピークサイズを特定し、
    特定した前記ピークサイズのうち、予め記憶された正常時におけるレスポンスメッセージのピークサイズと異なるピークサイズがある場合、前記メッセージデータに基づいて、前記異なるピークサイズのレスポンスメッセージの応答時間の頻度分布が、正常時のレスポンスメッセージの応答時間の頻度分布と統計的に異なるといえる第2条件を満たすか否かを判断し、
    前記第2条件を満たす場合に、サービスの異常と判定する、
    処理をコンピュータに実行させることを特徴とする異常診断プログラム。
  2. 前記判断する処理は、
    前記異なるピークサイズのレスポンスメッセージの応答時間の頻度分布と、予め記憶された正常時におけるレスポンスメッセージの応答時間の頻度分布とを比較して、応答時間の変動があると判定した場合に、前記第2条件を満たすと判断する、ことを特徴とする請求項1に記載の異常診断プログラム。
  3. 前記特定する処理は、
    前記メッセージデータに基づいて、所定のサイズ幅で区切った階級ごとに、前記階級にメッセージサイズが属するレスポンスメッセージの頻度を算出し、
    算出した算出結果に基づいて、隣り合う階級との頻度の差分が閾値以上の階級に対応するメッセージサイズを、前記第1条件を満たすピークサイズとして特定する、
    ことを特徴とする請求項1または2に記載の異常診断プログラム。
  4. 前記特定する処理は、
    取得した前記メッセージデータのうち、レスポンスサイズが所定サイズ以下のレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータに基づいて、前記第1条件を満たすピークサイズを特定する、ことを特徴とする請求項1~3のいずれか一つに記載の異常診断プログラム。
  5. 前記異なるピークサイズがない場合、または、前記第2条件を満たさない場合、前記サービスが正常と判定する、処理を前記コンピュータに実行させることを特徴とする請求項1~4のいずれか一つに記載の異常診断プログラム。
  6. 判定した判定結果を出力する、処理を前記コンピュータに実行させることを特徴とする請求項1~5のいずれか一つに記載の異常診断プログラム。
  7. 所定期間内に送受信された暗号化されたパケット群から特定されるレスポンスメッセージのメッセージサイズと応答時間とを示すメッセージデータを取得し、
    取得した前記メッセージデータに基づいて、レスポンスメッセージのメッセージサイズの頻度分布から、レスポンスメッセージが集中しているピークサイズを判別する第1条件を満たすピークサイズを特定し、
    特定した前記ピークサイズのうち、予め記憶された正常時におけるレスポンスメッセージのピークサイズと異なるピークサイズがある場合、前記メッセージデータに基づいて、前記異なるピークサイズのレスポンスメッセージの応答時間の頻度分布が、正常時のレスポンスメッセージの応答時間の頻度分布と統計的に異なるといえる第2条件を満たすか否かを判断し、
    前記第2条件を満たす場合に、サービスの異常と判定する、
    処理をコンピュータが実行することを特徴とする異常診断方法。
JP2018154215A 2018-08-20 2018-08-20 異常診断プログラムおよび異常診断方法 Active JP7147361B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018154215A JP7147361B2 (ja) 2018-08-20 2018-08-20 異常診断プログラムおよび異常診断方法
US16/451,515 US10833921B2 (en) 2018-08-20 2019-06-25 Information processing apparatus and abnormality diagnosis method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018154215A JP7147361B2 (ja) 2018-08-20 2018-08-20 異常診断プログラムおよび異常診断方法

Publications (2)

Publication Number Publication Date
JP2020031281A JP2020031281A (ja) 2020-02-27
JP7147361B2 true JP7147361B2 (ja) 2022-10-05

Family

ID=69523075

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018154215A Active JP7147361B2 (ja) 2018-08-20 2018-08-20 異常診断プログラムおよび異常診断方法

Country Status (2)

Country Link
US (1) US10833921B2 (ja)
JP (1) JP7147361B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10938696B2 (en) * 2017-12-21 2021-03-02 Apple Inc. Health status monitoring for services provided by computing devices
JP2019125914A (ja) * 2018-01-16 2019-07-25 アラクサラネットワークス株式会社 通信装置及びプログラム
JP7147361B2 (ja) * 2018-08-20 2022-10-05 富士通株式会社 異常診断プログラムおよび異常診断方法
WO2021255800A1 (ja) * 2020-06-15 2021-12-23 日本電信電話株式会社 パケット収集システム、パケット統合解析装置、パケット収集方法、及びプログラム
US20220046406A1 (en) * 2020-08-07 2022-02-10 Nokia Technologies Oy Problem mitigation in subscriber profile management
CN114168376A (zh) * 2022-02-11 2022-03-11 深圳市北电仪表有限公司 设备数据诊断方法、装置、设备及可读存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020167942A1 (en) 2001-05-04 2002-11-14 Cathy Fulton Server-site response time computation for arbitrary applications

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008130010A (ja) 2006-11-24 2008-06-05 Hitachi Ltd Webサイトの運用状態監視装置および方法
JP5229028B2 (ja) 2009-03-17 2013-07-03 富士通株式会社 システム分析方法、装置及びプログラム
JP2014174845A (ja) * 2013-03-11 2014-09-22 Fujitsu Ltd 性能評価支援プログラム、性能評価支援装置及び性能評価支援方法
JP5957419B2 (ja) 2013-06-27 2016-07-27 日本電信電話株式会社 QoE推定装置、QoE推定方法及びプログラム
US10423884B2 (en) * 2015-06-04 2019-09-24 The Mathworks, Inc. Extension of model-based design to identify and analyze impact of reliability information on systems and components
JP7147361B2 (ja) * 2018-08-20 2022-10-05 富士通株式会社 異常診断プログラムおよび異常診断方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020167942A1 (en) 2001-05-04 2002-11-14 Cathy Fulton Server-site response time computation for arbitrary applications
JP2005506605A (ja) 2001-05-04 2005-03-03 ネットクオス・インコーポレーテッド 任意のアプリケーション用のサーバサイトでの応答時間の計算

Also Published As

Publication number Publication date
US20200059399A1 (en) 2020-02-20
JP2020031281A (ja) 2020-02-27
US10833921B2 (en) 2020-11-10

Similar Documents

Publication Publication Date Title
JP7147361B2 (ja) 異常診断プログラムおよび異常診断方法
JP6160673B2 (ja) 運用管理装置、運用管理方法、及びプログラム
US10373065B2 (en) Generating database cluster health alerts using machine learning
US8156377B2 (en) Method and apparatus for determining ranked causal paths for faults in a complex multi-host system with probabilistic inference in a time series
US10664837B2 (en) Method and system for real-time, load-driven multidimensional and hierarchical classification of monitored transaction executions for visualization and analysis tasks like statistical anomaly detection
US20040122942A1 (en) Method, system, and data structure for monitoring transaction performance in a managed computer network environment
JP6097889B2 (ja) 監視システム、監視装置、および検査装置
US20050182589A1 (en) Software system and methods for analyzing the performance of a server
US20120005534A1 (en) Method and apparatus for dealing with accumulative behavior of some system observations in a time series for bayesian inference with a static bayesian network model
US20160080229A1 (en) Application performance monitoring method and device
US11115288B2 (en) Parameter setting method, data analysis device and data analysis system
US10866939B2 (en) Alignment and deduplication of time-series datasets
JP5387779B2 (ja) 運用管理装置、運用管理方法、及びプログラム
JP2018165857A (ja) 分析装置、分析システム、分析方法および分析プログラム
US7251578B1 (en) Method and system of measuring data quality
CN111193608A (zh) 网络质量探测监控方法、装置、系统和计算机设备
CN111611146A (zh) 一种微服务故障预测方法和装置
KR101998972B1 (ko) 변수 구간별 불량 발생 지수를 도출하여 공정 불량 원인을 파악하고 시각화하는 방법
CN108880838B (zh) 业务故障的监控方法及装置、计算机设备及可读介质
CN112732472A (zh) 异常根因定位方法、模型、电子设备及计算机存储介质
JP6375200B2 (ja) 計算機システムの異常予兆検出装置および方法
CN113454950A (zh) 基于流量统计的网络设备及链路实时故障检测方法和系统
Zhang et al. PCA-based network-wide correlated anomaly event detection and diagnosis
EP3764232A1 (en) Business transactions impact analysis
WO2015182072A1 (ja) 因果構造推定システム、因果構造推定方法およびプログラム記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220401

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220905

R150 Certificate of patent or registration of utility model

Ref document number: 7147361

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150