JP2014203294A - 障害対応システムおよび障害対応方法 - Google Patents

障害対応システムおよび障害対応方法 Download PDF

Info

Publication number
JP2014203294A
JP2014203294A JP2013079635A JP2013079635A JP2014203294A JP 2014203294 A JP2014203294 A JP 2014203294A JP 2013079635 A JP2013079635 A JP 2013079635A JP 2013079635 A JP2013079635 A JP 2013079635A JP 2014203294 A JP2014203294 A JP 2014203294A
Authority
JP
Japan
Prior art keywords
information processing
processing apparatus
failure
application
identifier
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
JP2013079635A
Other languages
English (en)
Other versions
JP5869513B2 (ja
Inventor
英樹 高野
Hideki Takano
英樹 高野
前岡 淳
Atsushi Maeoka
淳 前岡
祖父江 恒夫
Tsuneo Sofue
恒夫 祖父江
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013079635A priority Critical patent/JP5869513B2/ja
Publication of JP2014203294A publication Critical patent/JP2014203294A/ja
Application granted granted Critical
Publication of JP5869513B2 publication Critical patent/JP5869513B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】ネットワーク上の複数装置間でアプリケーションが連携する環境において、障害発生時に障害発生箇所を効率的に特定して、状況に応じた適宜な障害対応をユーザに促し、障害の影響を効果的に抑制可能とする。【解決手段】ネットワーク20上の情報処理装置10が、アプリケーション呼び出し毎にトランザクションIDを含む通信ログを格納し、障害発生時にエラー内容とトランザクションIDを含むアプリログを格納し、障害検知時にアプリログが含むトランザクションIDをキーに、障害発生時に利用された第2の情報処理装置130を特定し、第2の情報処理装置130に対しアプリログ取得と第3の情報処理装置150に向けたモジュールの動作確認の少なくとも何れかを要求し、トランザクションIDに対応付いたアプリログとモジュール動作確認結果の少なくとも何れかの情報を取得して障害箇所を特定し、障害箇所に応じた対応動作を実行する。【選択図】図1

Description

本発明は、障害対応システムおよび障害対応方法に関するものであり、具体的には、ネットワーク上の複数装置間でアプリケーションが連携する環境において、障害発生時に障害発生箇所を効率的に特定して、状況に応じた適宜な障害対応をユーザに促し、障害の影響を効果的に抑制可能とする技術に関する。
システム障害が発生した場合、発生した障害の原因を特定するために、該当システムにおけるアプリケーション実行時に出力されているログを分析し、その障害状況に応じた処理を実施して障害の影響を低減する技術思想がある。
このような技術としては、例えば、障害通知処理を組み込んだアプリケーションプログラムからの情報を収集する情報収集手段が、障害の発生したアプリケーションプログラムからの障害通知を受けた場合、該受けた障害通知に対応する障害収集処理プログラムを障害通知側に送付する障害情報収集装置(特許文献1参照)などが提案されている。
また、他に、エラーを一意に識別するためのエラーコードとエラーの種類であるエラーレベルとを対応づけたエラーレベル対応表を記憶する記憶手段と、アプリケーションプログラムにおいてエラーが発生すると、該エラーのエラーコードをキーとしてエラーレベル対応表を検索してエラーレベルを取得し、該エラーレベルに応じた障害復旧処理を行うエラーレベル判定手段とを備える障害自動復旧システム(特許文献2参照)なども提案されている。
特開2001−282671号公報 特開2001−5693号公報
一方、昨今ではスマートフォンやタブレット端末等の高機能な携帯端末が増加しており、これらの携帯端末は、ユーザによるアプリケーションのインストールが端末購入後に自由に実行できる、アプリケーション実行基盤を備えている。また、一部のカーナビゲーション装置も、その購入後にユーザがアプリケーションを自由にインストールできる機能を有している。更に、そうしたカーナビゲーション装置のうち、テレマティクスサービス(telematics service)に接続するものは、スマートフォンで動作するアプリケーションと連携してユーザに機能を提供できるものがある。このスマートフォンで動作するアプリケーションも、カーナビゲーション装置購入後にユーザが自由に追加可能となっている。
上述した、携帯端末、携帯端末と接続したカーナビゲーション装置などの各種装置、および、携帯端末(のキャリア)を介して各種装置に情報提供を行うサーバ、のように、複数の装置がネットワーク上で互いに協働し、しかも装置購入後にユーザが自由にインストールした複数のアプリケーションが実行されるといったシステムに関して、従来の障害対応手法を採用するとしても課題が残されていた。
例えば、従来技術においては、障害情報を収集する対象が、障害の発生したアプリケーションが動作するサーバとなっており、障害発生箇所が不明な場合にネットワーク上で連携して動作する複数の装置から障害情報を自動収集して原因箇所を特定し、必要な対応処理を行うことは実現されていない。また、障害発生時のエラーコードに基づいて状況を判断し、必要な対応処理を行う場合、プログラム品質の問題等によりエラーコードが正しく出力されない、或いは障害によってエラーコードの出力自体が実行されない、といった事態に対応することはできない。また、障害発生時に、被害を受けたユーザの状況を踏まえた適切なメッセージを、適切なタイミングに調整して出力するといった、障害復旧以外の幅広い目的に対応することも出来なかった。
そこで本発明の目的は、ネットワーク上の複数装置間でアプリケーションが連携する環境において、障害発生時に障害発生箇所を効率的に特定して、状況に応じた適宜な障害対応をユーザに促し、障害の影響を効果的に抑制可能とする技術を提供することにある。
上記課題を解決する本発明の障害対応システムは、ネットワークを介しアプリケーションを互いに連携させる複数の情報処理装置を含むシステムであって、各情報処理装置は、アプリケーション実行時に、他の情報処理装置たる第2の情報処理装置のアプリケーションの呼び出しが発生する度に、情報処理装置間を跨る処理の識別子と情報処理装置間の送受信関係とを含む通信ログを記憶装置に格納する処理と、障害発生時に、エラー内容と前記識別子とを含むアプリログを記憶装置に格納する処理と、障害検知時に、前記アプリログが含む前記識別子をキーとして前記通信ログでの検索を行い、障害発生時に前記識別子に対応した処理で利用された第2の情報処理装置を特定する処理と、前記特定した第2の情報処理装置に対し、当該第2の情報処理装置が保持する、前記識別子に対応付いたアプリログの取得と、当該第2の情報処理装置が前記識別子に対応付いた処理での通信相手とした第3の情報処理装置に向けたモジュールの動作確認と、の少なくとも何れかを要求する処理と、前記要求が前記第2の情報処理装置で実行されて返信された結果として、前記識別子に対応付いたアプリログと、前記第3の情報処理装置におけるモジュールに関する動作確認結果との少なくとも何れかの情報を取得し、当該取得した情報に基づいて、正常動作を行っていない情報処理装置のアプリケーションないしモジュールを障害箇所として特定する処理と、障害箇所に応じて予め定められた対応動作の内容に基づいて、前記特定した障害箇所に応じた対応動作を特定し、該当対応動作を実行する処理と、を実行する演算装置を備えることを特徴とする。
また、本発明の障害対応方法は、ネットワークを介しアプリケーションを互いに連携させる各情報処理装置が、アプリケーション実行時に、他の情報処理装置たる第2の情報処理装置のアプリケーションの呼び出しが発生する度に、情報処理装置間を跨る処理の識別子と情報処理装置間の送受信関係とを含む通信ログを記憶装置に格納する処理と、障害発生時に、エラー内容と前記識別子とを含むアプリログを記憶装置に格納する処理と、障害検知時に、前記アプリログが含む前記識別子をキーとして前記通信ログでの検索を行い、障害発生時に前記識別子に対応した処理で利用された第2の情報処理装置を特定する処理と、前記特定した第2の情報処理装置に対し、当該第2の情報処理装置が保持する、前記識別子に対応付いたアプリログの取得と、当該第2の情報処理装置が前記識別子に対応付いた処理での通信相手とした第3の情報処理装置に向けたモジュールの動作確認と、の少なくとも何れかを要求する処理と、前記要求が前記第2の情報処理装置で実行されて返信された結果として、前記識別子に対応付いたアプリログと、前記第3の情報処理装置におけるモジュールに関する動作確認結果との少なくとも何れかの情報を取得し、当該取得した情報に基づいて、正常動作を行っていない情報処理装置のアプリケーションないしモジュールを障害箇所として特定する処理と、障害箇所に応じて予め定められた対応動作の内容に基づいて、前記特定した障害箇所に応じた対応動作を特定し、該当対応動作を実行する処理と、を実行することを特徴とする。
本発明によれば、ネットワーク上の複数装置間でアプリケーションが連携する環境において、障害発生時に障害発生箇所を効率的に特定して、状況に応じた適宜な障害対応をユーザに促し、障害の影響を効果的に抑制することができる。
本実施形態における障害対応システムの構成例を示す図である。 本実施形態におけるユーザ端末の構成例を示す図である。 本実施形態におけるサーバの構成例を示す図である。 本実施形態における管理サーバの構成例を示す図である。 本実施形態における障害対応方法の処理手順例1を示す図である。 本実施形態における通信ログの出力例を示す図である。 本実施形態におけるアプリログの出力例を示す図である。 本実施形態における障害対応方法の処理手順例2を示す図である。 本実施形態における障害対応方法の処理手順例3を示す図である。 本実施形態における障害対応方法の処理手順例4を示す図である。 本実施形態の障害状況調査結果の例を示す図である。 本実施形態のモジュール確認方法データの例を示す図である。 本実施形態の障害対応方法DBのデータ構成例を示す図である。 本実施形態のユーザプロファイルのデータ構成例を示す図である。
以下に本発明の実施形態について図面を用いて詳細に説明する。図1は、本実施形態の障害対応システム1の構成例を示す図である。図1に示す障害対応システム1は、ネットワーク上の複数装置間でアプリケーションが連携する環境において、障害発生時に障害発生箇所を効率的に特定して、状況に応じた適宜な障害対応をユーザに促し、障害の影響を効果的に抑制可能とするコンピュータシステムである。
ここでは、ユーザが利用するユーザ端末10とデータセンタ100の各サーバ装置らをキャリアネットワーク20で接続したネットワーク構成を前提とする。また、ユーザ端末10と上述のサーバ装置の各々に所定のプログラムを配置することで、アプリケーション実行基盤を実現し、このアプリケーション実行基盤上で動作するアプリケーションに障害が発生した時に、適切な障害対策を自動的に実施するのが本実施形態の障害対応システム1となる。
図1に示すネットワーク構成において、ユーザ端末10は、アプリケーションのユーザが利用する情報処理装置である。このユーザ端末10は、キャリアネットワーク20経由で、データセンタ100に配置したサーバ装置の機能を利用する。本実施形態では、ユーザ端末10としてカーナビゲーション機能を提供する車載機を想定する。
なお、ユーザ端末10とデータセンタ100との間を接続するネットワークとして、図1の例では、携帯電話回線であるキャリアネットワーク20を想定しているが、勿論、ユーザ端末10とデータセンタ100との間の通信プロトコルに応じて適宜なネットワークを採用すればよい。
一方、データセンタ100には、負荷分散器110、A1サーバ130、A2サーバ140、Bサーバ150、管理サーバ120が配置され、各装置はネットワークで接続さている。こデータセンタ100におけるネットワークは、ユーザ端末10と通信できるように上述のキャリアネットワーク20と接続している。また、これらのデータセンタ100の各装置110〜150は、物理サーバ装置または仮想情報処理装置のいずれかである。
こうしたネットワーク構成において、上述のユーザ端末10に配置したユーザ端末アプリから所定の処理要求を出すと、A1サーバ130又はA2サーバ140、及びBサーバ150に配置したサーバアプリが連携して処理を行い、上述の処理要求に対する応答をユーザ端末10のユーザ端末アプリに送返信することとなる。
なお、上述の負荷分散器110は、ユーザ端末10で実行するユーザ端末アプリからの処理要求を複数のサーバ130、140のいずれかに振り分ける機能を持つ。本実施形態では、A1サーバ130及びA2サーバ140は同様のサーバアプリ機能を有することを想定しており、従って、負荷分散器110は、ユーザ端末10で動作するユーザ端末アプリからの処理要求を受けた場合、A1サーバ130又はA2サーバ140に処理を振り分ける。この振り分けの処理は、例えば、ユーザ端末10から処理要求を受け取る順序に従って交互に振り分け先を切り替えたり、各サーバに所定の処理要求を送信し応答を受け取るまでにかかった時間を計測し、その時間が短い方に振り分けたりする方法を取る。
また、Bサーバ150のサーバアプリは、A1サーバ130又はA2サーバ140に配置したアプリケーションから利用する機能を有している。例えば、A1サーバ130及びA2サーバ140にはWebサーバ機能とWebサーバが受け取った処理要求に応じて所定の処理を実行するアプリの実行機能を配置し、このアプリの実行時に当該アプリが利用するデータをA1サーバ130とA2サーバ140で共通化するため、データベース機能をBサーバ150に配置して連携するものとする。
図2にユーザ端末10の構成例を示す。ユーザ端末10は情報処理装置であり、CPU201、メモリ202、記憶装置220、表示装置203、入力装置204、位置測位装置205、通信装置206、加速度センサ207、ジャイロセンサ208、車両情報取得装置209で構成する。記憶装置220は、本実施形態の障害対応システム1を構成する情報処理装置としての機能を実装するためのプログラム225、221や、各データを格納している。また、CPU201は、記憶装置220に保存されたプログラム225、221やデータを適宜メモリ202に読み込んで処理する。
また、表示装置203は、上述のプログラム225、221の実行結果をユーザに示す装置でありディスプレイ装置を想定できる。また、入力装置204はユーザからの指示を受け付ける装置であり、キーボードやマウス等の装置を想定できる。
また、位置測位装置205は、ユーザ端末10が存在する位置を測位する装置であり、GPSユニット等を想定出来る。また、通信装置206は、キャリアネットワーク20を介してデータセンタ100のサーバ類とデータを送受信する装置である。
また、加速度センサ207は、ユーザ端末10の加速度を測定する装置であり、ジャイロセンサ208は、ユーザ端末10の角速度を測定する装置である。
また、車両情報取得装置209は、当該ユーザ端末10が搭載された車両の制御に用いられる車内ネットワークに接続し、車両状態等に関する車両情報(例:アクセルやブレーキの踏み込み度合いや車両の速度等の情報)を取得するために用いる装置である。
次に、記憶装置220に格納するプログラムとデータについて説明する。ユーザ端末アプリ221は、ユーザが利用するアプリケーションを実現するプログラムである。また、プログラム225は、本実施形態の障害対応システム1を構成する情報処理装置として必要な機能を実装するためのプログラムとなる。
また、ユーザプロファイル231は、該当情報処理装置のユーザの属性(例:年齢1402、性別1403、住所1404など)を格納したデータベースである(図14参照)。
また、通信ログファイル232は、プログラムの動作を追跡可能とするために用いる通信ログを保存するファイルであり、アプリログファイル233は、プログラム実行中に発生した障害情報を表すアプリログを保存するファイルである。なお、通信ログファイル232、アプリログファイル233は、ファイルではなくDB等を用いても良い。
また、障害対応方法DB234は、障害の状況に応じた振る舞いを格納するデータベースである。この障害対応方法DB234は、DBではなくファイルを用いても良い。
図3に、A1サーバ130、A2サーバ140、およびBサーバ150の各サーバ装置の構成例を示す。各サーバは、CPU301、メモリ302、記憶装置320、表示装置303、入力装置304、通信装置305を、上述のユーザ端末10と同様に備えている。また、記憶装置320には、サーバアプリ321、および、障害対応システム1を構成する情報処理装置として必要な機能を実装するためのプログラム325、通信ログファイル326、アプリログファイル327を格納する。
サーバアプリ321は、ユーザ端末アプリ221と連携してユーザに機能を提供するプログラムである。ここでは、A1サーバ130、A2サーバ140には同じサーバアプリ321が稼働し、Bサーバ150には、A1サーバ130、A2サーバ140とは異なるサーバアプリ321が稼働することを想定する。なお、通信ログファイル326、アプリログファイル327は、図2のユーザ端末10の記憶装置220に格納した同名のプログラム、データと同様の構成、役割を持つ。
図4に管理サーバ120の構成例を示す。この管理サーバ120においても、CPU401、メモリ402、記憶装置410、表示装置403、入力装置404、通信装置405を、ユーザ端末10等と同様に備えている。このうち、記憶装置410には、障害対応システム1を構成する情報処理装置として必要な機能を実装するためのプログラム425、統合通信ログDB413、および統合アプリログDB414を格納する。統合通信ログDB413、統合アプリログDB414はファイルで実現しても良い。プログラム425は、上述のA1サーバ130、A2サーバ140、Bサーバ150らから送信された通信ログ又はアプリログを受信し、統合通信ログDB413又は統合アプリログDB414に格納する処理と、統合通信ログDB413又は統合アプリログDB414から条件に合致するログを検索する処理とを実装するためのプログラムとなる。
続いて、上述したネットワーク構成においてユーザ端末10のユーザ端末アプリ221と、A1サーバ130(ないしA2サーバ140)とが連携し、更には、A1サーバ130(ないしA2サーバ140)とBサーバ150とが連携する処理の流れについて説明する。図5は本実施形態における障害対応方法の処理手順例1を示す図であり、具体的には、アプリの処理の流れを示す図である。
この場合、ユーザ端末10は、ユーザ端末アプリ221における処理(501)で、サーバへの通信が必要であるとき、まずトランザクションID(以降、TIDとする)を生成する(502)。以降、このTIDは情報処理装置に跨った通信時に他の情報処理装置に引き渡すこととし、ユーザ端末10やA1サーバ130、A2サーバ140、Bサーバ150らは、通信ログやアプリログ等の出力時に、このTIDを一緒に出力する。
次に、ユーザ端末10は、通信ログ(要求送信)を出力(503)した上で、Aサーバ処理要求(504)をキャリアネットワーク20に送信する。Aサーバ処理要求(504)は、その宛先に従って負荷分散器110に到達することになる。
この時、負荷分散器110では、サーバ振り分け先の特定処理(505)を実施し、A1サーバ130又はA2サーバ140のどちらへAサーバ処理要求を送信すべきか決定する。負荷分散器110は、決定した送信先(本例ではA1サーバ130とする)にAサーバ処理要求を送信する(506)。
A1サーバ130は、上述のAサーバ処理要求を受けると、通信ログ(要求受信)を出力(507)し、上述のサーバアプリ321によるAサーバアプリ処理(508)を実施する。また、A1サーバ130は、Bサーバ処理要求を出す場合は、通信ログ(要求送信)を出力(509)し、Bサーバ処理要求をBサーバ150に送信する(510)。
Bサーバ150は、上述のBサーバ処理要求を受信すると、通信ログ(要求受信)を出力(511)する。Bサーバ150は、自身のサーバアプリによるBサーバアプリ処理を実施し終えたら、応答を返す前に、通信ログ(応答送信)を出力(513)し、要求元たるA1サーバ130に応答を返す。
この場合、A1サーバ130はBサーバ150から応答を受け取って、通信ログ(応答受信)を出力(514)し、サーバアプリ321によるAサーバアプリ処理(515)を実行する。A1サーバ130は、要求元たるユーザ端末10に応答する際、通信ログ(応答送信)を出力(516)して応答を返す。
一方、ユーザ端末10では、A1サーバ130からの応答を受信し、通信ログ(応答受信)を出力(517)して、ユーザ端末アプリ221によるユーザ端末アプリ処理(518)を実行する。こうして、各情報処理装置のアプリケーション間での一連の処理に伴う、通信ログの出力がなされることとなる。なお、図5の例では、TIDをユーザ端末アプリ221による通信の開始時に生成しているが、ユーザ端末アプリ221へのユーザの入力が発生するたびに生成するとしても良い。また、HTTPでアクセスしたときに動作するサーバアプリ処理は、APサーバ上で実施することが一般的であり、APサーバと連携し、APサーバが要求を受け取ったときに、通信ログ(要求受信)出力を自動的に実施する方法も考えられる。
このような図5に示すシーケンスを実行した結果、出力される通信ログの例を、図6に示す。図6に示す通信ログ600の例では、ユーザ端末10にて生成されたTIDが「123456abc」であり、ユーザ端末10のIPアドレスが「123.1.1.10」、負荷分散器110のIPアドレスが「210.1.1.110」、A1サーバ130のIPアドレスが「210.1.1.130」、Bサーバ150のIPアドレスが「210.1.1.150」となっている。
また、この通信ログ600は、A1サーバ130又はA2サーバ140のAサーバアプリは、ポート番号「80」で公開し、A1サーバ130又はA2サーバ140のAサーバアプリへは負荷分散器110を通して、「http://abc.com/app」のURLでアクセスできるように構成されていることを示している。また、Bサーバ150のBサーバアプリは、ポート番号「80」で公開し、「http://210.1.1.150/appB」のURLでアクセスできるよう構成されている。
この通信ログ600における項目は、日時601、通信種別602、TID603、クライアントIP604、クライアントポート番号605、サーバIP606、サーバポート番号607、プログラム種別608、URL609である。このうち日時601は、ログが出力された日時を表す。また、通信種別602は、通信ログの種別を表す情報であり、SND_REQ(要求を送信したことを表す)、RCV_REQ(要求を受信したことを表す)、SND_RES(応答を送信したことを表す)、RCV_RES(応答を受信したことを表す)、といった種類がある。
また、TID603は、トランザクションIDであり、複数の情報処理装置に跨った一連の処理を一意に特定するために用いるIDである。また、クライアントIP604は、HTTP通信におけるクライアント側のIPアドレスであり、クライアントポート番号605は、HTTP通信におけるクライアントのポート番号である。
また、サーバIP606は、HTTP通信におけるサーバ側のIPアドレスであり、サーバポート番号607は、HTTP通信におけるサーバ側のポート番号である。
また、プログラム種別608は、ログを出力したプログラムの種別であり、URL609は、サーバ側のアプリすなわちサーバアプリ321にアクセスするためのURLである。本実施形態では通信ログ600の出力例を表形式で記述したが、スペース区切りのテキストファイルで出力した形態であるとしてもよい。
一方、上述のユーザ端末10やデータセンタ100のA1サーバ130、A2サーバ140、Bサーバ150らにおける各アプリの処理で障害が発生した場合、各装置はアプリログに障害の内容を記録することとなる。図7にアプリログ700の出力例を示す。このアプリログ700において、日時701はログが出力された日時を表し、重要度702は、アプリログの重要度を表す。また、重要度702には、例えば、FATAL(アプリの動作を続行できない障害の発生を表す)、ERROR(トランザクション処理を続行できない障害の発生を表す)、WARNING(トランザクション処理は続行できるが、注意を要する事象の発生を表す)、INFORMATION(アプリの内部状態の変化の発生を表す)、DEBUG(デバッグ用のメッセージの発生を表す)、といった値がある。
また、TID703は、トランザクションIDであり、複数の情報処理装置に跨った処理の流れを一意に特定するために用いるIDである。
また、プログラム種別704は、ログを出力したプログラムの種別であり、IP705はログを出力した情報処理装置のIPアドレスであり、情報処理装置(ユーザ端末10やサーバ類)を識別するために用いる。
また、メッセージID706は、発生したエラーを識別するためのIDであり、内容707は、発生したエラー内容を表す文字列である。
本例ではアプリログ700の出力例を表形式の形態として記述したが、スペース区切りのテキストファイルで出力する形態も考えられる。
なお、上述の各サーバ、すなわちA1サーバ130、A2サーバ140、Bサーバ150らは、自身のサーバアプリ321が出力したログを検知し、該当ログを管理サーバ120に送信するものとする。この場合の処理の流れを図8に例示する。
図8にて示すように、A1サーバ130、A2サーバ140、Bサーバ150らは、プログラム325を実行することで実装される機能として、サーバアプリ321が出力したログを検知し(801)、検知したログを管理サーバ120に送信する(802)。他方、ログ管理サーバ120は、A1サーバ130、A2サーバ140、Bサーバ150らから受信したログを、記憶装置420における統合通信ログDB413または統合アプリログDB414に保存する(803)。
なお、A1サーバ130、A2サーバ140、B150で出力されたログを、ログ管理サーバ120で一括管理することと同様に、ユーザ端末10で発生したログも管理サーバ120に送信し、管理サーバ120にて収集するとしてもよい。
続いて、上述のネットワーク構成において、いずれかの情報処理装置にて障害が発生した際の処理について説明する。図9は、本実施形態における障害対応方法の処理手順例3を示す図である。
ここではまず、ユーザ端末10がユーザ端末アプリ221の障害を検知(901)する。この障害検知の手法としては、例えば、ユーザ端末10が、プログラム225を実行して得られる所定機能により(以下、各処理について同様)、ユーザ端末アプリ221に関して収集しているアプリログファイル233を監視し、アプリログファイル233が含む重要度702の値が「ERROR」又は「FATAL」のときに障害であると検知する、といった手法が採用できる。
次に、ユーザ端末10は、重要度702の値が「ERROR」又は「FATAL」である上記アプリログ233におけるTID703の値を読み出し、このTID713の値が対応付いている通信ログを、通信ログファイル232から読み出し、該当通信ログから、障害発生時の通信相手を特定する(902)。図7の例であれば、例えば、重要度702の値が「ERROR」であるアプリログにおけるTID703の値「234567bcd」を読み出し、このTID713の値「234567bcd」が対応付いている通信ログを、通信ログファイル232から読み出る。そしてここで出力した各通信ログのクライアントIP604,サーバIP606の各値から、障害発生時のユーザ端末10(IPアドレスが、“123.1.1.10”)の通信相手たるサーバを、例えば、負荷分散器110(IPアドレスが、“123.1.1.110”)などと特定できる。
次に、ユーザ端末10は、モジュール確認の処理(903)を実施する。この処理は、通信相手の情報処理装置、この場合はすなわち負荷分散器110で稼働するモジュールの動作をチェックする処理である。当該処理の詳細については後述する。
続いて、ユーザ端末10は、障害状況調査要求を通信相手の負荷分散器110に送信する(904)。一方、負荷分散器110は、ユーザ端末10から処理を受けると、上述したようなサーバ振り分け先の特定処理を実施し、振り分け先とした通信先(ここではA2サーバ140とする)に対し、ユーザ端末10から受けた上述の障害状況調査要求を送信する(906)。
続いて、A2サーバ140では、上述の障害状況調査要求を負荷分散器110から受信し、上述したステップ902〜904と同様に、障害状況調査要求が含む上述のTID「234567bcd」の値が対応付いている通信ログを、通信ログファイル326から読み出し、該当通信ログから、障害発生時の通信相手(ここではBサーバ150とする)を特定する処理(907)、A2サーバ140の通信相手たるBサーバ150におけるモジュール確認の処理(908)、障害状況調査要求を通信相手のBサーバ150に送信する処理(909)を実施する。
一方、A2サーバ140から上述の障害状況調査要求を受けたBサーバ150は、上述のステップ902やステップ907と同様に通信相手の特定(910)を行うが、図9に示すシーケンスの例では、更なる通信先が存在しないため、ステップ908、909に相当する処理は実施しない。
他方、Bサーバ150は、障害があったときのアプリログを上述のTID「234567bcd」をキーに自身のアプリログファイル327から取得し(911)、これを障害状況調査要求の送り元であるA2サーバ140に返す。
一方、A2サーバ140でもBサーバ150同様に、上述のTID「234567bcd」をキーに自身のアプリログファイル327からアプリログの取得を実施し(912)、障害状況調査要求を受けた上述のユーザ端末10に返す。また、このユーザ端末10でもアプリログの取得処理を実施する(913)。
以上のように障害状況の調査処理は、障害が発生したトランザクションに参加した情報処理装置(ユーザ端末10、負荷分散器110、A2サーバ140、Bサーバ150)に跨って実施され、モジュールの動作確認の結果やアプリログの情報がユーザ端末10に収集される。
続いて、ユーザ端末10は、こうして収集した情報と、ユーザプロファイル231やユーザ端末10が搭載された車両状態等の情報を組み合わせて、障害への対応動作を特定する(914)。この対応動作の特定処理の詳細については後述する。最後に、ユーザ端末10は、ステップ914で特定した障害への対応動作を実行する(915)。この対応動作についても詳細は後述する。
次に、上述した障害状況調査要求に応じて情報処理装置にて実行される障害状況調査のフローについて説明する。図10は本実施形態における障害対応方法の処理手順例4を示す図である。このフローは、ユーザ端末10、A1サーバ130、A2サーバ140、およびB150で実施する処理となる。なお、本フローは、障害が発生したトランザクションのTIDが分かっていることを前提としている。
また、障害状況調査とは、図9のシーケンスで例示した通信相手の特定(902、907、910)、モジュールの動作確認(903、908)、障害状況調査要求(904、909)、およびアプリログ取得(911、912、913)の各処理を含んでいる。当該フローチャートの左側に各々の処理に対応する箇所を示している。
この場合まず、障害状況調査要求を受けた情報処理装置は、自情報処理装置の記憶装置にて、上述のTID(障害が発生したトランザクションのもの)が対応付いた通信ログが存在することを確認する(1001)。この処理により、上述のTIDが対応付いた通信ログを特定できなければ(1001:N)、情報処理装置は、管理サーバ120に対し、上述のTIDとURLが対応付いたログが存在することを確認する(1002)。なお、ユーザ端末10でステップ1002を実行する場合、ステップ1002の結果は常に「N」、すなわち対応するログは無い結果となる。
ステップ1002の結果、上述のTIDとURLが対応付いたログが管理サーバ120にて特定できた場合(1002:Y)、情報処理装置は、管理サーバ120にて特定できたログが示す通信相手の情報処理装置は冗長構成が取られていると特定し、障害状況調査結果1100(図11)の冗長構成1104の値として「あり」と記録する(1003)。
また、情報処理装置は、通信種別602の値が「SND_REQ」である全通信ログのサーバIP606の値を、通信相手のIPとして取得する(1004)。他方、上述のステップ1002の結果、上述のTIDとURLが対応付いたログが管理サーバ120にて特定できなかった場合(1002:N)、情報処理装置は、障害状況調査結果1100の障害箇所1103の値として「通信」と記録する(1005)。
続いて、情報処理装置は、上述のステップ1004で得ている全ての通信相手のIPごとに、通信相手のモジュールを特定する(1007)。この通信相手のモジュールの特定処理は、例えば、図12に示すモジュール確認方法DB1200を用いて実施する。この場合、情報処理装置は、ステップ1004で得ている通信相手のIPが、モジュール確認方法DB1200において処理装置IP1201の値が一致するエントリを取得する。なお、このモジュール確認方法DB1200におけるモジュール1202の値は、モジュールの名称であり、確認順序1203の値は、モジュール間で動作確認を行う順序であり、確認方法1204の値は、モジュールの動作確認を行う際の方法を示している。
例えば、図12の例のうち、処理装置IPが「210.1.1.150」の情報処理装置、すなわちBサーバ150は、「OS」と「DBサーバ」がモジュールとして稼働しており、「OS」、「DBサーバ」の順で動作確認すべきであることを示している。また、この場合の「OS」の動作確認は、pingコマンドのreply有無で実施し、「DBサーバ」の動作確認は、DBへの接続成功か否かにより実施することが示されている。
なお、図12のモジュール確認方法DB1200の例では、分かり易さのために確認方法1204の値を文章で記述しているが、プログラム等の情報処理装置で実行可能な形式で格納するとしてもよい。また、処理装置IP1201毎にモジュールを管理しているが、アプリにアクセスするときに用いる識別子であるURL毎に管理するとしてもよい。
情報処理装置は、上述のステップ1007を実行後、各モジュールの確認順序1203の値と確認方法1204の値に従って、通信相手のモジュールに関するチェック(動作確認)を実行する(1009)。このチェックの結果、該当モジュールが正常であれば(1010:Y)、情報処理装置は処理をステップ1008に戻し、次のモジュールの動作確認を実施する。情報処理装置は、こうしたモジュールの動作確認の処理を、モジュール数分繰り返し、終了したかどうかを確認する(1008)。
なお、本実施形態では、モジュールのチェック(1009)の処理を、通信元の情報処理装置から通信相手の情報処理装置に対して実施するように構成したが、自情報処理装置で稼働するモジュールを自情報処理装置内に閉じてチェックするとしてもよい。つまり、障害状況調査要求を受けたら、自情報処理装置で稼働するモジュールを特定し、その動作確認を行うのである。
説明をステップ1008に戻す。モジュール数分の動作確認が終了していなければ(1008:N)、情報処理装置は、ステップ1009、1010を実行する。他方、モジュール数分の動作確認が終了していれば(1008:Y)、情報処理装置は、処理をステップ1006に戻し、上述のステップ1007〜ステップ1010の処理を、ステップ1004で取得した通信相手数分だけ繰り返し実行する。
他方、上述のステップ1007〜ステップ1010の処理を、ステップ1004で取得した通信相手数分だけ実行済みとなれば(1006:Y)、情報処理装置は、処理をステップ1013に進める。
なお、上述のステップ1010の処理の結果、該当モジュールが正常ではなかった場合(1010:N)、情報処理装置は、障害状況調査結果1100の障害箇所1103の値として、正常ではなかったモジュールの名称を記録し(1011)、ステップ1004で得ている通信相手のうち処理の済んでいない通信相手に、障害状況調査要求を送信する(1012)。このとき情報処理装置は、上述のステップ1001又はステップ1002で特定した通信ログの情報を相手先に送信する。
次に、ステップ1013において情報処理装置は、上述のTID(障害が発生したトランザクションのTID)が対応付いたアプリログを、自身の記憶装置にて取得する。該当情報処理装置がユーザ端末10であれば、自身の記憶装置に格納されたアプリログファイル233中からログを取得し、サーバ(A1サーバ130、A2サーバ140、Bサーバ150)であれば管理サーバ120に要求し、管理サーバ120の統合アプリログDB41から取得する。
次に、情報処理装置は、障害状況調査結果1100の処理装置IP1101の値として、自情報処理装置のIPを記録し(1014)、障害状況調査結果1100を、障害状況調査要求の送り元に返して(1015)、処理を終了する。
なお、以上の処理(1001〜1015)を情報処理装置が実施した結果、図11に示す障害状況調査結果1100を生成し、これを障害状況調査要求の送り元に返すことになる。この障害状況調査結果1100は、障害の発生したトランザクション内で利用された情報処理装置毎に、処理装置IP1101、該当処理装置で発生したアプリログ1102、障害箇所1103、および冗長構成1104の各値から構成されている。各値の設定手法については上述した通りである。なお、本実施形態では、この障害状況調査結果1100を表形式にて表現しているが、XMLやJSON等の構造化データとして記載するとしてもよい。
また、上述の例では、ネットワーク上の情報処理装置の冗長構成有無を、障害が発生したときに呼び出された情報処理装置と、障害状況調査時に呼び出された情報処理装置が異なることをもって判断した例を示しているが、予め代表IPアドレス(負荷分散器110のIPアドレス)又はURLと冗長構成有無のテーブルを用意し、クライアントのアクセス先のURLから、冗長構成の有無を判定する方法も採用できる。
続いて、障害対応方法DB234について説明する。図13は本実施形態の障害対応方法DB234のデータ構成例を示す図である。ここで例示する障害対応方法DB234は、アプリログ1301、障害箇所(観測箇所)1302、冗長構成1303、ユーザプロファイル1304、車両状態1305、アプリ性質1306、および対応方法1307の各値から構成されている。
このうちアプリ性質1306は、アプリ(ユーザ端末アプリ221、サーバアプリ321)を公開するURL毎に管理する属性であり、ユーザ操作(ユーザが操作したことをトリガーとして呼び出されるアプリであることを示す。例:飲食店の検索アプリ)、バックグラウンド(ユーザの操作がなくてもバックグラウンドで呼び出されるアプリであることを示す。例:カーナビゲーション装置の地図上に表示する渋滞情報を取得するアプリ)といった種類があることを想定する。なお、DB中の「−」は何れであっても良いことを表す。また、図13の例では、対応方法を文章で表現したが、ユーザ端末10等の情報処理装置で実行できるプログラムで記述することができる。
このような障害対応方法DB234を利用する情報処理装置は、図10のフローにより得られた障害状況調査結果1100が含む、処理装置IP1101、アプリログ1102、障害箇所1103、冗長構成1104と、自身の記憶装置にて保持するユーザプロファイル231、当該情報処理装置が搭載された車両の制御に用いられる車内ネットワークに接続して得た車両状態の情報、通信ログに記録したURLで公開されているアプリの性質1306とを、上述の障害対応方法DB234(に格納した条件である、アプリログ1301、障害箇所(観測箇所)1302、冗長構成1303、ユーザプロファイル1304、車両状態1305、アプリ性質1306の各値)に照合し、各値がマッチする対応方法1307の値を取得することとなる。また、情報処理装置は、取得した対応方法1307の値に対応した動作を実行する。
例えば、図13の障害対応方法DB234における各行のうち、「#1」と「#2」のエントリは、アプリログ1301に「ユーザ端末が通信不可に設定されており通信できない」内容のログが出力されており、アプリ性質1306が「ユーザ操作」であった場合の対応動作を規定したものである。この場合は、情報処理装置は、ユーザプロファイル1304の年齢1402の値を参照し、該当ユーザの年齢が「60以上」であれば、該当ユーザに対しサポートセンタの電話番号を含むメッセージを表示装置203にて表示し、一方、年齢が「60未満」であればユーザに対しサポートセンタの電話番号を含まないメッセージを表示装置203にて表示することになる。こうした制御を行うことにより、サポートセンタへの問い合わせ数を制御することができる。
また、「#3」のエントリは、障害箇所1302がサーバの通信であった場合に対応したものとなる。サーバに関して、障害箇所1302の値が「通信」になる場合は、障害状況調査時には通信が通ったことを示す。つまり、障害時には不通であったが、障害状況調査時には、疎通したことが予想できる。そのため、この場合の情報処理装置は、ユーザ端末からの要求を再送する対応方法1307を実行することになる。
また、「#4」のエントリは、障害箇所1302が「OS」であり、障害箇所(観測箇所)は「ユーザ端末」であり、アプリ性質1306が「ユーザ操作」であった場合に対応したものとなる。こうした状況は、キャリアネットワーク20の電波状況が悪いことが考えられる。そのため、この場合の情報処理装置は、ユーザに対し、電波状況を確認することを示すメッセージを表示装置203にて示す対応方法1307を実行することになる。
また、「#5」、「#6」のエントリは、モジュールの動作確認処理において、「Webサーバ/APサーバ/DBサーバ」の何れかが不正であり、かつ冗長構成が「ない」場合に対応したものとなる。Webサーバ/APサーバ/DBサーバのミドルウェアにおける障害は、再起動により復旧する可能性がある。そのため、この場合の情報処理装置は、アプリ性質1306が「ユーザ操作」であった場合、ユーザに対し、5分以上(再起動に要するであろう時間)経ってから該当処理を再実行することを表示装置203にて示し、他方、アプリ性質1306が「バックグラウンド」であった場合、5分経過後に自動的に該当処理を再実行する対応方法1307を実行する。
また、「#7」のエントリは、障害箇所1302が存在しない(つまりチェックしたモジュールは正常であった)場合に対応したものとなる。このとき、冗長構成が取られていれば、次回は正常なサーバに処理を割り振られる可能性がある。そのため、情報処理装置は、自動的に要求を再送するとの対応方法1307を実行する。
また、「#8」のエントリは、障害箇所1302が存在せず、冗長構成が「ない」場合に対応したものとなる。この時、モジュールは正常であることから、アプリケーションに障害が発生したことが考えられ、この場合、障害復旧には時間がかかることが考えられる。そのため、アプリ性質1306が「ユーザ操作」であれば、情報処理装置は、ユーザに対し、しばらく要求しないように該当メッセージを表示装置203にて示し、ユーザが操作しても30分間は同URLに要求を送信しないように抑止する。一方、アプリ性質1306が「バックグラウンド」であれば、情報処理装置は、30経過後要求を再送する。
また、「#10」、「#11」のエントリは、アプリログ1301があり、車両状態1305が「運転中」かどうかにより、アプリログの内容を表示するか否かを決定するものとなる。また、「#12」のエントリは、アプリログがなく、かつ、他にマッチする条件が障害対応方法DB234内に存在しない場合に対応したものとなる。この場合は、原因不明のエラーであるため、情報処理装置は、ユーザに対し、サポートセンタに問い合わせを行うようにメッセージを表示装置203にて表示する対応方法1307を実行する。
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
こうした本実施形態によれば、ネットワーク上の複数装置間でアプリケーションが連携する環境において、障害発生時に障害発生箇所を効率的に特定して、状況に応じた適宜な障害対応をユーザに促し、障害の影響を効果的に抑制可能となる。
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち本実施形態の障害対応システムにおける情報処理装置の演算装置は、当該情報処理装置が保持する、前記識別子に対応付いたアプリログの取得と、前記特定した第2の情報処理装置に向けたモジュールの動作確認と、の少なくとも何れかを実行し、前記障害箇所を特定する処理において、前記第2の情報処理装置から得た、前記識別子に対応付いたアプリログおよび、前記第3の情報処理装置におけるモジュールに関する動作確認結果の少なくとも何れかの情報と、当該情報処理装置自身で得た、前記識別子に対応付いたアプリログおよび、前記第2の情報処理装置におけるモジュールの動作確認結果との少なくともいずれかの情報と、に基づいて、正常動作を行っていない情報処理装置のアプリケーションないしモジュールを障害箇所として特定するものである、としてもよい。
これによれば、障害発生を感知した情報処理装置における障害箇所についても特定可能であり、より効率的かつ的確な障害対応が可能となる。
また、上述の障害対応システムにおける前記第2の情報処理装置の演算装置は、前記要求を受けた際に、前記識別子に対応した処理で通信相手であった第3の情報処理装置を自身の通信ログで特定し、前記特定した第3の情報処理装置に対し、当該第3の情報処理装置が保持する、前記識別子に対応付いたアプリログの取得と、当該第3の情報処理装置が前記識別子に対応付いた処理での通信相手とした第4の情報処理装置に向けたモジュールの動作確認と、の少なくとも何れかの要求を更に行うものである、としてもよい。
これによれば、ネットワーク上でトランザクションIDなどの識別子を介して一連の処理を実行する情報処理装置の範囲をより幅広く把握することにつながり、ひいては、障害箇所特定の精度をより向上させ、更に的確な障害対応が可能となる。
また、上述の障害対応システムにおける前記情報処理装置の演算装置は、前記障害箇所を特定する処理において、前記識別子をキーとして送受信関係で連なった、少なくとも前記第2から前記第4の各情報処理装置間で前記要求に応じた処理が実行されて返信された結果として、前記連なった前記第2から前記第4の各情報処理装置らで出力した、前記識別子に対応付いたアプリログと、通信相手の情報処理装置におけるモジュールに関する動作確認結果との少なくとも何れかの情報を取得し、当該取得した情報と、当該情報処理装置自身で得た、前記識別子に対応付いたアプリログおよび、前記第2の情報処理装置におけるモジュールの動作確認結果との少なくともいずれかの情報とに基づいて、正常動作を行っていない情報処理装置のアプリケーションないしモジュールを障害箇所として特定するものである、としてもよい。
これによれば、ネットワーク上でトランザクションIDなどの識別子を介して一連の処理を実行する情報処理装置の範囲をより幅広く把握し、障害箇所特定の精度をより向上させ、更に的確な障害対応が可能となる。
また、上述の障害対応システムにおける各情報処理装置は、記憶装置において、少なくとも通信相手となりうる情報処理装置ないしアプリケーション毎に、該当情報処理装置に含まれる又はアプリケーションが利用している各モジュールの識別子と、各モジュールに関する前記動作確認の内容と、モジュール間での前記動作確認の実行順序とを規定した、モジュール確認方法データベースを格納しており、前記第2の情報処理装置の演算装置は、前記要求を受けた際に、当該要求が前記モジュールの動作確認を含むものであった場合、前記識別子をキーとして自身の通信ログでの検索を行い、前記識別子に対応した処理で通信相手であった前記第3の情報処理装置を特定し、前記特定した前記第3の情報処理装置の各モジュールについて、該当モジュールの動作確認の内容と各モジュール間での動作確認の実行順序とを前記モジュール確認方法データベースにて特定し、前記各モジュールに対する前記動作確認を前記実行順序に従って実行し、当該実行結果である、前記各モジュールに関する動作確認結果を前記要求の送信元である前記情報処理装置に宛てて返信する処理を実行するものである、としてもよい。
これによれば、情報処理装置に備わる複数のモジュールそれぞれについて、好適な実行順序の下、的確な動作確認を効率的に行うことが可能となり、障害箇所特定の効率と精度をより向上させ、更に的確な障害対応が可能となる。
また、上述の障害対応システムにおける前記情報処理装置は、障害検知時に、前記アプリログが含む前記識別子をキーとして、当該情報処理装置および前記第2の情報処理装置の各通信ログでの検索を行い、いずれの情報処理装置でも前記識別子が対応付いた通信ログが存在しなかった場合、前記第2の情報処理装置についてはネットワークにおいて冗長構成が取られていると特定する処理を実行し、前記対応動作の特定を行う処理において、障害箇所における冗長構成有無に応じて予め定められた対応動作の内容に基づいて、前記特定した障害箇所とその冗長構成有無に応じた対応動作を特定し、該当対応動作を実行するものである、としてもよい。
これによれば、ネットワーク上で広く存在する冗長構成について、これを対応動作の特定基準に含めることで、更に的確な障害対応が可能となる。
また、上述の記載の障害対応システムにおける前記情報処理装置は、前記記憶装置において、当該情報処理装置のユーザの属性情報を格納したユーザプロファイルと、ネットワーク上の障害箇所、当該情報処理装置のユーザの属性、および当該情報処理装置を備えた所定装置の状態、の少なくともいずれか又はそれらを組み合わせた条件と、該当条件時における対応動作とを対応付けた障害対応方法データベースとを格納しており、前記演算装置は、対応動作の特定を行う処理において、前記特定した障害箇所、前記ユーザプロファイルから得た当該情報処理装置のユーザの属性、および前記所定装置から所定のインターフェイスを介して取得した前記所定装置の状態、の少なくともいずれか又はそれらを組み合わせた情報を、前記障害対応方法データベースの前記条件に照合して対応動作を特定し、該当対応動作を実行するものである、としてもよい。
これによれば、障害発生時の様々な条件、すなわち障害箇所や、冗長構成の有無や、ユーザプロファイルや、ユーザの利用状況等に応じて、障害対応時のシステムの振る舞いを切り替えることが可能となり、障害発生時にユーザが取るべき行動を、よりきめ細やかにかつ適切に案内することができる。そのためユーザ満足度を向上できる。しかも、障害発生時にユーザが迷わず対策できれば、アプリケーション開発ベンダやシステムベンダが用意するサポートセンタへの問い合わせ数、頻度を低減できる効果もある。
また、上述の障害対応システムにおける前記情報処理装置は、ネットワーク上におけるユーザ端末であり、前記第2および第3の情報処理装置は、ネットワーク上におけるサーバ装置であるとしてもよい。これによれば、ユーザ端末のアプリケーションとサーバ装置のアプリケーションとの間の連携環境に関して障害箇所を特定し、的確かつ効率的な障害対応が可能となる。
1 障害対応システム
10 ユーザ端末(情報処理装置)
20 キャリアネットワーク(ネットワーク)
100 データセンタ
110 負荷分散器
120 管理サーバ
130 A1サーバ(第2の情報処理装置)
140 A2サーバ(第2の情報処理装置)
150 Bサーバ(第3の情報処理装置)
201、301、401 CPU(演算装置)
202、302、402 メモリ
203、303、403 表示装置
204、304、404 入力装置
205 位置測位装置
206、305、405 通信装置
207 加速度センサ
208 ジャイロセンサ
209 車両情報取得装置
220、320、420 記憶装置
225、325、425 プログラム
231 ユーザプロファイル
234 障害対応方法DB
232、326 通信ログファイル
233、327 アプリログファイル
413 統合通信ログDB
414 統合アプリログDB

Claims (9)

  1. ネットワークを介しアプリケーションを互いに連携させる複数の情報処理装置を含むシステムであって、
    各情報処理装置は、
    アプリケーション実行時に、他の情報処理装置たる第2の情報処理装置のアプリケーションの呼び出しが発生する度に、情報処理装置間を跨る処理の識別子と情報処理装置間の送受信関係とを含む通信ログを記憶装置に格納する処理と、
    障害発生時に、エラー内容と前記識別子とを含むアプリログを記憶装置に格納する処理と、
    障害検知時に、前記アプリログが含む前記識別子をキーとして前記通信ログでの検索を行い、障害発生時に前記識別子に対応した処理で利用された第2の情報処理装置を特定する処理と、
    前記特定した第2の情報処理装置に対し、当該第2の情報処理装置が保持する、前記識別子に対応付いたアプリログの取得と、当該第2の情報処理装置が前記識別子に対応付いた処理での通信相手とした第3の情報処理装置に向けたモジュールの動作確認と、の少なくとも何れかを要求する処理と、
    前記要求が前記第2の情報処理装置で実行されて返信された結果として、前記識別子に対応付いたアプリログと、前記第3の情報処理装置におけるモジュールに関する動作確認結果との少なくとも何れかの情報を取得し、当該取得した情報に基づいて、正常動作を行っていない情報処理装置のアプリケーションないしモジュールを障害箇所として特定する処理と、
    障害箇所に応じて予め定められた対応動作の内容に基づいて、前記特定した障害箇所に応じた対応動作を特定し、該当対応動作を実行する処理と、
    を実行する演算装置を備えることを特徴とする障害対応システム。
  2. 前記情報処理装置の演算装置は、
    当該情報処理装置が保持する、前記識別子に対応付いたアプリログの取得と、前記特定した第2の情報処理装置に向けたモジュールの動作確認と、の少なくとも何れかを実行し、
    前記障害箇所を特定する処理において、
    前記第2の情報処理装置から得た、前記識別子に対応付いたアプリログおよび、前記第3の情報処理装置におけるモジュールに関する動作確認結果の少なくとも何れかの情報と、当該情報処理装置自身で得た、前記識別子に対応付いたアプリログおよび、前記第2の情報処理装置におけるモジュールの動作確認結果との少なくともいずれかの情報と、に基づいて、正常動作を行っていない情報処理装置のアプリケーションないしモジュールを障害箇所として特定するものである、
    ことを特徴とする請求項1に記載の障害対応システム。
  3. 前記第2の情報処理装置の演算装置は、
    前記要求を受けた際に、前記識別子に対応した処理で通信相手であった第3の情報処理装置を自身の通信ログで特定し、前記特定した第3の情報処理装置に対し、当該第3の情報処理装置が保持する、前記識別子に対応付いたアプリログの取得と、当該第3の情報処理装置が前記識別子に対応付いた処理での通信相手とした第4の情報処理装置に向けたモジュールの動作確認と、の少なくとも何れかの要求を更に行うものである、
    ことを特徴とする請求項2に記載の障害対応システム。
  4. 前記情報処理装置の演算装置は、
    前記障害箇所を特定する処理において、
    前記識別子をキーとして送受信関係で連なった、少なくとも前記第2から前記第4の各情報処理装置間で前記要求に応じた処理が実行されて返信された結果として、前記連なった前記第2から前記第4の各情報処理装置らで出力した、前記識別子に対応付いたアプリログと、通信相手の情報処理装置におけるモジュールに関する動作確認結果との少なくとも何れかの情報を取得し、当該取得した情報と、当該情報処理装置自身で得た、前記識別子に対応付いたアプリログおよび、前記第2の情報処理装置におけるモジュールの動作確認結果との少なくともいずれかの情報とに基づいて、正常動作を行っていない情報処理装置のアプリケーションないしモジュールを障害箇所として特定するものである、
    ことを特徴とする請求項3に記載の障害対応システム。
  5. 各情報処理装置は、
    記憶装置において、少なくとも通信相手となりうる情報処理装置ないしアプリケーション毎に、該当情報処理装置に含まれる又はアプリケーションが利用している各モジュールの識別子と、各モジュールに関する前記動作確認の内容と、モジュール間での前記動作確認の実行順序とを規定した、モジュール確認方法データベースを格納しており、
    前記第2の情報処理装置の演算装置は、前記要求を受けた際に、当該要求が前記モジュールの動作確認を含むものであった場合、前記識別子をキーとして自身の通信ログでの検索を行い、前記識別子に対応した処理で通信相手であった前記第3の情報処理装置を特定し、前記特定した前記第3の情報処理装置の各モジュールについて、該当モジュールの動作確認の内容と各モジュール間での動作確認の実行順序とを前記モジュール確認方法データベースにて特定し、前記各モジュールに対する前記動作確認を前記実行順序に従って実行し、当該実行結果である、前記各モジュールに関する動作確認結果を前記要求の送信元である前記情報処理装置に宛てて返信する処理を実行するものである、
    ことを特徴とする請求項1に記載の障害対応システム。
  6. 前記情報処理装置は、
    障害検知時に、前記アプリログが含む前記識別子をキーとして、当該情報処理装置および前記第2の情報処理装置の各通信ログでの検索を行い、いずれの情報処理装置でも前記識別子が対応付いた通信ログが存在しなかった場合、前記第2の情報処理装置についてはネットワークにおいて冗長構成が取られていると特定する処理を実行し、
    前記対応動作の特定を行う処理において、障害箇所における冗長構成有無に応じて予め定められた対応動作の内容に基づいて、前記特定した障害箇所とその冗長構成有無に応じた対応動作を特定し、該当対応動作を実行するものである、
    ことを特徴とする請求項1に記載の障害対応システム。
  7. 前記情報処理装置は、
    前記記憶装置において、
    当該情報処理装置のユーザの属性情報を格納したユーザプロファイルと、
    ネットワーク上の障害箇所、当該情報処理装置のユーザの属性、および当該情報処理装置を備えた所定装置の状態、の少なくともいずれか又はそれらを組み合わせた条件と、該当条件時における対応動作とを対応付けた障害対応方法データベースとを格納しており、
    前記演算装置は、対応動作の特定を行う処理において、
    前記特定した障害箇所、前記ユーザプロファイルから得た当該情報処理装置のユーザの属性、および前記所定装置から所定のインターフェイスを介して取得した前記所定装置の状態、の少なくともいずれか又はそれらを組み合わせた情報を、前記障害対応方法データベースの前記条件に照合して対応動作を特定し、該当対応動作を実行するものである、
    ことを特徴とする請求項1に記載の障害対応システム。
  8. 前記情報処理装置は、ネットワーク上におけるユーザ端末であり、前記第2および第3の情報処理装置は、ネットワーク上におけるサーバ装置であることを特徴とする請求項1に記載の障害対応システム。
  9. ネットワークを介しアプリケーションを互いに連携させる各情報処理装置が、
    アプリケーション実行時に、他の情報処理装置たる第2の情報処理装置のアプリケーションの呼び出しが発生する度に、情報処理装置間を跨る処理の識別子と情報処理装置間の送受信関係とを含む通信ログを記憶装置に格納する処理と、
    障害発生時に、エラー内容と前記識別子とを含むアプリログを記憶装置に格納する処理と、
    障害検知時に、前記アプリログが含む前記識別子をキーとして前記通信ログでの検索を行い、障害発生時に前記識別子に対応した処理で利用された第2の情報処理装置を特定する処理と、
    前記特定した第2の情報処理装置に対し、当該第2の情報処理装置が保持する、前記識別子に対応付いたアプリログの取得と、当該第2の情報処理装置が前記識別子に対応付いた処理での通信相手とした第3の情報処理装置に向けたモジュールの動作確認と、の少なくとも何れかを要求する処理と、
    前記要求が前記第2の情報処理装置で実行されて返信された結果として、前記識別子に対応付いたアプリログと、前記第3の情報処理装置におけるモジュールに関する動作確認結果との少なくとも何れかの情報を取得し、当該取得した情報に基づいて、正常動作を行っていない情報処理装置のアプリケーションないしモジュールを障害箇所として特定する処理と、
    障害箇所に応じて予め定められた対応動作の内容に基づいて、前記特定した障害箇所に応じた対応動作を特定し、該当対応動作を実行する処理と、
    を実行することを特徴とする障害対応方法。
JP2013079635A 2013-04-05 2013-04-05 障害対応システムおよび障害対応方法 Active JP5869513B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013079635A JP5869513B2 (ja) 2013-04-05 2013-04-05 障害対応システムおよび障害対応方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013079635A JP5869513B2 (ja) 2013-04-05 2013-04-05 障害対応システムおよび障害対応方法

Publications (2)

Publication Number Publication Date
JP2014203294A true JP2014203294A (ja) 2014-10-27
JP5869513B2 JP5869513B2 (ja) 2016-02-24

Family

ID=52353676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013079635A Active JP5869513B2 (ja) 2013-04-05 2013-04-05 障害対応システムおよび障害対応方法

Country Status (1)

Country Link
JP (1) JP5869513B2 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106681909A (zh) * 2016-12-02 2017-05-17 中国工商银行股份有限公司 一种联机交易故障定位方法及装置
JP2019500680A (ja) * 2015-11-10 2019-01-10 アリババ グループ ホウルディング リミテッド データ処理方法及び装置
JP2019505028A (ja) * 2016-12-14 2019-02-21 平安科技(深▲せん▼)有限公司 取引システムエラー検出方法、装置、記憶媒体及びコンピュータデバイス
WO2020012579A1 (ja) * 2018-07-11 2020-01-16 日本電気株式会社 ログ分析装置、ログ分析方法、プログラム
JP2020065124A (ja) * 2018-10-15 2020-04-23 キヤノン株式会社 通信システム、情報処理装置、およびその制御方法、プログラム
CN112100048A (zh) * 2020-09-24 2020-12-18 中国建设银行股份有限公司 一种服务器自适应巡检方法及装置
CN112463561A (zh) * 2020-11-20 2021-03-09 中国建设银行股份有限公司 一种故障定位方法、装置、设备及存储介质
CN113051121A (zh) * 2019-12-26 2021-06-29 百度在线网络技术(北京)有限公司 日志信息检索方法、装置、电子设备和介质
CN113704067A (zh) * 2021-09-09 2021-11-26 合肥新青罗数字技术有限公司 无形资产管理系统监控方法
CN113890819A (zh) * 2021-09-29 2022-01-04 杭州迪普科技股份有限公司 故障处理方法、装置及系统
CN116449809A (zh) * 2023-06-16 2023-07-18 成都瀚辰光翼生物工程有限公司 一种故障处理方法、装置、电子设备及存储介质
CN116560893A (zh) * 2023-07-07 2023-08-08 湖南开放大学(湖南网络工程职业学院、湖南省干部教育培训网络学院) 一种计算机应用程序运行数据故障处理系统
CN117615057A (zh) * 2023-11-22 2024-02-27 中电金信数字科技集团有限公司 故障检测方法、装置、系统、计算机设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003216594A (ja) * 2002-01-21 2003-07-31 Hitachi Ltd 障害資料採取方法及びその実施システム並びにその処理プログラム
JP2003228498A (ja) * 2002-02-05 2003-08-15 Toshiba Corp 履歴データ収集システムおよび履歴データ収集プログラム
JP2012079212A (ja) * 2010-10-05 2012-04-19 Hitachi Systems Ltd 情報処理装置、および障害復旧方法
JP2012208919A (ja) * 2011-03-15 2012-10-25 Ricoh Co Ltd 電子機器、情報処理システム、及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003216594A (ja) * 2002-01-21 2003-07-31 Hitachi Ltd 障害資料採取方法及びその実施システム並びにその処理プログラム
JP2003228498A (ja) * 2002-02-05 2003-08-15 Toshiba Corp 履歴データ収集システムおよび履歴データ収集プログラム
JP2012079212A (ja) * 2010-10-05 2012-04-19 Hitachi Systems Ltd 情報処理装置、および障害復旧方法
JP2012208919A (ja) * 2011-03-15 2012-10-25 Ricoh Co Ltd 電子機器、情報処理システム、及びプログラム

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019500680A (ja) * 2015-11-10 2019-01-10 アリババ グループ ホウルディング リミテッド データ処理方法及び装置
CN106681909A (zh) * 2016-12-02 2017-05-17 中国工商银行股份有限公司 一种联机交易故障定位方法及装置
JP2019505028A (ja) * 2016-12-14 2019-02-21 平安科技(深▲せん▼)有限公司 取引システムエラー検出方法、装置、記憶媒体及びコンピュータデバイス
JP7078114B2 (ja) 2018-07-11 2022-05-31 日本電気株式会社 ログ分析装置、ログ分析方法、プログラム
WO2020012579A1 (ja) * 2018-07-11 2020-01-16 日本電気株式会社 ログ分析装置、ログ分析方法、プログラム
JPWO2020012579A1 (ja) * 2018-07-11 2021-07-08 日本電気株式会社 ログ分析装置、ログ分析方法、プログラム
JP2020065124A (ja) * 2018-10-15 2020-04-23 キヤノン株式会社 通信システム、情報処理装置、およびその制御方法、プログラム
JP7218141B2 (ja) 2018-10-15 2023-02-06 キヤノン株式会社 通信システム、および画像形成装置
CN113051121A (zh) * 2019-12-26 2021-06-29 百度在线网络技术(北京)有限公司 日志信息检索方法、装置、电子设备和介质
CN112100048A (zh) * 2020-09-24 2020-12-18 中国建设银行股份有限公司 一种服务器自适应巡检方法及装置
CN112100048B (zh) * 2020-09-24 2024-01-26 中国建设银行股份有限公司 一种服务器自适应巡检方法及装置
CN112463561A (zh) * 2020-11-20 2021-03-09 中国建设银行股份有限公司 一种故障定位方法、装置、设备及存储介质
CN113704067A (zh) * 2021-09-09 2021-11-26 合肥新青罗数字技术有限公司 无形资产管理系统监控方法
CN113704067B (zh) * 2021-09-09 2023-10-24 合肥新青罗数字技术有限公司 无形资产管理系统监控方法
CN113890819A (zh) * 2021-09-29 2022-01-04 杭州迪普科技股份有限公司 故障处理方法、装置及系统
CN116449809B (zh) * 2023-06-16 2023-09-05 成都瀚辰光翼生物工程有限公司 一种故障处理方法、装置、电子设备及存储介质
CN116449809A (zh) * 2023-06-16 2023-07-18 成都瀚辰光翼生物工程有限公司 一种故障处理方法、装置、电子设备及存储介质
CN116560893B (zh) * 2023-07-07 2023-09-22 湖南开放大学(湖南网络工程职业学院、湖南省干部教育培训网络学院) 一种计算机应用程序运行数据故障处理系统
CN116560893A (zh) * 2023-07-07 2023-08-08 湖南开放大学(湖南网络工程职业学院、湖南省干部教育培训网络学院) 一种计算机应用程序运行数据故障处理系统
CN117615057A (zh) * 2023-11-22 2024-02-27 中电金信数字科技集团有限公司 故障检测方法、装置、系统、计算机设备和存储介质

Also Published As

Publication number Publication date
JP5869513B2 (ja) 2016-02-24

Similar Documents

Publication Publication Date Title
JP5869513B2 (ja) 障害対応システムおよび障害対応方法
US10616039B2 (en) System and method for remote maintenance
CN107633016B (zh) 数据处理方法及装置和电子设备
CN109714209B (zh) 一种网站访问故障的诊断方法及系统
CN110719199B (zh) 一种网络自动测试及故障定位方法及装置
US20090165100A1 (en) Web page safety judgment system
CN106911648B (zh) 一种环境隔离方法及设备
US10467576B2 (en) Distributed software process tracking
JP6654738B1 (ja) データソースの動作状態に基づくテレメトリデータの処理
CN112737800B (zh) 服务节点故障定位方法、调用链生成方法及服务器
CN106060004A (zh) 数据库访问方法及数据库代理节点
WO2015120687A1 (zh) 一种诊断及解决移动终端故障的方法及装置
CN113835836B (zh) 动态发布容器服务的系统、方法、计算机设备及介质
JP5342082B1 (ja) ネットワーク障害解析システムおよびネットワーク障害解析プログラム
US9935867B2 (en) Diagnostic service for devices that employ a device agent
CN114697232A (zh) Skywalking探针的指标数据采集系统、方法及电子设备
CN106571975B (zh) 一种通信数据的容错方法及装置
CN113868058A (zh) 一种外设组件高速互联设备故障检测方法、装置及服务器
CN102684925A (zh) 互联网访问来源信息的获取方法和装置
CN110875832B (zh) 异常业务监控方法、装置、系统及计算机可读存储介质
US20060200554A1 (en) System and method for prompting unnormal statuses of an operation system
CN107872493B (zh) 一种信息处理方法、终端和服务器
US7756252B2 (en) Method and system for network denial case generation
JP2007304837A (ja) 情報処理装置及び監視方法並びにプログラム
JP2006285453A (ja) 情報処理装置、情報処理方法、および情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150318

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151216

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160107

R150 Certificate of patent or registration of utility model

Ref document number: 5869513

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150