JP5894512B2 - Failure analysis information collection program - Google Patents
Failure analysis information collection program Download PDFInfo
- Publication number
- JP5894512B2 JP5894512B2 JP2012157801A JP2012157801A JP5894512B2 JP 5894512 B2 JP5894512 B2 JP 5894512B2 JP 2012157801 A JP2012157801 A JP 2012157801A JP 2012157801 A JP2012157801 A JP 2012157801A JP 5894512 B2 JP5894512 B2 JP 5894512B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- failure analysis
- analysis information
- sip
- servlet
- 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.)
- Expired - Fee Related
Links
- 238000004458 analytical method Methods 0.000 title claims description 303
- 238000004891 communication Methods 0.000 claims description 77
- 238000012217 deletion Methods 0.000 claims description 29
- 230000037430 deletion Effects 0.000 claims description 29
- 230000006870 function Effects 0.000 claims description 27
- 238000012545 processing Methods 0.000 description 55
- 238000000034 method Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 12
- 230000004044 response Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000012360 testing method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000011800 void material Substances 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
本発明は、SIP(Session Initiation Protocol)サーブレットコンテナを用いて提供される通信サービスにおいて、障害解析のための情報を収集する障害解析情報収集プログラムに関する。 The present invention relates to a failure analysis information collection program for collecting information for failure analysis in a communication service provided using a SIP (Session Initiation Protocol) servlet container.
SIPプロトコルのサーバ側での実装形態の1つとして、Java(登録商標)にSIPプロトコルを制御するAPI(Application Program Interface)であるSIPサーブレットが標準化されている(非特許文献1,2参照)。SIPサーブレットは、実行環境の仕様として、シグナリングの実装、アプリケーションのライフサイクル、トランザクション、セッション管理、セキュリティ等が定義されるSIPサーブレットコンテナ(SIPアプリケーションサーバ)上で動作する。
As one of implementation forms on the server side of the SIP protocol, a SIP servlet that is an API (Application Program Interface) for controlling the SIP protocol is standardized in Java (registered trademark) (see Non-Patent
このSIPサーブレットにより実行される通信サービスにおいて障害が発生した場合には、通信プログラムのバックトレース情報や、通信サービスに関連して送受信されるパケット情報(以下、「通信電文」ということがある)、ログファイル等から原因究明を行うことが想定される。 When a failure occurs in the communication service executed by the SIP servlet, backtrace information of the communication program, packet information transmitted / received in connection with the communication service (hereinafter also referred to as “communication message”), It is assumed that the cause is investigated from the log file.
ただし、バックトレース情報は、通信プログラムが異常終了しないと生成されないため、利用できる場合が限られている。また、通信電文は、例えば、障害が発生したサーバやサービス等の情報を得ることにより障害発生の原因の絞り込みには利用できるが、元々の障害発生原因であるプログラムの問題点(バク等)の解析には不十分な情報しか得られない。よって、従来は、主にログファイルを利用して障害解析が行われている。 However, since the backtrace information is not generated unless the communication program is abnormally terminated, the cases where it can be used are limited. In addition, the communication message can be used to narrow down the cause of the failure by obtaining information such as the server or service where the failure has occurred, but the problem of the program that originally caused the failure (such as a bug) can be used. Only insufficient information is available for analysis. Therefore, conventionally, failure analysis is mainly performed using log files.
しかしながら、ログファイルを利用した障害解析には以下のような問題がある。
まず、ログを収集するためには、通信プログラムにログ収集の処理を予め記述しておく必要がある。
また、詳細なログを取得するとファイル出力の負荷によって処理性能が低下する。これを防ぐために、利用する通信プログラムにおいて、設定ファイルでログの詳細さの程度を設定可能なものとしている。それでも、タイミングに関連する試験や商用提供時(サービス提供時)には、処理性能への影響が大きいため、設定ファイルの変更による詳細なログ取得を行うことは困難だった。そのため、障害発生時には、被疑箇所のみ詳細なログを出力するように改変した通信プログラムに入れ替えて、障害解析のためのログ収集を行う必要があった。
なお、ここでタイミングに関連する試験とは、例えば、キャッチホンや三者通話のサービス等において、発側端末のフッキング動作と着側端末のオンフック動作のように、発側の端末と着側の端末とで別々の動作をタイミングをずらして操作し、仕様通りの動作を実行しているかを確認するような試験である。また、以下において、タイミングに関連する試験や商用提供時(サービス提供時)をまとめてサービス提供時等として記述する。
However, failure analysis using log files has the following problems.
First, in order to collect logs, it is necessary to describe log collection processing in advance in the communication program.
In addition, if a detailed log is acquired, the processing performance deteriorates due to the load of file output. In order to prevent this, the degree of detail of the log can be set in the setting file in the communication program to be used. Even so, it has been difficult to obtain detailed logs by changing the configuration file because the test performance related to timing and commercial provision (service provision) have a large effect on processing performance. Therefore, when a failure occurs, it is necessary to replace the communication program modified so that a detailed log is output only at the suspected location, and to collect logs for failure analysis.
Note that the timing-related test here refers to, for example, the calling terminal and the called terminal, such as the hooking operation of the calling terminal and the on-hook operation of the called terminal, in the service of call waiting or three-way communication. This is a test to check whether or not the operation according to the specifications is executed by operating different operations at different timings. In the following, tests related to timing and commercial provision (service provision) are collectively described as service provision.
このような背景に鑑みて本発明がなされたのであり、本発明は、SIPサーブレットによる通信サービスにおいて発生した障害の障害解析情報を、処理性能への影響を低減させて収集し出力することができる、障害解析情報収集プログラムを提供することを課題とする。 The present invention has been made in view of such a background, and the present invention can collect and output failure analysis information of a failure occurring in a communication service using a SIP servlet while reducing the influence on processing performance. It is an object to provide a failure analysis information collection program.
前記した課題を解決するため、請求項1に記載の発明は、SIPサーブレットコンテナがSIPサーブレットを生成することにより通信サービスを提供する際に発生する障害の障害解析のための情報を収集する障害解析情報収集プログラムであって、前記SIPサーブレットコンテナが備わるコンピュータを、前記SIPサーブレットコンテナがSIPメッセージを受信し前記SIPメッセージに対応した前記SIPサーブレットを生成し、生成した前記SIPサーブレットがSIPサーブレットコンテナ管理情報を用いて前記通信サービスを処理するために、前記SIPサーブレットコンテナがメモリに記憶した前記SIPサーブレットコンテナ管理情報への参照情報を収集し、前記生成されたSIPサーブレットが前記通信サービスを提供するとき、当該SIPサーブレットが所持データを複製する際に呼び出すAPI(Application Program Interface)のAPI呼び出しパラメータへの参照情報を収集し、前記SIPサーブレットコンテナが前記生成されたSIPサーブレットが提供する前記通信サービスに例外が発生した際に生成する例外情報への参照情報を収集する障害解析情報収集手段、前記障害解析情報収集手段から通知された、前記SIPサーブレットコンテナ管理情報への参照情報、前記API呼び出しパラメータへの参照情報および前記例外情報への参照情報を、障害解析情報として前記メモリに記憶させる障害解析情報管理手段、および、前記障害解析情報管理手段が前記例外情報への参照情報を前記メモリに記憶させたときに、前記例外情報に示される前記生成されたSIPサーブレットについての前記障害解析情報を前記メモリから抽出して出力する障害解析情報出力手段、として機能させるための障害解析情報収集プログラムとした。
In order to solve the above problem, the invention according to
このように、既存のSIPサーブレットコンテナで管理される情報(SIPサーブレットコンテナ管理情報、API呼び出しパラメータおよび例外情報)への参照情報を障害解析情報としてメモリに収集することにより、サービス提供時等においても、障害解析に必要な情報(障害解析情報)を、処理性能への影響を低減させて出力することができる。よって、障害発生時に、被疑箇所の詳細なログを出力するように通信プログラムを入れ替える必要がなく、通信サービス開発時のデバックおよび通信サービス提供時の障害解析にかかる時間を短縮することができる。 In this way, by collecting reference information to information managed by an existing SIP servlet container (SIP servlet container management information, API call parameters, and exception information) in the memory as failure analysis information, even when providing services, etc. Information necessary for failure analysis (failure analysis information) can be output with reduced influence on processing performance. Therefore, it is not necessary to replace the communication program so that a detailed log of the suspected part is output when a failure occurs, and the time required for debugging at the time of communication service development and failure analysis at the time of providing the communication service can be reduced.
請求項2に記載の発明は、前記障害解析情報収集手段が、前記SIPサーブレットコンテナが、前記通信サービスの終了により前記生成したSIPサーブレットを削除した旨を示す削除情報を収集し、前記収集した削除情報を前記障害解析情報管理手段に通知し、前記障害解析情報管理手段が、前記削除情報に示される当該生成したSIPサーブレットについての前記障害解析情報を、前記メモリから削除することを特徴とする請求項1に記載の障害解析情報収集プログラムとした。
In the invention according to
このようにすることで、通信サービスが終了したSIPサーブレットの障害解析情報をメモリから削除することができるため、メモリ使用量の増加を防ぐことができる。 In this way, the failure analysis information of the SIP servlet for which the communication service has been completed can be deleted from the memory, so that it is possible to prevent an increase in memory usage.
請求項3に記載の発明は、前記障害解析情報収集手段が、前記SIPサーブレットコンテナが、前記通信サービスの終了により前記生成したSIPサーブレットを削除した旨を示す削除情報を収集し、前記収集した削除情報を前記障害解析情報管理手段に通知し、前記障害解析情報管理手段が、前記削除情報に示される当該生成したSIPサーブレットの前記障害解析情報を、前記メモリに記憶された各SIPサーブレットの障害解析情報の数が所定値に達した場合に削除することを特徴とする請求項1に記載の障害解析情報収集プログラムとした。
According to a third aspect of the present invention, the failure analysis information collecting means collects deletion information indicating that the SIP servlet container has deleted the generated SIP servlet due to termination of the communication service, and the collected deletion Information is notified to the failure analysis information management means, and the failure analysis information management means uses the failure analysis information of the generated SIP servlet indicated in the deletion information as a failure analysis of each SIP servlet stored in the memory. 2. The failure analysis information collection program according to
このようにすることで、通信サービスが終了したSIPサーブレットの障害解析情報についても、障害解析に利用することができる。また、メモリ内の障害解析情報の数が所定値に達した場合には、通信サービスが終了したSIPサーブレットの障害解析情報が削除されるため、障害解析情報の記憶に関するメモリ使用量を適正に維持することができる。 By doing in this way, the failure analysis information of the SIP servlet for which the communication service has ended can also be used for failure analysis. Also, when the number of failure analysis information in the memory reaches a predetermined value, the failure analysis information of the SIP servlet whose communication service has ended is deleted, so the memory usage related to storage of failure analysis information is maintained appropriately. can do.
請求項4に記載の発明は、前記障害解析情報収集手段が、前記SIPサーブレットコンテナが、前記通信サービスの終了により前記生成したSIPサーブレットを削除した旨を示す削除情報を収集し、前記収集した削除情報を前記障害解析情報管理手段に通知し、前記障害解析情報管理手段が、前記削除情報に示される当該生成したSIPサーブレットの前記障害解析情報として記憶された、前記SIPサーブレットコンテナ管理情報への参照情報、前記API呼び出しパラメータへの参照情報および前記例外情報への参照情報、の基となる前記SIPサーブレットコンテナ管理情報、前記API呼び出しパラメータおよび前記例外情報のいずれかに、所定の例外発生条件に合致する情報が含まれているか否かを判定し、前記所定の例外発生条件に合致する情報が含まれていない前記障害解析情報を削除し、前記所定の例外発生条件に合致する情報が含まれている前記障害解析情報を削除せずに前記メモリに記憶し続け、前記障害解析情報出力手段が、前記所定の例外発生条件と合致する情報が含まれる前記障害解析情報の取得要求を取得した場合に前記メモリから抽出して出力することを特徴とする請求項1に記載の障害解析情報収集プログラムとした。 According to a fourth aspect of the present invention, the failure analysis information collection means collects deletion information indicating that the SIP servlet container has deleted the generated SIP servlet due to termination of the communication service, and the collected deletion Information is notified to the failure analysis information management means, and the failure analysis information management means refers to the SIP servlet container management information stored as the failure analysis information of the generated SIP servlet indicated in the deletion information. Information, the reference information to the API call parameter, and the reference information to the exception information, the SIP servlet container management information, the API call parameter, and the exception information that are the basis of the information match a predetermined exception occurrence condition Whether or not information to be included is included, and the predetermined exception occurs Deleting the failure analysis information that does not include information that matches the condition, and continuously storing the failure analysis information that includes information that matches the predetermined exception occurrence condition without deleting the information, 2. The failure analysis information output means extracts and outputs the failure analysis information output request from the memory when acquiring the failure analysis information acquisition request including information that matches the predetermined exception occurrence condition. The failure analysis information collection program.
このようにすることで、所定の例外発生条件(例えば、特定の着信先の電話番号や、特定のサービスに関する通信サービスを利用する際に例外の発生率が高いことが予め分かっている場合の、その着信先の電話番号やサービス)に合致する情報を含む障害解析情報については、通信サービスが終了しても削除せずにメモリに記憶し続けることができる。そして、取得要求を受けてその障害解析情報を障害解析情報出力手段が出力することで、障害解析を効率化することができる。 By doing in this way, when it is known in advance that a predetermined exception occurrence condition (for example, a specific destination telephone number or a communication service related to a specific service has a high exception occurrence rate, The failure analysis information including information matching the destination telephone number or service can be stored in the memory without being deleted even when the communication service is terminated. In response to the acquisition request, the failure analysis information output means outputs the failure analysis information, so that failure analysis can be made more efficient.
請求項5に記載の発明は、HTTPサーブレットコンテナがHTTPサーブレットを生成することにより通信サービスを提供する際に発生する障害の障害解析のための情報を収集する障害解析情報収集プログラムであって、前記HTTPサーブレットコンテナが備わるコンピュータを、前記HTTPサーブレットコンテナがHTTPメッセージを受信し前記HTTPメッセージに対応した前記HTTPサーブレットを生成し、生成した前記HTTPサーブレットがHTTPサーブレットコンテナ管理情報を用いて前記通信サービスを処理するために、前記HTTPサーブレットコンテナがメモリに記憶した前記HTTPサーブレットコンテナ管理情報への参照情報を収集し、前記生成されたHTTPサーブレットが前記通信サービスを提供するとき、当該HTTPサーブレットが所持データを複製する際に呼び出すAPI(Application Program Interface)のAPI呼び出しパラメータへの参照情報を収集し、前記HTTPサーブレットコンテナが前記生成されたHTTPサーブレットが提供する前記通信サービスに例外が発生した際に生成する例外情報への参照情報を収集する障害解析情報収集手段、前記障害解析情報収集手段から通知された、前記HTTPサーブレットコンテナ管理情報への参照情報、前記API呼び出しパラメータへの参照情報および前記例外情報への参照情報を、障害解析情報として前記メモリに記憶させる障害解析情報管理手段、および、前記障害解析情報管理手段が前記例外情報への参照情報を前記メモリに記憶させたときに、前記例外情報に示される前記生成されたHTTPサーブレットについての前記障害解析情報を前記メモリから抽出して出力する障害解析情報出力手段、として機能させるための障害解析情報収集プログラムとした。
The invention according to
このようにすることで、HTTPサーブレットコンテナが生成するHTTPサーブレットにより提供される通信サービスにおいても、障害解析情報を処理性能への影響を低減させて収集し出力することができる。 In this way, even in the communication service provided by the HTTP servlet generated by the HTTP servlet container, it is possible to collect and output the failure analysis information while reducing the influence on the processing performance.
本発明によれば、SIPサーブレットによる通信サービスにおいて発生した障害の障害解析情報を、処理性能への影響を低減させて収集し出力することができる。 According to the present invention, it is possible to collect and output failure analysis information of a failure that has occurred in a communication service using a SIP servlet while reducing the influence on processing performance.
次に、本発明を実施するための形態(以下、「本実施形態」という)における障害解析情報収集プログラム等について説明する。なお、SIPサーブレット20は、Javaの規格であるため、本実施形態は、プログラム言語としてJavaが用いられていることを前提とする。
Next, a failure analysis information collection program and the like in a mode for carrying out the present invention (hereinafter referred to as “the present embodiment”) will be described. Since the
<概要>
まず、本実施形態に係る障害解析情報収集プログラムにより実現される障害解析情報収集機能30の概要について説明する。
図1は、本実施形態に係る障害解析情報収集プログラムにより実現される障害解析情報収集機能30を備えるSIPサーバ1の構成例を示す機能ブロック図である。
本実施形態に係るSIPサーバ1では、SIPサーブレットコンテナ10がSIPメッセージを受信すると、そのSIPメッセージに対応したSIPサーブレット20を生成し、アプリケーションを起動して処理を実行する。また、SIPサーブレットコンテナ10は、そのアプリケーションによるサービスが終了すると、生成したSIPサーブレット20を削除する。
そして、本実施形態に係るSIPサーバ1は、SIPサーブレットコンテナ10により生成されたSIPサーブレット20のサービス提供時等において、障害解析のために必要となる情報(障害解析情報)を収集しておき、障害発生時に、その障害解析情報を出力する障害解析情報収集機能30を備えることを特徴とする。
<Overview>
First, an overview of the failure analysis
FIG. 1 is a functional block diagram illustrating a configuration example of the
In the
The
この障害解析情報収集機能30を備えるSIPサーバ1では、本来SIPサーブレットコンテナ10が実行する、(1)SIPサーブレット20の生成、(2)SIPサーブレット20が管理する情報を他のSIPサーバに複製するためのsetAttribute API呼び出し、(3)SIPサーブレット20の削除、(4)障害(例外)が発生した場合の例外処理、に伴って、SIPサーブレットコンテナ10内に設けられた障害解析情報収集部(障害解析情報収集手段)31が、障害解析に必要となる情報を収集する。このとき、障害解析情報収集部31は、SIPサーブレットコンテナ10で管理するSIPサーブレット20により提供されるサービスに関連する情報への参照情報や、setAttribute APIを呼び出す際のパラメータへの参照情報、例外処理で生成された情報(後記する例外情報330)への参照情報を収集する。なお、本実施形態において、「参照情報」とは、情報の実体(データ)そのものではなく、その情報が記憶されたRAM(Random Access Memory)等のメモリ空間内のアドレス情報等を意味する。本障害解析情報収集機能30では、障害解析情報収集部31が収集した障害解析に必要となる情報(障害解析情報)を参照情報として障害解析管理テーブル300に記憶し、障害発生時(例外発生時)に、その参照情報を障害解析情報として出力する。
In the
このようにすることで、本実施形態に係る障害解析情報収集プログラムによれば、サービス提供時等においても、障害解析に必要な情報(障害解析情報)を、処理性能への影響を低減させて収集し出力することができる。 In this way, according to the failure analysis information collection program according to the present embodiment, the information necessary for failure analysis (failure analysis information) can be reduced in the processing performance even when the service is provided. Can be collected and output.
以下、この障害解析情報収集機能30を備えるSIPサーバ1について、具体的に説明する。
Hereinafter, the
<SIPサーバの構成>
SIPサーバ1は、SIPメッセージを受信して通信サービスを実現する装置であり、例えば、不図示の入出力部、制御部(演算部)、メモリ部、記憶部等から構成されるコンピュータとして実現される。入出力部は、入出力インタフェースや通信インタフェースにより構成される。制御部(演算部)は、CPU(Central Processing Unit)等の演算処理装置により構成される。メモリ部は、RAM等の一次記憶装置からなり、制御部によりデータ処理に必要な情報が一時的に記憶される。記憶部は、ハードディスクやフラッシュメモリ等の記憶装置により構成される。
また、SIPサーバ1は、その機能として、図1に示すように、SIPサーブレットコンテナ10と、そのSIPサーブレットコンテナ10により生成されるSIPサーブレット20と、障害解析情報収集機能30と、を含んで構成される。
<Configuration of SIP server>
The
Further, as shown in FIG. 1, the
≪SIPサーブレットコンテナ≫
SIPサーブレットコンテナ10は、ライフサイクルに沿ったアプリケーションの管理やセッション等のSIPに関する管理を実行する。また、SIPサーブレットコンテナ10は、SIPメッセージ(INVITE等)を受信すると、起動するアプリケーションに対応したSIPサーブレット20を生成する。
<< SIP servlet container >>
The
このSIPサーブレットコンテナ10は、SIPサーブレット生成部11と、通信管理部12と、SIPサーブレット削除部13と、例外処理部14と、不図示のメモリ部内にSIPサーブレットコンテナ管理情報100とを備える。また、このSIPサーブレットコンテナ10は、各処理部が行う処理を監視し、障害解析のために利用する情報を収集する障害解析情報収集部(障害解析情報収集手段)31を備えている。なお、この障害解析情報収集部31は、障害解析情報収集機能30としての処理を、SIPサーブレットコンテナ10内において実行するため処理部であり、後記する障害解析情報収集機能30において詳細に説明する。
The
SIPサーブレット生成部11は、受信したSIPメッセージに基づき、どのアプリケーションを起動するか決定し、そのアプリケーションに対応したSIPサーブレット20を生成する。
The SIP
通信管理部12は、SIPサーブレット20と、他のSIPサーバやクライアント(SIP端末)等の外部装置との間で、情報の送受信を行うと共に、トランザクションやセッション制御を行う。そして、通信管理部12は、SIPサーブレット生成部11が生成したSIPサーブレット20に関して、そのサービスの提供に必要な管理情報をオブジェクト(管理情報オブジェクト)としてメモリ部(不図示)に記憶する。また、通信管理部12は、SIPサーブレットコンテナ管理情報100(図2参照)において、その管理情報オブジェクトへの参照情報等をSIPサーブレット20毎に記憶し管理している。
The
SIPサーブレット削除部13は、サービスの終了に関するSIPメッセージ(doByeメッセージ)への応答を受信した場合に、対応するSIPサーブレット20を削除する。
The SIP
例外処理部14は、例外(プログラム実行中における予期せぬ事象(エラー:障害))が発生すると例外オブジェクトを生成し、例外ハンドラ(例外発生時の処理)を実行する。この例外処理部14が生成する例外オブジェクトには、例外クラスのクラス名のインスタンス、例外ハンドラに基づき実行された例外のメッセージのインスタンス、プログラムの実行過程を記録したスタックトレースのインスタンスが含まれる。
When an exception (an unexpected event (error: failure) during program execution) occurs, the
SIPサーブレットコンテナ管理情報100には、通信管理部12の制御により、SIPサーブレットコンテナ10が生成した各SIPサーブレット20に関する情報が記憶される。
The SIP servlet
図2は、SIPサーブレットコンテナ管理情報100に記憶される各SIPサーブレット20に関する情報のデータ構成を示す図である。
図2に示すように、このSIPサーブレットコンテナ管理情報100には、SIPサーブレットインスタンス識別子101、提供サービス情報102、加入者種別(発/着)103、加入サービス情報104および通信電文情報105が含まれる。また、このSIPサーブレットコンテナ管理情報100は、不図示のメモリ部に記憶される。
FIG. 2 is a diagram showing a data configuration of information related to each
As shown in FIG. 2, the SIP servlet
SIPサーブレットインスタンス識別子101には、SIPサーブレット生成部11が生成したSIPサーブレット20毎に固有な識別子が記憶される。なお、SIPサーブレット生成部11が生成するSIPサーブレット20は、例えば、同じ発信元から同じアプリケーションのサービス提供を要求するSIPメッセージを別時刻に受信した場合であれば、それぞれ別のサービス要求として別々のSIPサーブレット20が生成され、別のSIPサーブレットインスタンス識別子101が付される。
The SIP
提供サービス情報102には、当該SIPサーブレット20で提供するサービスの識別情報や、そのサービスを利用する発信側や着信側の端末等の電話番号、IPアドレス等の情報が格納される提供サービス情報インスタンスへの参照情報(以下、参照情報を、図2および図3において「参照」と記載する)が記憶される。なお、この提供サービス情報インスタンスは、SIPサーブレット20がSIPサーブレット生成部11により生成される毎に、通信管理部12により管理情報オブジェクトのインスタンスとして生成されるものである。
The provided
加入者種別(発/着)103には、当該SIPサーブレット20が発信側または着信側のどちらからの要求により生成されたかが記憶される。
例えば、起動されるサービスが「短縮ダイヤル」であれば、この加入者種別(発/着)103に、発信側からの要求によるサービスとして「発」が記憶される。また、起動されるサービスが「キャッチホン」であれば、加入者種別(発/着)103に、着信側からの要求によるサービスとして「着」が記憶される。
The subscriber type (source / receiver) 103 stores whether the
For example, if the service to be activated is “abbreviated dialing”, “calling” is stored in this subscriber type (calling / calling) 103 as a service requested by the caller. If the service to be activated is “Catch-phone”, “Called” is stored in the subscriber type (calling / calling) 103 as the service requested by the callee.
加入サービス情報104には、当該SIPサーブレット20を起動している加入者が加入しているサービス等の情報が格納される加入サービス情報インスタンスへの参照情報が記憶される。
なお、SIPサーバ1は、不図示の記憶部等に、各加入者が加入するサービスの情報を格納した加入者情報DB(DataBase)を備えている。そして、通信管理部12は、当該加入者のSIP端末等からのSIPメッセージに基づき、SIPサーブレット生成部11がSIPサーブレット20を生成したことを契機として、加入者情報DBから当該SIPサーブレット20を起動している加入者が加入しているサービス等の情報を取得して、加入サービス情報インスタンスを生成しメモリ部(不図示)に記憶している。
In the
The
通信電文情報105には、当該SIPサーブレット20で処理している通信電文(パケット)に関するヘッダ情報、本文(ボディ)等が格納される通信電文インスタンスへの参照情報が記憶される。
なお、この通信電文インスタンスは、通信管理部12が、当該SIPサーブレット20と、他のSIPサーバやクライアント(SIP端末)等の外部装置との間で、パケット等の通信電文が送受信される毎に、通信管理部12により生成され、メモリ部(不図示)に記憶される。
In the
This communication message instance is transmitted each time the
なお、提供サービス情報102、加入サービス情報104および通信電文情報105には、通信管理部12が生成した各インスタンスの参照情報として記憶されるものとしたが、各インスタンスの実体(データ)が格納されるようにしてもよい。
The provided
≪SIPサーブレット≫
図1に戻り、SIPサーブレット20は、SIPサーブレットコンテナ10により、1つのサービスの提供を要求するSIPメッセージをSIPサーブレットコンテナ10が受信する毎に作成されるAPIである。
このSIPサーブレット20は、APIとして機能するためのサービス処理部21と、情報複製部22とを備える。
<< SIP servlet >>
Returning to FIG. 1, the
The
サービス処理部21は、起動したアプリケーションに基づき、サービスを提供するための処理を実行する。 The service processing unit 21 executes processing for providing a service based on the activated application.
情報複製部22は、通信サービス提供中にSIPサーバ1に障害が発生した場合に備えて、SIPサーブレット20で管理するデータを自身以外の他のSIPサーバに所持データを複製する処理を実行する。具体的には、情報複製部22は、提供中の通信サービスに関する情報(所持データ)を複製するためのAPI(setAttribute)を呼び出し、SIPサーブレットコンテナ10を介して、他のSIPサーバに、その提供中の通信サービスに関する情報(所持データ)を送信する。なお、情報複製部22は、このsetAttibute APIの呼び出し処理を、例えば、所定の時間間隔で実行する。
The
なお、このsetAttribute APIは、例えば、以下に示すAPIである。
・void SipApplicationSession.setAttribute(java.lang.String name, java.lang.Object attribute)
・void SipServletMessage.setAttribute(java.lang.String name, java.lang.Object attribute)
・void SipSession. setAttribute(java.lang.String name, java.lang.Object attribute)
In addition, this setAttribute API is API shown below, for example.
Void SipApplicationSession.setAttribute (java.lang.String name, java.lang.Object attribute)
Void SipServletMessage.setAttribute (java.lang.String name, java.lang.Object attribute)
Void SipSession.setAttribute (java.lang.String name, java.lang.Object attribute)
情報複製部22は、setAttribute APIのパラメータである「name」と「attribute」についてのインスタンスを、「nameインスタンス」および「attributeインスタンス」として生成し、不図示のメモリ部内に記憶する。
The
また、情報複製部22は、setAttribute APIを呼び出す処理に関して、他のSIPサーバとの間で、「Response」クラスのsendメソッドを実行し情報の送信を行った場合には、そのsendメソッドのパラメータについてのインスタンスを生成し、不図示のメモリ部内に記憶する。なお、このsendメソッドは、setAttribute APIにおいてSIPサーブレット20が管理する情報を送信するために必要な中間処理に関する情報の送信に用いられる。
In addition, regarding the process of calling the setAttribute API, the
≪障害解析情報収集機能≫
障害解析情報収集機能30は、SIPサーバ1内で障害が発生した場合に、その障害解析のために必要となる情報(障害解析情報)を収集して出力する。この障害解析情報収集機能30は、図1に示すように、障害解析情報収集部(障害解析情報収集手段)31と、障害解析情報管理部(障害解析情報管理手段)32と、障害解析情報出力部(障害解析情報出力手段)33と、不図示のメモリ部内に記憶される障害解析管理テーブル300とを含んで構成される。
≪Failure analysis information collection function≫
The failure analysis
障害解析情報収集部31は、SIPサーブレットコンテナ10内に備えられ、SIPサーバ1において発生した障害を解析するために必要となる情報(障害解析情報)をSIPサーブレットコンテナ10から収集する。
具体的には、障害解析情報収集部31は、SIPサーブレットコンテナ10内のSIPサーブレット生成部11によるSIPサーブレット生成時(他サーバ、クライアント等からのINVITEメッセージ受信時)、SIPサーブレット20からのsetAttribute APIの呼び出し時、例外処理部14により処理される例外発生時、SIPサーブレット削除部13によるSIPサーブレット削除時(doByeメッセージへの応答受信時)に、障害解析に必要な情報を収集し、障害解析情報管理部32に通知する。
The failure analysis
Specifically, the failure analysis
以下、さらに詳細に説明する。
障害解析情報収集部(障害解析情報収集手段)31は、SIPサーブレットコンテナ10の通信管理部12が、生成されたSIPサーブレット20に関するSIPサーブレットコンテナ管理情報100(図2参照)の各データ項目の情報を記憶すると、そのSIPサーブレットコンテナ管理情報100に記憶された1つのSIPサーブレット20に関する情報(つまり、1行(1レコード)分のSIPサーブレット20の管理情報)への参照情報を収集し、障害解析情報管理部32に通知する。なお、ここで出力されるSIPサーブレットコンテナ管理情報100の1行(1レコード)分への参照情報を、「SIPサーブレット生成情報310」とする。
This will be described in more detail below.
The failure analysis information collection unit (failure analysis information collection unit) 31 is configured so that the
また、障害解析情報収集部31は、SIPサーブレット20からのsetAttribute API呼び出しに関する情報(後記するsetAttribute API呼び出し情報320)を収集する。具体的には、障害解析情報収集部31は、(1)setAttributeAPIが発行された時刻と、そのsetAttribute API呼び出しパラメータ(name, attribute)のインスタンスへの参照情報、および、(2)SIPサーブレット20と他サーバやクライアント等との間で送受信される情報に関するResponseクラスにおけるsendメソッドのパラメータのインスタンスへの参照情報と、そのsendメソッドによる通信電文が発行された時刻、を収集し、setAttribute API呼び出し情報320として、障害解析情報管理部32に通知する。
Further, the failure analysis
さらに、障害解析情報収集部31は、SIPサーバ1内で障害(例外)が発生した場合に、例外処理部14が生成した例外オブジェクトにおいて、例外クラスのクラス名のインスタンスへの参照情報、例外のメッセージのインスタンスへの参照情報、および、スタックトレースのインスタンスへの参照情報を収集し、例外情報330として、障害解析情報管理部32に通知する。
Further, the failure analysis
また、障害解析情報収集部31は、SIPサーブレット削除部13が、SIPサーブレット20を削除した旨の情報を収集する。そして、障害解析情報収集部31は、SIPサーブレットコンテナ管理情報100に記憶された、その削除されたSIPサーブレット20に関する情報(1行(1レコード)分のSIPサーブレット20の管理情報)への参照情報(SIPサーブレット生成情報310)を含むSIPサーブレット削除情報を生成して障害解析情報管理部32に通知する。
Further, the failure analysis
障害解析情報管理部(障害解析情報管理手段)32は、障害解析情報収集部31が収集した障害解析のために必要な各情報を取得し、生成されたSIPサーブレット20毎に障害解析管理テーブル300(後記する図3(b)参照)に記憶する。
具体的には、障害解析情報管理部32は、SIPサーブレット20の生成時に、障害解析情報収集部31からSIPサーブレット生成情報310を取得し障害解析管理テーブル300に記憶する。障害解析情報管理部32は、setAttribute API呼び出し時に、障害解析情報収集部31からsetAttribute API呼び出し情報320を取得し障害解析管理テーブル300に記憶する。また、障害解析情報管理部32は、障害(例外)発生時に、障害解析情報収集部31から例外情報330を取得し、障害解析管理テーブル300に記憶した上で、例外情報330を記憶した旨を障害解析情報出力部33に通知する。さらに、障害解析情報管理部32は、SIPサーブレット20の削除時に、障害解析情報収集部31からSIPサーブレット削除情報を取得し、障害解析管理テーブル300の該当するSIPサーブレット20に関する情報を削除する。
The failure analysis information management unit (failure analysis information management means) 32 acquires each piece of information necessary for failure analysis collected by the failure analysis
Specifically, the failure analysis
図3は、本実施形態に係る障害解析管理テーブル300に記憶される障害解析情報のデータ構成を説明するための図である。図3においては、障害解析管理テーブル300が記憶する情報の内容を説明するため、図3(a)において、図2に示したSIPサーブレットコンテナ管理情報100を示し、図3(b)において、障害解析管理テーブル300を示している。なお、この障害解析管理テーブル300は、不図示のメモリ部に記憶される。
FIG. 3 is a diagram for explaining the data configuration of the failure analysis information stored in the failure analysis management table 300 according to the present embodiment. 3, in order to explain the contents of the information stored in the failure analysis management table 300, FIG. 3A shows the SIP servlet
図3(b)に示すように、障害解析管理テーブル300には、大きく分けて、SIPサーブレット生成情報310と、setAttribute API呼び出し情報320と、例外情報330とが記憶される。SIPサーブレット生成情報310は、前記したように、SIPサーブレットコンテナ10が管理するSIPサーブレットコンテナ管理情報100(図2,図3(a))に記憶された1つのSIPサーブレット20に関する情報(1行(1レコード)分のSIPサーブレット20の管理情報)への参照情報である。そして、障害解析管理テーブル300には、SIPサーブレット20毎に生成されたこのSIPサーブレット生成情報310に対応付けて、setAttribute API呼び出し情報320と、例外情報330とが記憶される。
As shown in FIG. 3B, the failure analysis management table 300 roughly stores SIP
setAttibute API呼び出し情報320には、setAttribute関連情報321およびsend関連情報322が記憶される。そして、このsetAttribute関連情報321には、setAttribute APIが発行される度にその時刻と、setAttribute API呼び出しパラメータ(name, attribute)のインスタンスへの参照情報とが記憶される。また、send関連情報322には、sendメソッドによる通信電文が発行される度にその時刻と、sendメソッドのパラメータ(図3(b)において、「Response(パラメータ)」と表記)のインスタンスへの参照情報とが記憶される。
In the setAttibute API call
例外情報330には、SIPサーブレットコンテナ10の例外処理部14が生成した例外オブジェクトにおける、例外クラスのクラス名のインスタンスへの参照情報、例外のメッセージのインスタンスへの参照情報、および、スタックトレースのインスタンスへの参照情報が記憶される。
The exception information 330 includes reference information to an instance of a class name of an exception class, reference information to an instance of an exception message, and an instance of a stack trace in an exception object generated by the
図1に戻り、障害解析情報出力部(障害解析情報出力手段)33は、障害解析情報管理部32から、障害解析管理テーブル300に例外情報330を記憶した旨の通知を受信すると、障害解析管理テーブル300(図3(b))を参照し、当該SIPサーブレット20に関する障害解析情報を抽出して出力する。なお、ここで、障害解析情報とは、障害解析管理テーブル300において1つのSIPサーブレット20に関する情報として記憶されている、SIPサーブレット生成情報310、setAttibute API呼び出し情報320および例外情報330を含む情報である。
Returning to FIG. 1, when the failure analysis information output unit (failure analysis information output means) 33 receives a notification from the failure analysis
なお、このSIPサーバ1をプログラム実行処理により実現するため、記憶部(不図示)には、SIPサーバ1の各処理部(SIPサーブレットコンテナ10のSIPサーブレット生成部11〜例外処理部14、SIPサーブレット20のサービス処理部21および情報複製部22、障害解析情報収集機能30の障害解析情報収集部31〜障害解析情報出力部33)により構成される制御部(不図示)の機能を実現するためのプログラム(障害解析情報収集プログラムを含む)が格納される。そして、制御部は、記憶部に記憶されたそのプログラムを、CPU(不図示)がRAM等で実現されるメモリ部(不図示)に展開し実行することで実現される。
In order to realize the
<処理の流れ>
次に、図4および図5を参照して、本実施形態に係る障害解析情報収集機能30を備えるSIPサーバ1の処理の流れを説明する。
図4において、SIPサーバ1が正常時に行う障害解析情報収集処理を説明する。また、図5において、SIPサーバ1に障害(例外)が発生した場合の障害解析情報収集処理を説明する。
<Process flow>
Next, with reference to FIG. 4 and FIG. 5, the flow of processing of the
In FIG. 4, the failure analysis information collecting process performed when the
≪正常時の処理≫
図4は、本実施形態に係る障害解析情報収集機能30を備えるSIPサーバ1の正常時の処理の流れを示すシーケンス図である。
<Normal processing>
FIG. 4 is a sequence diagram showing a normal processing flow of the
(SIPサーブレット生成)
まず、SIPサーバ1のSIPサーブレットコンテナ10は、SIP端末5等からSIPメッセージ(INVITE等)を受け付ける(ステップS10)。
(SIP servlet generation)
First, the
そして、SIPサーブレットコンテナ10のSIPサーブレット生成部11が、受け付けたSIPメッセージ(INVITE等)に対応したSIPサーブレット20を生成する(ステップS11)。そして、通信管理部12が、生成したSIPサーブレット20に関する管理情報オブジェクトを生成しメモリ部に記憶した上で、SIPサーブレットコンテナ管理情報100(図2参照)の各データ項目に、当該SIPサーブレット20の各情報を記憶する。
Then, the SIP
続いて、障害解析情報収集部31は、新たに生成されたSIPサーブレット20について、SIPサーブレットコンテナ管理情報100に記憶された1つのSIPサーブレット20に関する情報(1行(1レコード)分のSIPサーブレット20の管理情報)への参照情報をSIPサーブレット生成情報310として収集する(ステップS12)。
そして、障害解析情報収集部31は、収集したSIPサーブレット生成情報310を障害解析情報管理部32に通知する(ステップS13)。
Subsequently, the failure analysis
Then, the failure analysis
次に、障害解析情報管理部32は、障害解析管理テーブル300(図3(b)参照)に、新たなレコードを作成し、受信したSIPサーブレット生成情報310を記憶する(ステップS14)。
Next, the failure analysis
続いて、SIPサーブレットコンテナ10が、生成したSIPサーブレット20の「doInvite」を呼び出し(ステップS15)、アプリケーションを起動して処理を実行する。なお、以降のアプリケーション毎に固有の処理については、説明を省略する。
Subsequently, the
(setAttribute API呼び出し)
次に、SIPサーブレット20の情報複製部22は、SIPサーブレット20が保持する情報を他のSIPサーバ1に複製するため、setAttribute APIを呼び出す(ステップS20)。
(SetAttribute API call)
Next, the
続いて、障害解析情報収集部31は、setAttribute APIの呼び出しに関連する情報(図3(b)のsetAttribute関連情報321およびsend関連情報322)を、setAttribute API呼び出し情報320として収集する(ステップS21)。そして、障害解析情報収集部31は、その収集したsetAttribute API呼び出し情報320を、SIPサーブレットコンテナ10に出力する(ステップS22)。
Subsequently, the failure analysis
また、障害解析情報収集部31は、その収集したsetAttribute API呼び出し情報320を、障害解析情報管理部32に通知する(ステップS23)。
The failure analysis
次に、障害解析情報管理部32は、該当するSIPサーブレット20(SIPサーブレット生成情報310)に対応付けた情報として、障害解析管理テーブル300(図3(b)参照)にsetAttribute API呼び出し情報320を記憶する(ステップS24)。
なお、このsetAttribute API呼び出し情報320を記憶する処理は、SIPサーブレット20によって、例えば、所定の時間間隔でsetAttribute APIが呼び出される毎に実行される。
Next, the failure analysis
The processing for storing the setAttribute API call
(SIPサーブレット削除)
次に、SIPサーブレットコンテナ10は、SIPサーブレット20から「doBye」の応答を受信する(ステップS30)。
(Delete SIP Servlet)
Next, the
そして、SIPサーブレットコンテナ10のSIPサーブレット削除部13が、受信した「doBye」メッセージの応答に示されるSIPサーブレット20を削除する(ステップS31)。次に、通信管理部12は、SIPサーブレットコンテナ管理情報100(図2参照)から、削除したSIPサーブレット20に関する各情報を、削除する。なお、管理情報オブジェクトの実体は、通信管理部12が、例えば、Javaで規定されるGC(Garbage Collection:ガーベジ・コレクション)の処理により削除する。
Then, the SIP
続いて、障害解析情報収集部31は、SIPサーブレット削除部13が、SIPサーブレット20を削除した旨の情報を収集する(ステップS32)。そして、障害解析情報収集部31は、SIPサーブレットコンテナ管理情報100に記憶された、その削除されたSIPサーブレット20に関する情報(1行分のSIPサーブレット20の管理情報)への参照情報(SIPサーブレット生成情報310)を含むSIPサーブレット削除情報を生成して障害解析情報管理部32に通知する(ステップS33)。
Subsequently, the failure analysis
次に、障害解析情報管理部32は、障害解析管理テーブル300(図3(b))に記憶されたSIPサーブレット20毎の障害解析情報のうち、SIPサーブレット削除情報に示されるSIPサーブレット生成情報310に対応するSIPサーブレット20の情報(障害解析情報)を削除する(ステップS34)。
Next, the failure analysis
≪障害発生時の処理≫
図5は、本実施形態に係る障害解析情報収集機能30を備えるSIPサーバ1の障害発生時の処理の流れを示すシーケンス図である。
図5においては、図4に示したステップS10〜S15およびステップS20〜S24の処理により、障害解析管理テーブル300(図3(b)参照)に、SIPサーブレット生成情報310およびsetAttribute API呼び出し情報320が既に記憶されているものとする。
≪Processing when failure occurs≫
FIG. 5 is a sequence diagram illustrating a processing flow when a failure occurs in the
In FIG. 5, the SIP
まず、SIPサーブレットコンテナ10の例外処理部14は、障害(例外)が発生すると、例外オブジェクトを生成し(ステップS40)、例外ハンドラ(例外発生時の処理)を実行する。その際に、例外処理部14は、例外オブジェクトとして、例外クラスのクラス名のインスタンス、例外ハンドラに基づき実行された例外のメッセージのインスタンス、スタックトレースのインスタンスを生成する。
First, when a failure (exception) occurs, the
次に、障害解析情報収集部31は、例外処理部14が例外オブジェクトを生成するか否かを監視しており、例外処理部14が例外オブジェクトを生成すると、例外クラスのクラス名のインスタンスへの参照情報、例外のメッセージのインスタンスへの参照情報、および、スタックトレースのインスタンスへの参照情報を、例外情報330として収集する(ステップS41)。そして、障害解析情報収集部31は、その収集した例外情報330を、障害解析情報管理部32に通知する(ステップS42)。
Next, the failure analysis
次に、障害解析情報管理部32は、該当するSIPサーブレット20(SIPサーブレット生成情報310)に対応付けた情報として、障害解析管理テーブル300(図3(b)参照)に例外情報330を記憶する(ステップS43)。そして、障害解析情報管理部32は、障害解析管理テーブル300に例外情報330を記憶した旨を障害解析情報出力部33に通知する(ステップS44)。
Next, the failure analysis
続いて、障害解析情報出力部33は、当該例外情報330が通知されたSIPサーブレット20に関する障害解析情報を、障害解析管理テーブル300から抽出して出力する(ステップS45)。
Subsequently, the failure analysis
なお、障害解析情報出力部33による障害解析情報の出力が終了するまで、当該SIPサーブレット20に関する各情報(管理情報オブジェクトやSIPサーブレットコンテナ管理情報100、障害解析管理テーブル300等)が削除されないように関連する各処理部が排他制御を行う。
また、障害解析情報出力部33による障害解析情報の出力が終了した後に、SIPサーブレットコンテナ10が、障害(例外)が発生したSIPサーブレット20を削除するようにしてもよい。その場合、図4に示したステップS31〜S34の処理と同様の処理を行うことにより、SIPサーブレットコンテナ管理情報100(図2参照)および障害解析管理テーブル300(図3(b)参照)から、当該SIPサーブレット20に関する情報を削除することができる。
Note that each piece of information (the management information object, the SIP servlet
Further, after the output of the failure analysis information by the failure analysis
以上説明したように、本実施形態に係る障害解析情報収集プログラムにより実現される障害解析情報収集機能30を備えるSIPサーバ1によれば、既存のSIPサーブレットコンテナ10で管理される情報への参照情報を障害解析情報としてメモリに収集することにより、サービス提供時等においても、障害解析に必要な情報(障害解析情報)を、処理性能への影響を低減させて出力することができる。よって、障害発生時に、被疑箇所の詳細なログを出力するように通信プログラムを入れ替える必要がなく、通信サービス開発時のデバックおよび通信サービス提供時の障害解析にかかる時間を短縮することができる。
As described above, according to the
<変形例1>
本実施形態に係る障害解析情報収集機能30を備えるSIPサーバ1による処理では、サービス提供中(SIPサーブレット20の起動中)のSIPサーブレット20に関する情報のみを、障害解析情報の対象とした。これに対し、サービス提供のための通信が終了した、つまり、生成したSIPサーブレット20を削除した後においても、障害解析管理テーブル300(図3(b)参照)に記憶した各SIPサーブレット20の障害解析情報を削除せずに保存しておき、外部装置等からの要求に応じて、保存した障害解析情報を出力するようにしてもよい。この場合、例えば、障害解析管理テーブル300に格納するSIPサーブレット20の障害解析情報の件数に上限を設け、当該件数が上限(所定数)に達した場合に、障害解析情報管理部32が、SIPサーブレット20が削除された障害解析情報を削除するようにする。このSIPサーブレット20が削除された障害解析情報の削除順は、例えば、障害解析情報管理部32が、当該障害解析情報の障害解析管理テーブル300への記憶日時を記録しておき、古い順に削除してもよいし、ランダムに削除してもよい。
このようにすることで、通信サービスが終了したSIPサーブレットの障害解析情報についても、障害解析情報の記憶に関するメモリ使用量を適正に維持した上で、障害解析に利用することができる。
<
In the processing by the
By doing in this way, the failure analysis information of the SIP servlet for which the communication service has ended can also be used for failure analysis while appropriately maintaining the memory usage related to storage of failure analysis information.
<変形例2>
また、本実施形態に係る障害解析情報管理部32は、SIPサーブレット20が削除された後においても、障害解析管理テーブル300(図3(b)参照)に記憶された特定のSIPサーブレット20の障害解析情報を選択的に削除せずに保存するようにしてもよい。
例えば、障害解析情報管理部32は、障害解析情報として記憶された参照情報の基となる情報のいずれかに、所定の例外発生条件に合致する情報が含まれるか否かを判定する。そして、障害解析情報管理部32は、所定の例外発生条件(例えば、特定の着信先の電話番号や、特定のサービスに関する通信サービスを利用する際に例外の発生率が高いことが予め分かっている場合の、その着信先の電話番号やサービス)に合致する情報が含まれていない障害解析情報を削除し、所定の例外発生条件に合致する情報が含まれている障害解析情報を削除せずに障害解析管理テーブル300に記憶し続ける。そして、外部装置等からの要求に応じて、障害解析情報出力部33が、その障害解析情報を出力するようにする。
このようにすることで、障害発生の条件が分かっているものに関する障害解析を効率化することができる。
<
In addition, the failure analysis
For example, the failure analysis
By doing in this way, it is possible to improve the efficiency of failure analysis related to a device whose failure conditions are known.
<変形例3>
本実施形態においては、SIPサーブレットコンテナ10が生成するSIPサーブレット20により提供される通信サービスにおいて、障害解析情報を収集するための障害解析情報収集プログラムについて説明した。一方、Javaの規格でありSIPサーブレットに類似した仕様としてHTTP(HyperText Transfer Protocol)サーブレットが規定されている。Webサーバ等がHTTPリクエスト(例えば、GETリクエスト)を受信するとHTTPサーブレットコンテナがHTTPサーブレットを生成する。そして、生成されたHTTPサーブレットがWebページを作成する等の通信サービスを実行する。なお、このHTTPサーブレットとSIPサーブレット20とは、その構成や処理において共通点が多いため、1つのサーバに両方のサーブレットを実装し、HTTPとSIPとを連携させたサービスも提供可能である。
<
In the present embodiment, the failure analysis information collection program for collecting failure analysis information in the communication service provided by the
このHTTPサーブレットコンテナが生成するHTTPサーブレットにより提供される通信サービスにおいても、サービス提供時等に障害が発生しその障害解析情報を収集するためには、処理性能への影響を考慮して、被疑箇所の詳細なログを出力するように通信プログラムを入れ替える必要があった。つまり、SIPサーブレット20により提供される通信サービスにおいて障害解析情報を提供する場合と同様の課題があった。
よって、本実施形態において説明した障害解析情報収集機能30(障害解析情報収集プログラム)を、HTTPサーブレットコンテナの機能をもつWebサーバに適応して備えさせることにより、HTTPサーブレットによるサービス提供時等において、障害解析のために必要となる情報(障害解析情報)を参照情報としてメモリに収集しておき、障害発生時に、処理性能への影響を低減させて出力することが可能となる。
Even in the communication service provided by the HTTP servlet generated by this HTTP servlet container, in order to collect failure analysis information when failure occurs at the time of service provision, etc. It was necessary to replace the communication program to output detailed logs. That is, there is a problem similar to the case where the failure analysis information is provided in the communication service provided by the
Therefore, by providing the failure analysis information collection function 30 (failure analysis information collection program) described in the present embodiment adaptively to the Web server having the function of the HTTP servlet container, at the time of providing the service by the HTTP servlet, etc. Information necessary for failure analysis (failure analysis information) is collected in the memory as reference information, and can be output with reduced influence on processing performance when a failure occurs.
1 SIPサーバ
10 SIPサーブレットコンテナ
11 SIPサーブレット生成部
12 通信管理部
13 SIPサーブレット削除部
14 例外処理部
20 SIPサーブレット
21 サービス処理部
22 情報複製部
30 障害解析情報収集機能
31 障害解析情報収集部(障害解析情報収集手段)
32 障害解析情報管理部(障害解析情報管理手段)
33 障害解析情報出力部(障害解析情報出力手段)
100 SIPサーブレットコンテナ管理情報
300 障害解析管理テーブル
DESCRIPTION OF
32 Failure analysis information management unit (failure analysis information management means)
33 Failure analysis information output unit (failure analysis information output means)
100 SIP servlet
Claims (5)
前記SIPサーブレットコンテナが備わるコンピュータを、
前記SIPサーブレットコンテナがSIPメッセージを受信し前記SIPメッセージに対応した前記SIPサーブレットを生成し、生成した前記SIPサーブレットがSIPサーブレットコンテナ管理情報を用いて前記通信サービスを処理するために、前記SIPサーブレットコンテナがメモリに記憶した前記SIPサーブレットコンテナ管理情報への参照情報を収集し、
前記生成されたSIPサーブレットが前記通信サービスを提供するとき、当該SIPサーブレットが所持データを複製する際に呼び出すAPI(Application Program Interface)のAPI呼び出しパラメータへの参照情報を収集し、
前記SIPサーブレットコンテナが前記生成されたSIPサーブレットが提供する前記通信サービスに例外が発生した際に生成する例外情報への参照情報を収集する障害解析情報収集手段、
前記障害解析情報収集手段から通知された、前記SIPサーブレットコンテナ管理情報への参照情報、前記API呼び出しパラメータへの参照情報および前記例外情報への参照情報を、障害解析情報として前記メモリに記憶させる障害解析情報管理手段、および、
前記障害解析情報管理手段が前記例外情報への参照情報を前記メモリに記憶させたときに、前記例外情報に示される前記生成されたSIPサーブレットについての前記障害解析情報を前記メモリから抽出して出力する障害解析情報出力手段、
として機能させるための障害解析情報収集プログラム。 A failure analysis information collection program for collecting information for failure analysis of a failure that occurs when a SIP servlet container provides a communication service by generating a SIP servlet,
A computer equipped with the SIP servlet container
For the SIP servlet container generates the SIP Servlet corresponding to the SIP message received the SIP message, it generates the SIP Servlet that handles the communication service using the SIP Servlet Container management information, the SIP Servlet Container There collect reference information to the SIP servlet container management information stored in the memory,
When the generated SIP servlet provides the communication service, it collects reference information to API call parameters of an API (Application Program Interface) that is called when the SIP servlet replicates possessed data;
Fault analysis information collecting means for collecting reference information to exception information generated when an exception occurs in the communication service provided by the generated SIP servlet by the SIP servlet container;
A failure to store the reference information to the SIP servlet container management information, the reference information to the API call parameter, and the reference information to the exception information notified from the failure analysis information collection unit as failure analysis information in the memory Analysis information management means, and
When the failure analysis information management means stores reference information to the exception information in the memory, the failure analysis information about the generated SIP servlet indicated in the exception information is extracted from the memory and output. Failure analysis information output means,
Failure analysis information collection program to function as
前記SIPサーブレットコンテナが、前記通信サービスの終了により前記生成したSIPサーブレットを削除した旨を示す削除情報を収集し、前記収集した削除情報を前記障害解析情報管理手段に通知し、
前記障害解析情報管理手段は、
前記削除情報に示される当該生成したSIPサーブレットについての前記障害解析情報を、前記メモリから削除すること
を特徴とする請求項1に記載の障害解析情報収集プログラム。 The failure analysis information collecting means includes
The SIP servlet container collects deletion information indicating that the generated SIP servlet has been deleted due to termination of the communication service, and notifies the failure analysis information management means of the collected deletion information;
The failure analysis information management means includes
The failure analysis information collection program according to claim 1, wherein the failure analysis information on the generated SIP servlet indicated in the deletion information is deleted from the memory.
前記SIPサーブレットコンテナが、前記通信サービスの終了により前記生成したSIPサーブレットを削除した旨を示す削除情報を収集し、前記収集した削除情報を前記障害解析情報管理手段に通知し、
前記障害解析情報管理手段は、
前記削除情報に示される当該生成したSIPサーブレットの前記障害解析情報を、前記メモリに記憶された各SIPサーブレットの障害解析情報の数が所定値に達した場合に削除すること
を特徴とする請求項1に記載の障害解析情報収集プログラム。 The failure analysis information collecting means includes
The SIP servlet container collects deletion information indicating that the generated SIP servlet has been deleted due to termination of the communication service, and notifies the failure analysis information management means of the collected deletion information;
The failure analysis information management means includes
The failure analysis information of the generated SIP servlet indicated in the deletion information is deleted when the number of failure analysis information of each SIP servlet stored in the memory reaches a predetermined value. The failure analysis information collection program according to 1.
前記SIPサーブレットコンテナが、前記通信サービスの終了により前記生成したSIPサーブレットを削除した旨を示す削除情報を収集し、前記収集した削除情報を前記障害解析情報管理手段に通知し、
前記障害解析情報管理手段は、
前記削除情報に示される当該生成したSIPサーブレットの前記障害解析情報として記憶された、前記SIPサーブレットコンテナ管理情報への参照情報、前記API呼び出しパラメータへの参照情報および前記例外情報への参照情報、の基となる前記SIPサーブレットコンテナ管理情報、前記API呼び出しパラメータおよび前記例外情報のいずれかに、所定の例外発生条件に合致する情報が含まれているか否かを判定し、前記所定の例外発生条件に合致する情報が含まれていない前記障害解析情報を削除し、前記所定の例外発生条件に合致する情報が含まれている前記障害解析情報を削除せずに前記メモリに記憶し続け、
前記障害解析情報出力手段は、
前記所定の例外発生条件と合致する情報が含まれる前記障害解析情報の取得要求を取得した場合に前記メモリから抽出して出力すること
を特徴とする請求項1に記載の障害解析情報収集プログラム。 The failure analysis information collecting means includes
The SIP servlet container collects deletion information indicating that the generated SIP servlet has been deleted due to termination of the communication service, and notifies the failure analysis information management means of the collected deletion information;
The failure analysis information management means includes
Reference information to the SIP servlet container management information, reference information to the API call parameter, and reference information to the exception information stored as the failure analysis information of the generated SIP servlet indicated in the deletion information It is determined whether any of the SIP servlet container management information, the API call parameter, and the exception information that is the basis includes information that matches a predetermined exception generation condition, and the predetermined exception generation condition Deleting the failure analysis information that does not include matching information, and continuing to store the failure analysis information that includes information that matches the predetermined exception occurrence condition without deleting the failure analysis information;
The failure analysis information output means includes
The failure analysis information collection program according to claim 1, wherein when a failure analysis information acquisition request including information that matches the predetermined exception occurrence condition is acquired, the failure analysis information collection program is extracted from the memory and output.
前記HTTPサーブレットコンテナが備わるコンピュータを、
前記HTTPサーブレットコンテナがHTTPメッセージを受信し前記HTTPメッセージに対応した前記HTTPサーブレットを生成し、生成した前記HTTPサーブレットがHTTPサーブレットコンテナ管理情報を用いて前記通信サービスを処理するために、前記HTTPサーブレットコンテナがメモリに記憶した前記HTTPサーブレットコンテナ管理情報への参照情報を収集し、
前記生成されたHTTPサーブレットが前記通信サービスを提供するとき、当該HTTPサーブレットが所持データを複製する際に呼び出すAPI(Application Program Interface)のAPI呼び出しパラメータへの参照情報を収集し、
前記HTTPサーブレットコンテナが前記生成されたHTTPサーブレットが提供する前記通信サービスに例外が発生した際に生成する例外情報への参照情報を収集する障害解析情報収集手段、
前記障害解析情報収集手段から通知された、前記HTTPサーブレットコンテナ管理情報への参照情報、前記API呼び出しパラメータへの参照情報および前記例外情報への参照情報を、障害解析情報として前記メモリに記憶させる障害解析情報管理手段、および、
前記障害解析情報管理手段が前記例外情報への参照情報を前記メモリに記憶させたときに、前記例外情報に示される前記生成されたHTTPサーブレットについての前記障害解析情報を前記メモリから抽出して出力する障害解析情報出力手段、
として機能させるための障害解析情報収集プログラム。 A failure analysis information collection program that collects information for failure analysis of a failure that occurs when an HTTP servlet container provides a communication service by generating an HTTP servlet,
A computer provided with the HTTP servlet container,
For the HTTP servlet container generates the HTTP servlet corresponding to the HTTP message received the HTTP message, it generates the HTTP servlet that handles the communication service using the HTTP servlet container management information, the HTTP servlet container There were collected reference information to the HTTP servlet container management information stored in the memory,
When the generated HTTP servlet provides the communication service, it collects reference information to API call parameters of an API (Application Program Interface) that is called when the HTTP servlet duplicates possessed data;
Fault analysis information collecting means for collecting reference information to exception information generated when an exception occurs in the communication service provided by the generated HTTP servlet by the HTTP servlet container;
A failure in which the reference information to the HTTP servlet container management information, the reference information to the API call parameter, and the reference information to the exception information notified from the failure analysis information collecting unit is stored in the memory as failure analysis information Analysis information management means, and
When the failure analysis information management means stores the reference information to the exception information in the memory, the failure analysis information about the generated HTTP servlet indicated in the exception information is extracted from the memory and output. Failure analysis information output means,
Failure analysis information collection program to function as
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012157801A JP5894512B2 (en) | 2012-07-13 | 2012-07-13 | Failure analysis information collection program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012157801A JP5894512B2 (en) | 2012-07-13 | 2012-07-13 | Failure analysis information collection program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014021612A JP2014021612A (en) | 2014-02-03 |
JP5894512B2 true JP5894512B2 (en) | 2016-03-30 |
Family
ID=50196450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012157801A Expired - Fee Related JP5894512B2 (en) | 2012-07-13 | 2012-07-13 | Failure analysis information collection program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5894512B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782432B (en) * | 2020-06-29 | 2024-03-22 | 中国工商银行股份有限公司 | Method and device for collecting data for container anomaly analysis |
-
2012
- 2012-07-13 JP JP2012157801A patent/JP5894512B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014021612A (en) | 2014-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11032330B2 (en) | Method for processing telephony sessions of a network | |
JP4735068B2 (en) | COMMUNICATION SYSTEM, COMMUNICATION METHOD, AND COMMUNICATION DEVICE | |
WO2020029375A1 (en) | Interface testing method and system, and computer device and storage medium | |
US10691748B2 (en) | Methods and apparatus to process call packets collected in a communications network | |
US20150039747A1 (en) | Communication device event captures | |
US20090089629A1 (en) | Capturing diagnostics in web browser applications | |
CN103166827A (en) | Method and system for user behavior data reporting | |
JP2009230540A (en) | Session information duplicating method, call control server for executing the method and program of the method | |
JP5894512B2 (en) | Failure analysis information collection program | |
JP2012216040A (en) | Log management system, log analysis device, log analysis method and log analysis program | |
CN106210159B (en) | Domain name resolution method and device | |
US9374437B2 (en) | Schema validation proxy | |
JP2010224861A (en) | Dynamic content storage/restoration device, dynamic content storage/restoration system, dynamic content storage/restoration method and program | |
CN115617611A (en) | Generation method and device of signaling flow chart, electronic equipment and storage medium | |
US11616698B2 (en) | Method, processor, and system for processing data packages | |
WO2013000215A1 (en) | Method and device for issuing notification message | |
JP2018037971A (en) | Communication service providing system and communication service providing method | |
CN117615057B (en) | Fault detection method, device, system, computer equipment and storage medium | |
CN114125054B (en) | Content auditing system, method, device, equipment and medium | |
WO2020224413A1 (en) | Load control method, service provider nf, and service user nf | |
Wook et al. | Performance Enhancement of SIP proxy server by using lhash for matching transaction | |
JP6340972B2 (en) | Communication billing system and communication billing method | |
JP6340973B2 (en) | Communication billing system and communication billing method | |
Kim | On SIP Server Clusters and the Migration to Cloud Computing Platforms | |
JP2011166582A (en) | Protocol monitoring apparatus, log information collecting method and log information collection program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140502 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20140528 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141022 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150616 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150714 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150914 |
|
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: 20160223 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160226 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5894512 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |