IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ NECプラットフォームズ株式会社の特許一覧

特許7601443サーバ装置、ユーザ装置、システム、動作方法、及びプログラム
<>
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図1
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図2
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図3
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図4
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図5
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図6
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図7
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図8
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図9
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図10
  • 特許-サーバ装置、ユーザ装置、システム、動作方法、及びプログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-12-09
(45)【発行日】2024-12-17
(54)【発明の名称】サーバ装置、ユーザ装置、システム、動作方法、及びプログラム
(51)【国際特許分類】
   G06F 11/07 20060101AFI20241210BHJP
【FI】
G06F11/07 193
【請求項の数】 10
(21)【出願番号】P 2023110186
(22)【出願日】2023-07-04
【審査請求日】2023-07-04
(73)【特許権者】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100080816
【弁理士】
【氏名又は名称】加藤 朝道
(74)【代理人】
【識別番号】100098648
【弁理士】
【氏名又は名称】内田 潔人
(72)【発明者】
【氏名】是恒 修二
【審査官】今川 悟
(56)【参考文献】
【文献】特開2019-057139(JP,A)
【文献】特開2019-160116(JP,A)
【文献】特開2019-079354(JP,A)
【文献】特開2012-234273(JP,A)
【文献】特開平09-297679(JP,A)
【文献】特開平10-207746(JP,A)
【文献】米国特許出願公開第2016/0179655(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/07
(57)【特許請求の範囲】
【請求項1】
装置又はシステムの動作ログを取得する取得部と、
前記装置又はシステムのエラーと、前記エラーの対応策と、を関連付けて蓄積する蓄積部と、
前記取得された動作ログよりエラーを検出する検出部と、
前記検出されたエラーに基づいて、前記蓄積部に蓄積されている、検出された前記エラーと一致するエラーにかかる対応策を抽出する抽出部と、
前記抽出された対応策を実行するための実行部と、
を有し、
前記実行部は、前記エラーと一致するエラーに係る対応策が前記蓄積部に見当たらない場合に、前記エラーの対応策として前記装置又はシステムをデバッグモードで動作させ、
前記取得部は、デバッグモードによる動作ログを取得する、
サーバ装置。
【請求項2】
前記検出部は、前記動作ログと、前記動作ログより前の動作ログと、からエラーを検出する、
請求項1のサーバ装置。
【請求項3】
前記検出部は、前記動作ログにおいて所定回数以上の繰り返しが生じている場合にエラーを検出する、
請求項1のサーバ装置。
【請求項4】
動作ログを取得する取得部と、
前記動作ログよりエラーを検出する検出部と、
前記エラーを識別するエラー識別子を、エラー識別子とその対応策とを関連付けて蓄積するサーバ装置に送信する送信部と、
前記エラー識別子に基づいて抽出された、前記サーバ装置に蓄積されている、検出された前記エラー識別子と一致するエラー識別子にかかる対応策を受信する受信部と、
前記対応策を実行するための実行部と、
を有するユーザ装置であって
前記実行部は、前記エラーと一致するエラーに係る対応策が前記サーバ装置に見当たらない場合に、前記エラーの対応策として前記ユーザ装置をデバッグモードで動作させ、
前記取得部は、デバッグモードによる動作ログを取得する、
ユーザ装置。
【請求項5】
前記検出部は、前記動作ログと、前記動作ログより前の動作ログと、からエラーを検出する、
請求項4のユーザ装置。
【請求項6】
前記検出部は、前記動作ログにおいて所定回数以上の繰り返しが生じている場合にエラーを検出する、
請求項4のユーザ装置。
【請求項7】
ユーザ装置と、サーバ装置と、からなるシステムであって、
前記ユーザ装置のエラーを識別するエラー識別子と、前記エラーの対応策と、を関連付けて蓄積する蓄積部と、
前記ユーザ装置よりエラー識別子を受信し、前記エラー識別子に基づいて、前記蓄積部に蓄積されている、検出された前記エラー識別子と一致するエラー識別子にかかる対応策を抽出して送信する抽出部と、
を有するサーバ装置と、
動作ログを取得する取得部と、
前記動作ログよりエラーを検出する検出部と、
前記検出されたエラーを識別するエラー識別子を送信する送信部と、
前記対応策を受信する受信部と、
前記対応策を実行するための実行部と、
を有するユーザ装置と、
を含み、
前記実行部は、前記エラーと一致するエラーに係る対応策が前記蓄積部に見当たらない場合に、前記エラーの対応策として前記ユーザ装置をデバッグモードで動作させ、
前記取得部は、デバッグモードによる動作ログを取得する、
システム。
【請求項8】
前記検出部は、前記動作ログと、前記動作ログより前の動作ログと、からエラーを検出する、
請求項7のシステム。
【請求項9】
装置又はシステムのエラーと、前記エラーの対応策と、を関連付けて蓄積する蓄積部を有するサーバ装置の動作方法であって、
装置又はシステムの動作ログを取得するステップと、
前記取得された動作ログよりエラーを検出するステップと、
前記検出されたエラーに基づいて、前記蓄積部に蓄積されている、検出された前記エラーと一致するエラーにかかる対応策を抽出するステップと、
前記抽出された対応策を実行するためのステップと、
を含み、
前記エラーと一致するエラーに係る対応策が前記蓄積部に見当たらない場合に、前記エラーの対応策として前記装置又はシステムをデバッグモードで動作させ、
デバッグモードによる動作ログを取得する、
動作方法。
【請求項10】
装置又はシステムの動作ログを取得する処理と、
前記取得された動作ログよりエラーを検出する処理と、
前記検出されたエラーに基づいて、装置又はシステムのエラーと、前記エラーの対応策と、を関連付けてデータベースに蓄積されている、検出された前記エラーと一致するエラーにかかる対応策を抽出する処理と、
前記抽出された対応策を実行するための処理と、
をコンピュータに実行させるためのプログラムであって、
前記エラーと一致するエラーに係る対応策が前記データベースに見当たらない場合に、前記エラーの対応策として前記装置又はシステムをデバッグモードで動作させ、
デバッグモードによる動作ログを取得する、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、不具合に対して自律的かつ適応的な対応が可能な、サーバ装置、ユーザ装置、システム、動作方法、及びプログラムに関する。
【背景技術】
【0002】
顧客先に設置されている装置やシステム等に不具合が発生すると、事象が発生してから、必要な情報を得て、問題を解決するまでには相当の時間を要する。例えば、概ね下記1.から8.のようなステップを踏むことになる。
1.客先にて事象が発生し、発生した事象について販売店に連絡が入る。
2.販売店からメーカ側に連絡が入る。
3.メーカ側で発生した事象について一次調査を行い、情報が足りない場合は必要なデバックログ、情報を洗い出す。
4.必要なデバックログの有効化、情報の取得の指示を販売店に行う。
5.客先システムに対して、デバックログの有効化を行い、事象の発生を待つ。
6.客先で事象が再現し、取得したログをメーカ側に連絡する。
7.メーカ側で取得したログを分析。類似の既存不具合が存在し、解決済みの場合は解決方法について販売店に連絡する。
8.販売店は、客先システムに対して解決策(対応策)を適用する。
【0003】
特許文献1には、次のような動作エラー処理装置等が開示されている。同装置等は、装置に動作エラーが発生した場合に記録済みのエラー履歴情報に基づいて、発生したエラーと同様のエラー履歴情報が存在するか否かを判定する。同様なエラー履歴情報が存在する場合に、そのエラー履歴情報に関連付けられた復帰履歴情報が存在するか否かを判定する。エラー履歴情報に関連付けられた復帰履歴情報が存在する場合に、同装置等は、その復帰履歴情報に基づいて、正常復帰への契機となった事項に応じた処理を実行する。これにより、同装置等の正常復帰を試行することが可能である。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2013-171592号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。
【0006】
上記の通り、特許文献1に開示されている発明では、動作エラー発生時に履歴情報に基づいて、過去に正常復帰をすることができた事項に応じた処理を実行することで、自律的に正常復帰への対応策を特定し、試行をすることが可能である。
【0007】
しかしながら、特許文献1に開示されているように、通常運用中において、不具合発生時に取得した情報のみからでは、対応策を特定するのに不十分な場合がある。この場合、通常の運用モードによる動作では動作エラーに関して正確で詳細な情報を取得するのは困難である。このため、上記4.から7.の通り、対象の装置やシステムを調査する目的でデバッグモードにより運用させ、デバッグログを取得することが行われている。これにより、システムの動作の詳細を把握することが可能であり、対応策を講じて正常復帰する可能性が向上する。その一方で、すべてのデバッグログを有効とする動作は装置の処理資源を圧迫し、処理速度に影響が出てしまう場合がある。このため、発生した事象に応じて必要なデバッグログを有効とするなどの対応策を取る必要がある。
【0008】
そこで、本発明の一視点において、不具合に対して自律的かつ適応的な対応が可能な、サーバ装置、ユーザ装置、システム、動作方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明の第一の視点によれば、装置又はシステムの動作ログを取得する取得部と、装置又はシステムのエラーと、エラーの対応策と、を関連付けて蓄積する蓄積部と、取得された動作ログよりエラーを検出する検出部と、検出されたエラーに基づいて、蓄積部に蓄積されている、検出されたエラーと一致するエラーにかかる対応策を抽出する抽出部と、抽出された対応策を実行するための実行部と、を有するサーバ装置が提供される。
【0010】
本発明の第二の視点によれば、動作ログを取得する取得部と、動作ログよりエラーを検出する検出部と、エラーを識別するエラー識別子を、エラー識別子とその対応策とを関連付けて蓄積するサーバ装置に送信する送信部と、エラー識別子に基づいて抽出された、サーバ装置に蓄積されている、検出されたエラー識別子と一致するエラー識別子にかかる対応策を受信する受信部と、対応策を実行するための実行部と、を有するユーザ装置が提供される。
【0011】
本発明の第三の視点によれば、ユーザ装置と、サーバ装置と、からなるシステムであって、前記ユーザ装置のエラーを識別するエラー識別子と、エラーの対応策と、を関連付けて蓄積する蓄積部と、ユーザ装置よりエラー識別子を受信し、エラー識別子に基づいて、蓄積部に蓄積されている、検出されたエラー識別子と一致するエラー識別子にかかる対応策を抽出して送信する抽出部と、を有するサーバ装置と、動作ログを取得する取得部と、動作ログよりエラーを検出する検出部と、検出されたエラーを識別するエラー識別子を送信する送信部と、対応策を受信する受信部と、対応策を実行するための実行部と、を有するユーザ装置と、を含むシステムが提供される。
【0012】
本発明の第四の視点によれば、装置又はシステムのエラーと、エラーの対応策と、を関連付けて蓄積する蓄積部を有するサーバ装置の動作方法であって、装置又はシステムの動作ログを取得するステップと、取得された動作ログよりエラーを検出するステップと、検出されたエラーに基づいて、蓄積部に蓄積されている、検出されたエラーと一致するエラーにかかる対応策を抽出するステップと、抽出された対応策を実行するためのステップと、を含む動作方法が提供される。
【0013】
本発明の第五の視点によれば、装置又はシステムの動作ログを取得する処理と、取得された動作ログよりエラーを検出する処理と、検出されたエラーに基づいて、装置又はシステムのエラーと、エラーの対応策と、を関連付けてデータベースに蓄積されているエラーと一致するエラーにかかる対応策を抽出する処理と、抽出された対応策を実行するための処理と、をコンピュータに実行させるためのプログラムが提供される。
【0014】
なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transient)なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【0015】
本発明の各視点によれば、不具合に対して自律的かつ適応的な対応が可能な、サーバ装置、ユーザ装置、システム、動作方法、及びプログラムを提供することが可能である。
【図面の簡単な説明】
【0016】
図1】一実施形態のサーバ装置における構成の一例を示すブロック図である。
図2】第1の実施形態のサーバ装置の処理の流れを示すフローチャートである。
図3】第1の実施形態のサーバ装置におけるハードウエア構成の一例を示すブロック図である。
図4】第2の実施形態のユーザ装置における構成の一例を示すブロック図である。
図5】第2の実施形態のユーザ装置が送受信等を行うデータを説明するための図である。
図6】第2の実施形態のユーザ装置の処理の流れを示すフローチャートである。
図7】第3の実施形態のシステムにおける構成の一例を示すブロック図である。
図8】第3のシステムの動作の一例を説明するためのシーケンス図である。
図9】実施例のボタン電話装置と、不具合情報管理サーバとの構成を示すブロック図である。
図10】不具合情報データベースの一部であるテーブルを示す図である。
図11】他の実施例における処理を説明するための図である。
【発明を実施するための形態】
【0017】
初めに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。
【0018】
図1に一実施形態のサーバ装置の構成の一例を示したブロック図を示す。一実施形態のサーバ装置10は、取得部11と、蓄積部12と、検出部13と、抽出部14と、実行部15と、を有する。
【0019】
取得部11は、装置又はシステムの動作ログを取得する。蓄積部12は、装置又はシステムのエラーと、エラーの対応策と、を関連付けて蓄積する。検出部13は、取得された動作ログよりエラーを検出する。抽出部14は、検出されたエラーに基づいて、蓄積部に蓄積されているエラーと一致するエラーにかかる対応策を抽出する。実行部15は、抽出された対応策を実行するために処理を行う。
【0020】
このように一実施形態のサーバ装置は、装置又はシステムのエラーを検出し、蓄積されているエラーの内から一致するエラーを取得し、関連付けられて蓄積されているそのエラーの対応策を抽出可能である。実行部により当該対応策を実行するための処理を行い、装置又はシステムのエラーによる不具合から自律的に復旧することが可能である。
【0021】
[第1の実施形態]
[装置の構成]
第1の実施形態のサーバ装置の構成の一例は、一実施形態における構成の一例と同様であり、図1に示すとおりである。第1の実施形態のサーバ装置10は、一実施形態と同様に、取得部11と、蓄積部12と、検出部13と、抽出部14と、実行部15と、を有する。本実施形態の特徴点は、実行部15が、検出されたエラーに応じて、エラーの対応策として装置又はシステムをデバッグモードで動作させ、取得部11が、デバッグモードによる動作ログを取得する点である。
【0022】
取得部11は、装置又はシステムの動作ログを取得する。「装置又はシステム」とは、自己の装置又は自己が要素となるシステム、あるいは他の装置又は他のシステムのいずれをも含む。「動作ログ」とは対象となる装置又はシステムが、人間が知覚可能な方法で、その内部状態の情報を提供するものである。例えばシステムや装置のエラーが発生した際のエラーコードや、エラーメッセージ、システムや装置がダウンした際にダンプされるメモリイメージに基づく情報などが動作ログの一例として挙げられる。「取得」とは、自身の状態を示すログを取得することや、遠隔地の装置又はシステムが出力するログを通信回線にて取得する態様などが含まれる。
【0023】
蓄積部12は、装置又はシステムのエラーと、エラーの対応策と、を関連付けて蓄積する。「エラー」とは装置又はシステムが発するエラーログに基づくものから、エラーログが出ていないが、1又は複数の動作ログから把握されるシステムの不具合を含むものである。「エラーの対応策」とはエラーである状態から復旧するために実行される処理を記述したものである。例えば、特定のプロセスを再起動するためのコマンドの実行や、実行中のソフトウエアを一旦終了しアップグレードした上で再起動するためのスクリプトの実行、ハードウエア故障の際に、ハードウエア交換を促す警告を端末の表示デバイスから出力させるための処理を記述したソフトウエアモジュールの実行等が挙げられる。上記エラーにはエラーコード等の識別子がエラー毎に付与され、エラーの対応策と関連付けて蓄積されていても良い。
【0024】
また、本実施形態のサーバ装置10は入力受付部(図示せず)を有していてもよい。当部はキーボード等の入出力インタフェースにより、蓄積部12の更新、追加を行う事が可能であり、例えば対話型でエラーとその対策について入力し、蓄積部12の更新が可能であっても良い。
【0025】
検出部13は、取得された動作ログよりエラーを検出する。「エラーを検出」するとは上述の通り、エラーログによる検出の他に、通常の動作ログからエラーである状態を推定することも含まれる。また、ある動作ログの前後の動作ログからエラーを検出してもよい。例えば、特定のソフトウエアモジュール同士が起動しているときに一定の経過時間後に一方のモジュールが強制終了してしまった場合に、双方のモジュールで競合が生じているエラーを推定することができる。
【0026】
また検出部13は、動作ログにおいて所定回数以上の繰り返しが生じている場合にエラーを検出するといった処理を行ってもよい。このとき繰り返しが生じている動作ログはエラーログに限られない。例えば、特定のキーに対して所定回数以上連続の押下を検出した場合に、エラーとして検出するといった処理を行ってもよい。
【0027】
抽出部14は、検出されたエラーに基づいて、蓄積部12に蓄積されているエラーと一致するエラーにかかる対応策を抽出する。検出部13により検出されたエラーをキーとして蓄積部12を検索し、エラーが一致するレコードが存在すると、そのエラーに関連付けられた対応策を抽出する。抽出された対応策は実行部15に送られる。
【0028】
蓄積部12内を検索して抽出を行う場合においては、エラーの識別子であるエラーコードやエラーID等をキーとして抽出を行っても良い。あるいは、エラーである事象を自然言語で記述したものを直接蓄積部12へのクエリとしても良い。例えば事象として、「システムのリセット」が生じた場合において、そのままの形で入力し、言語処理を施して最も類似性の高い事象を記述しているレコードを取得し、対応策を抽出する等の処理を実行しても良い。
【0029】
実行部15は、抽出された対応策を実行するための処理を行う。例えば、サーバ装置10自身のエラーを対象としている場合には、サーバ装置10自身で対応策を実行する。対応策が所定のスクリプトの実行であれば、スクリプトを処理するインタプリタに対して対応策のスクリプトを渡す処理が行われる。また例えば、他の装置で発生したエラーを対象として対応策を抽出した場合においては、ネットワークインタフェースを用いて、他の装置に対して抽出された対応策を送信する等の処理を実行する。
【0030】
実行部15は、さらに装置又はシステムをデバッグモードで実行させるための処理を行っても良い。デバッグモードの実行は、システム全体で行われなくともよく、エラーに応じて、装置又はシステムの一部をデバッグモードとする態様であってもよい。また実行部15はデバッグレベルを上下させる制御を行ってもよい。このようにデバッグモードを選択的に適用したり、デバッグレベルの制御を行ったりすることでデバッグにより使用される装置等の処理資源を最適化することが可能となり、処理速度の低下等の弊害を低減することができる。
【0031】
デバッグモードとなった場合において、取得部11はデバッグモードによる動作ログを取得する。取得された動作ログに基づいて、エラーを検出し、そのエラーに基づいて対応策を抽出する処理を実行しても良い。
【0032】
[動作の説明]
図2は第1の実施形態のサーバ装置10の動作を説明するためのフローチャートである。この図にあるように、サーバ装置10は動作を開始すると、対象とする装置又はシステムの動作ログを取得する(ステップS21)。次に取得した動作ログからエラーを検出する(ステップS22)。その結果エラーが検出されなかった場合(ステップS22、N)には引き続き動作ログを取得する処理(ステップS21)に戻る。エラーを検出した場合(ステップS22、Y)には、検出されたエラーに基づいて蓄積部12に蓄積されている検出されたエラーに一致するエラーにかかる対応策を抽出する(ステップS23)。次に、対応策としてデバッグモードへ切換えるか否かの判断を行う(ステップS24)。デバッグモードへ切換える場合(ステップS24、Y)には切換えたデバッグモードにて再び動作ログを取得する処理(ステップS21)を実行する。デバッグモードに切換えない場合(ステップS24、N)には、対応策を実行するための処理を実行して(ステップS25)一連の処理が終了する。
【0033】
[ハードウエア構成]
次に、第1の実施形態に係るサーバ装置のハードウエア構成を説明する。図3は、第1の実施形態に係るサーバ装置10のハードウエア構成の一例を示すブロック図である。
【0034】
サーバ装置を構成するサーバ装置10は、情報処理装置(コンピュータ)により構成可能であり、図3に例示する構成を備える。例えば、サーバ装置10は、それぞれ、内部バス305により相互に接続されるCPU(Central Processing Unit)301、メモリ302、入出力インタフェース303、及び通信手段であるNIC(Network Interface Card)304等を備える。
【0035】
但し、図3に示す構成は、サーバ装置を構成する各装置のハードウエア構成を限定する趣旨ではない。サーバ装置10は、それぞれ、図示しないハードウエアを含んでもよいし、必要に応じて入出力インタフェース303を備えていなくともよい。また、サーバ装置10に含まれるCPU等の数も図3の例示に限定する趣旨ではなく、例えば、複数のCPUが各装置に含まれていてもよい。
【0036】
メモリ302は、RAM(Random Access Memory)、ROM(Read Only Memory)、補助記憶装置(ハードディスク等)である。
【0037】
入出力インタフェース303は、図示しない表示装置や入力装置のインタフェースとなる手段である。表示装置は、例えば、液晶ディスプレイ等である。入力装置は、例えば、キーボードやマウス等のユーザ操作を受付ける装置である。
【0038】
サーバ装置10の機能は、処理モジュールである取得プログラムと、検出プログラムと、抽出プログラムと、実行プログラムと、メモリ302等に保持されているエラーとその対応策が関連付けられて保存されたデータの集合(データベース)等により実現される。
【0039】
上記処理モジュールは、例えば、それぞれメモリ302に格納されたプログラムをCPU301が実行することで実現される。また、そのプログラムは、ネットワークを介してダウンロードするか、あるいは、プログラムを記憶した記憶媒体を用いて、更新することができる。上記処理モジュールは、半導体チップにより実現されてもよい。即ち、上記処理モジュールが行う機能を何らかのハードウエア、及び/又は、ソフトウエアで実行する手段があればよい。
【0040】
[ハードウエアの動作]
サーバ装置10は動作を開始すると、メモリ302から取得プログラムが呼び出され、CPU301にて実行状態となる。同プログラムは自身又は他の装置又はシステムのログ出力モジュールにアクセスして、取得する。取得されたデータはメモリ302に格納される。
【0041】
次に検出プログラムがメモリ302から呼び出され、CPU301にて実行状態となる。同プログラムはメモリ302に格納されている動作ログデータを読み込み、データを参照してエラーを検出する。このために、検出プログラムはエラーである動作ログのパターンを記述しているパターンファイルをメモリ302に保持させて読み込んでいても良い。その結果、エラーを検出しない場合には引き続き取得プログラムにより動作ログの取得処理を続ける。
【0042】
一方エラーを検出した際には、検出プログラムが出したトリガに応じて抽出プログラムがメモリ302から呼び出され、CPU301にて実行状態となる。同プログラムは検出されたエラーを特定するコード又は文字列をクエリとしてメモリ302に保持されているエラーとその対応策が保持されているデータベースから該当するエラーにかかるレコードを取得する。取得されたレコードから対応策のフィールドに保持されている対応策の内容を一時的にメモリ302に保持する。
【0043】
次に実行プログラムがメモリ302から呼び出され、CPU301により実行状態となる。同プログラムはまず、メモリ302に一時的に保持されている対応策を記述しているデータを読み込む。ここで、対応策の内容が、デバッグモードへの切換えであるか否かを判定する。対応策にデバッグモードへの切換えを示す記述が含まれない場合には切換えを行わず、同プログラムのCPU301により対応策を実行したり、実行するためにNIC304を買入して対応策のデータを送信したりする。一方、デバッグモードへの切換えを示す記述が含まれていた場合には、同プログラムは動作モードをデバッグモードに切換える。デバッグモードへの切換え処理は、装置又はシステム全体でなく検出されたエラーに応じた一部のモジュールや機構だけに限定されていても良い。切換え後は再び取得プログラムによりデバッグモードでの動作ログを取得する。
【0044】
[効果の説明]
上記の通り、本実施形態のサーバ装置10は、対象の装置又はシステムの動作ログを取得し、エラーを検出する。検出されたエラーに基づいた対応策を抽出可能であり、抽出された対応策を実行することで装置又はシステムを自律的にエラー状態から復帰させることが可能である。また、デバッグモードに切換えることでより詳細で正確な装置又はシステムの状態を把握し、エラーより復帰することが可能である。さらに、検出されたエラーに応じたデバッグモードの適用が可能であり、処理速度低下の弊害が少ない、適応的な処理を実行することが可能である。
【0045】
[第2の実施形態]
第2の実施形態ではユーザ側装置において不具合を検出し、対応策を実行可能なユーザ装置について説明する。
【0046】
[装置の構成]
図4は第2の実施形態のユーザ装置20の構成の一例を示すためのブロック図である。この図にあるように、本実施形態のユーザ装置20は、取得部21と、検出部23と、送信部26と、受信部27と、実行部25と、からなる。取得部21、及び検出部23、及び実行部25は既に上記実施形態にて説明済みであるので記載は省略する。本実施形態のユーザ装置20の特徴点は、送信部26及び受信部27を有する点である。
【0047】
送信部26は、エラーを識別するエラー識別子を、エラー識別子とその対応策とを関連付けて蓄積するサーバ装置に送信する。「エラー識別子」とは、エラーを特定するために用いられる数字、文字列、あるいはこれらの組み合わせによるコードである。
【0048】
受信部27は、エラー識別子に基づいて抽出された、サーバ装置に蓄積されている、検出されたエラー識別子と一致するエラー識別子にかかる対応策を受信する。図5はサーバ装置に蓄積されているデータと、送信部26が送信するデータと、受信部27が受信するデータの一例について説明する図である。これらの情報のうち、サーバ装置に送信されるデータは、少なくとも「(エラー)識別子」を含む。「動作ログ」と、「事象」も付与されていてもよい。サーバ装置には少なくとも「(エラー)識別子」と「対応策」が蓄積されており、送信部26より送信された「(エラー)識別子」はサーバ装置に蓄積されている「(エラー)識別子」と照合され、一致する「(エラー)識別子」にかかる対応策が取得され、受信部27により受信される。
【0049】
なお、第1の実施形態と同様に実行部25は、エラーに応じて、エラーの対応策としてユーザ装置をデバッグモードで動作させ、取得部21は、デバッグモードによる動作ログを取得する構成であってもよい。
【0050】
[動作の説明]
図6は第2の実施形態におけるユーザ装置20の動作を説明するためのフローチャートである。この図にあるように、まず動作ログを取得する(ステップS61)。次に動作ログよりエラーを検出する(ステップS62)。その後、検出されたエラーのエラー識別子を、エラー識別子と対応策とを関連付けて蓄積するサーバ装置に送信する(ステップS63)。送信後、サーバ装置にてエラー識別子に基づいて抽出された、前記サーバ装置に蓄積されている、検出された前記エラー識別子と一致するエラー識別子にかかる対応策を受信する(ステップS64)。その後受信した対応策を実行する(ステップS65)。
【0051】
[効果の説明]
本実施形態のユーザ装置20によると、ユーザ側の装置において動作ログを取得しエラーを検出し、外部サーバより検出したエラーに対する対応策を取得し、その対応策の実行を行うことが可能である。また、第1の実施形態と同様に検出されたエラーに応じてユーザ装置をデバッグモードで動作させ、デバッグモードにおける詳細な動作ログを取得することで適切な対応策を取ることが可能である。
【0052】
[第3の実施形態]
第3の実施形態では、上記実施形態のユーザ装置とサーバ装置とを基本として、これらを組み合わせたシステムについて説明する。
【0053】
[装置の構成]
第3の実施形態のシステムはユーザ装置30と、サーバ装置40と、からなる。ユーザ装置30は、取得部31と、検出部33と、送信部36と、受信部37と、実行部35と、からなる。上記構成要件については、既に上記実施形態において説明済みであるので記載は省略する。
【0054】
サーバ装置40は、蓄積部42と、抽出部44と、からなる。蓄積部42は上記実施形態のとおりである。抽出部44は、ユーザ装置30よりエラー識別子を受信し、エラー識別子に基づいて、蓄積部42に蓄積されている、検出されたエラー識別子と一致するエラー識別子にかかる対応策を抽出して送信する。
【0055】
ユーザ装置30の実行部35は、検出したエラーに応じて、ユーザ装置30をデバッグモードで動作させ、ユーザ装置30の取得部31は、デバッグモードによる動作ログを取得しても良い。デバッグモードへのモード切換えはサーバ装置40により行われても良い。
【0056】
検出部33は、サーバ装置40側に配置されていても良い。この場合において、送信部36は、検出されたエラーの代わりに取得部31にて取得された動作ログを送信する。
【0057】
蓄積部42は、サーバ装置40外の別のサーバ装置に配置されていても良い。この場合においてはサーバ装置40は、通信によって、エラー及びエラーの対応策を送受信する。
【0058】
[動作の説明]
図8は本実施形態のシステムの動作の一例を説明するためのシーケンス図である。この図にあるように、まずユーザ装置30側で動作ログを取得する(ステップS801)。次に動作ログよりエラーを検出する(ステップS802)。検出されたエラー又はエラー識別子を送信する(ステップS803)。サーバ装置40側ではエラー又はエラー識別子を受信し、エラー又はエラー識別子に基づいて、蓄積部42に蓄積されている、検出されたエラー識別子と一致するエラー識別子にかかる対応策を抽出(ステップS804)して送信(ステップS805)する。ここで当事例では「特定のモジュールをデバッグモードに切換える」といった対応策が抽出されたとする。
【0059】
ユーザ装置30側では、上記対応策を受信し、デバッグモードへ切換えるといった対応策を実行する(ステップS806)。切換え後、更に詳細な動作ログを取得(ステップS807)し、エラーの検出(ステップS808)が実行され、検出されたエラー又はエラー識別子が送信される(ステップS809)。サーバ装置40側では再びエラー又はエラー識別子に基づいて、蓄積部42に蓄積されている、検出されたエラー識別子と一致するエラー識別子にかかる対応策を抽出(ステップS810)して送信(ステップS811)する。ユーザ装置30側では対応策が実行(ステップS812)され、システムが復旧した。
【0060】
[効果の説明]
本実施形態のシステムによると、ユーザ装置30において動作ログを取得しエラーを検出し、外部サーバより検出したエラーに対する対応策を取得し、そのエラーに応じて動作をエラーに対応したデバッグモードへ切換えることが可能である。その上で、さらに詳細な動作ログを取得することで、対応策を取得し実行することで対象装置又はシステムの復旧を適応的かつ自律的に行う事が可能である。
【0061】
[実施例]
実施例では、ボタン電話装置(ユーザ装置30に該当)と、不具合情報管理サーバ(サーバ装置40に該当)を例に挙げて説明する。
【0062】
[実施例の構成]
図9は本実施例のボタン電話装置と、不具合情報管理サーバとの構成を示すブロック図である。図9に示されるように、ボタン電話装置1010と不具合情報管理サーバ1020から構成される。ボタン電話装置1010と不具合情報管理サーバ1020はそれぞれの通信部(1015、1023)を通じて通信を行う。
【0063】
ボタン電話装置1010はボタン電話装置メイン処理部1011と、ログ保存用メモリ1012と、システム設定データ保存部1013と、解決策実行部1014と、通信部1015と、ログ解析部1016と、エラーログ情報保存部1017とを有する。エラーログ情報保存部1017は、不具合事象と事象発生時に出力されるエラーログを保持する。エラーログ情報保存部1017に保存される情報は新規にエラーログが追加される度に更新される。ボタン電話装置1010のソフトウエアと共に更新されるものとする。
【0064】
不具合情報管理サーバ1020は不具合情報データベース1021と、不具合情報解析部1022と、通信部1023と、を有する。図10に不具合情報データベース1021の一部であるテーブルを示す。不具合情報データベース1021は、過去に発生した不具合の情報(事象、不具合が発生したタスク、直前の操作、エラーログ)と不具合事象に対する対応策(有効化するデバックログ、解決策)を保持していても良い。
【0065】
[動作の説明]
ボタン電話装置メイン処理部1011は随時ログ保存用メモリ1012にログを保存する。ログ解析部1016はログ保存用メモリ1012に保存されるログとエラーログ情報保存部1017に保存されているエラーログの情報を比較し、一致するエラーログを検出した場合に、不具合事象が発生したと判断し、ボタン電話装置メイン処理部1011に通知する。ボタン電話装置メイン処理部1011はログ保存用メモリ1012から不具合事象発生時のログを取得、システム設定データ保存部1013からシステム設定データを取得し、通信部1015を通して不具合情報管理サーバ1020に通知する。不具合情報管理サーバ1020は、通信部1023を通してエラーログとシステム設定データを受け取る。不具合情報解析部1022は受信した情報と不具合情報データベース1021を比較し、一致する不具合情報を探す。一致する不具合情報が見つかった場合、不具合情報解析部1022は解決策を不具合情報データベース1021から取得し、通信部1023を通してボタン電話装置1010に通知する。ボタン電話装置1010は通信部1015を通して解決策を受信し、解決策実行部1014に渡す。解決策実行部1014とは受信した解決策を実行する。
【0066】
ここで対象装置であるボタン電話装置1010の不具合事象の検出処理について説明する、ボタン電話装置1010はエラーログ情報保存部1017に不具合事象が発生した場合に出力されるエラーログ情報を保持する。ログ解析部1016はログ保存用メモリ1012に保存されるログを監視し、エラーログ情報保存部1017のエラーログ情報と一致する場合には、不具合事象が発生したと判断する。
【0067】
次に不具合情報管理サーバ1020における解決策の抽出について説明する。不具合情報管理サーバ1020はボタン電話装置1010から受信した、不具合事象、ログ情報、システム設定データと不具合情報データベース1021に保存されている不具合情報を比較し、一致するものを探す。一致するものが見つかった場合には、ボタン電話装置1010に対して、解決策もしくはデバックログの有効化の指示を行う。
【0068】
[他の実施例]
他の実施例としてサーバ(サーバ装置40に該当)とPBX(Private Branch Exchange)(ユーザ装置30に該当)の例を示す。PBXは、定期的にログをサーバに送信し、サーバ側に蓄積された不具合事象の情報と照らし合わせることで、事象が発生する前でも、特定のエラーログ、直前の操作、設定等から事象の発生が予想される場合には、調査用のデバックログの有効化や、ソフトのバージョンアップ、設定変更などの解決策の適用を行うことができる。
1.PBX側から定期的にログとシステムデータの設定をクラウド上のサーバに送付
2.サーバ側で解析を行い、サーバ側に保存されている不具合事象のデータベースと照らし合わせる。
3.不具合事象のデータベースに登録されている事象と、特定の「ログ」、「設定」、「操作」が一致した場合に、解決策の適用、もしくはデバックログの有効化の指示をPBX側に行う。
【0069】
図11に他の実施例における処理を説明するための図を示す。
【0070】
例1 事象:システムリセット、ログ:不正ステータス、操作:DID(Direct Inward Dialing)着信、設定:DID着信先から外線へのCFWD(Call Forward)設定。事象1の発生が予想されるため、Version3.10へバージョンアップする。
【0071】
例2 事象:システムリセット、ログ:不正ステータス、操作:着信の連続、設定:不応答時の転送先がVM。事象2の発生が予想されるため、デバッグログの有効化を行う。(vmuaid 0 1)
【0072】
その他下記のような不具合事象の検出方法が考えられる。
1)不正なステータス遷移の検知
正常な動作として起こりうる、ステータス遷移の一覧を保持しておき、それらに当てはまらないステータス遷移が発生した場合に異常と判断する。
2)一定時間内でのイベント発生数
1秒間に10回のオフフック→オンフックを繰り返す等の異常な事象を検出するため、一定時間内における同一イベントの発生数に閾値を設けておき、閾値を超えた場合に異常と判断する。
3)ヒープメモリの枯渇
ソフトウエアのヒープメモリを監視し、一定以上の現象を検出した場合に異常と判断する。
【0073】
上記の実施形態の一部又は全部は、以下のようにも記載され得るが、以下には限られない。
[形態1]
上述の第一の視点に係るサーバ装置のとおりである。
[形態2]
実行部は、エラーに応じて、エラーの対応策として装置又はシステムをデバッグモードで動作させ、取得部は、デバッグモードによる動作ログを取得する、好ましくは形態1のサーバ装置。
[形態3]
検出部は、動作ログと、動作ログより前の動作ログと、からエラーを検出する、好ましくは形態1又は2のサーバ装置。
[形態4]
検出部は、動作ログにおいて所定回数以上の繰り返しが生じている場合にエラーを検出する、好ましくは形態1又は2のサーバ装置。
[形態5]
上述の第二の視点に係るユーザ装置のとおりである。
[形態6]
実行部は、エラーに応じて、エラーの対応策としてユーザ装置をデバッグモードで動作させ、取得部は、デバッグモードによる動作ログを取得する、
好ましくは形態5のユーザ装置。
[形態7]
上述の第三の視点に係るシステムのとおりである。
[形態8]
実行部は、エラーに応じて、ユーザ装置をデバッグモードで動作させ、取得部は、デバッグモードによる動作ログを取得する、好ましくは形態7のシステム。
[形態9]
上述の第四の視点に係る動作方法のとおりである。
[形態10]
上述の第五の視点に係るプログラムのとおりである。
なお、形態9及び10は、形態1と同様に、形態2~形態4に展開することが可能である。
【0074】
引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、更にその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想に従って当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【0075】
10:サーバ装置
11:取得部
12:蓄積部
13:検出部
14:抽出部
15:実行部
20:ユーザ装置
21:取得部
23:検出部
25:実行部
26:送信部
27:受信部
30:ユーザ装置
31:取得部
33:検出部
35:実行部
36:送信部
37:受信部
40:サーバ装置
42:蓄積部
44:抽出部
301:CPU
302:メモリ
303:入出力インタフェース
304:NIC
305:内部バス
1010:ボタン電話装置
1011:ボタン電話装置メイン処理部
1012:ログ保存用メモリ
1013:システム設定データ保存部
1014:解決策実行部
1015:通信部
1016:ログ解析部
1017:エラーログ情報保存部
1020:不具合情報管理サーバ
1021:不具合情報データベース
1022:不具合情報解析部
1023:通信部
【要約】
【課題】不具合に対して自律的かつ適応的な対応が可能な、サーバ装置、ユーザ装置、システム、動作方法、及びプログラムを提供すること。
【解決手段】装置又はシステムの動作ログを取得する取得部と、装置又はシステムのエラーと、エラーの対応策と、を関連付けて蓄積する蓄積部と、取得された動作ログよりエラーを検出する検出部と、検出されたエラーに基づいて、蓄積部に蓄積されている、検出された前記エラーと一致するエラーにかかる対応策を抽出する抽出部と、抽出された対応策を実行するための実行部と、を有するサーバ装置等を提供する。
【選択図】図1
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11