JP5894512B2 - Failure analysis information collection program - Google Patents

Failure analysis information collection program Download PDF

Info

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
Application number
JP2012157801A
Other languages
Japanese (ja)
Other versions
JP2014021612A (en
Inventor
裕朗 河原崎
裕朗 河原崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012157801A priority Critical patent/JP5894512B2/en
Publication of JP2014021612A publication Critical patent/JP2014021612A/en
Application granted granted Critical
Publication of JP5894512B2 publication Critical patent/JP5894512B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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 Documents 1 and 2). The SIP servlet operates on a SIP servlet container (SIP application server) in which signaling implementation, application life cycle, transaction, session management, security, and the like are defined as execution environment specifications.

この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.

鈴木 信吾、“通信系・情報系サービスを融合する「SIP Servlet」”、[online]、2006年4月22日、[2012年6月27日検索]、インターネット<URL:http://www.atmarkit.co.jp/fjava/kaisetsu/j2eewatch09/j2eewatch09.html>Shingo Suzuki, “SIP Servlet that integrates communication and information services”, [online], April 22, 2006, [June 27, 2012 search], Internet <URL: http: // www. atmarkit.co.jp/fjava/kaisetsu/j2eewatch09/j2eewatch09.html> 宮下 知起、“NGN時代の有力な基盤技術?SIPサーブレット入門”、[online]、2007年7月30日、[2012年6月27日検索]、インターネット<URL:http://www.atmarkit.co.jp/fjava/special/sipservlet/sipservlet_1.html>Tomoaki Miyashita, “A Leading Basic Technology in the NGN Age? Introduction to SIP Servlets”, [online], July 30, 2007, [Search June 27, 2012], Internet <URL: http: //www.atmarkit .co.jp / fjava / special / sipservlet / sipservlet_1.html>

しかしながら、ログファイルを利用した障害解析には以下のような問題がある。
まず、ログを収集するためには、通信プログラムにログ収集の処理を予め記述しておく必要がある。
また、詳細なログを取得するとファイル出力の負荷によって処理性能が低下する。これを防ぐために、利用する通信プログラムにおいて、設定ファイルでログの詳細さの程度を設定可能なものとしている。それでも、タイミングに関連する試験や商用提供時(サービス提供時)には、処理性能への影響が大きいため、設定ファイルの変更による詳細なログ取得を行うことは困難だった。そのため、障害発生時には、被疑箇所のみ詳細なログを出力するように改変した通信プログラムに入れ替えて、障害解析のためのログ収集を行う必要があった。
なお、ここでタイミングに関連する試験とは、例えば、キャッチホンや三者通話のサービス等において、発側端末のフッキング動作と着側端末のオンフック動作のように、発側の端末と着側の端末とで別々の動作をタイミングをずらして操作し、仕様通りの動作を実行しているかを確認するような試験である。また、以下において、タイミングに関連する試験や商用提供時(サービス提供時)をまとめてサービス提供時等として記述する。
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 claim 1 is a failure analysis that collects information for failure analysis of a failure that occurs when a SIP servlet container provides a communication service by generating a SIP servlet. An information collection program comprising: a computer provided with the SIP servlet container; the SIP servlet container receives a SIP message and generates the SIP servlet corresponding to the SIP message ; the generated SIP servlet is SIP servlet container management information; to handle the communication service using the SIP servlet container collects references to the SIP servlet container management information stored in the memory, the is generated SIP servlet Hisage the communication services To time, the communication service to which the SIP servlet collects references to API call parameters of API (Application Program Interface) to call when duplicating possession data, the SIP Servlet SIP Servlet Container is the generation is provided Failure analysis information collection means for collecting reference information to exception information generated when an exception occurs in the server, reference information for the SIP servlet container management information notified from the failure analysis information collection means, API call parameters Failure analysis information management means for storing the reference information to the exception information and the reference information to the exception information in the memory as failure analysis information, and the failure analysis information management means stores the reference information to the exception information in the memory When the generated is shown in the exception information A failure analysis information collecting program for functioning as failure analysis information output means for extracting and outputting the failure analysis information for the SIP servlet from the memory is provided.

このように、既存の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 claim 2, the failure analysis information collecting unit 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 The failure analysis information management unit notifies the failure analysis information management unit, and the failure analysis information management unit deletes the failure analysis information about the generated SIP servlet indicated in the deletion information from the memory. The failure analysis information collection program described in item 1 was adopted.

このようにすることで、通信サービスが終了した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 claim 1, wherein the failure analysis information collection program is deleted when the number of information reaches a predetermined value.

このようにすることで、通信サービスが終了した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 claim 5 is a failure analysis information collection program for collecting 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 an HTTP servlet container, the HTTP servlet container receives an HTTP message, generates the HTTP servlet corresponding to the HTTP message, and the generated HTTP servlet processes the communication service using HTTP servlet container management information to, the HTTP servlet container collects references to the HTTP servlet container management information stored in the memory, to provide the is generated HTTP servlet the communication service When, to the communication service to which the HTTP servlet collects references to API call parameters of API (Application Program Interface) to call when duplicating possession data, HTTP servlet that the HTTP servlet container is the product provides To failure analysis information collection means for collecting reference information to exception information generated when an exception occurs, to reference information to the HTTP servlet container management information notified from the failure analysis information collection means, to the API call parameter Failure analysis information management means for storing the reference information for the exception information and the reference information for the exception information in the memory as failure analysis information, and the failure analysis information management means for storing the reference information for the exception information in the memory. The generation indicated in the exception information A failure analysis information collecting program for functioning as failure analysis information output means for extracting and outputting the failure analysis information for the HTTP servlet that has been extracted from the memory is provided.

このようにすることで、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サーバの構成例を示す機能ブロック図である。It is a functional block diagram which shows the structural example of a SIP server provided with the failure analysis information collection function implement | achieved by the failure analysis information collection program which concerns on this embodiment. 本実施形態に係るSIPサーブレットコンテナ管理情報に記憶されるSIPサーブレットに関する情報のデータ構成を示す図である。It is a figure which shows the data structure of the information regarding the SIP servlet memorize | stored in the SIP servlet container management information which concerns on this embodiment. 本実施形態に係る障害解析管理テーブルに記憶される障害解析情報のデータ構成を説明するための図である。It is a figure for demonstrating the data structure of the failure analysis information memorize | stored in the failure analysis management table which concerns on this embodiment. 本実施形態に係る障害解析情報収集機能を備えるSIPサーバの正常時の処理の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of a process at the time of normal of a SIP server provided with the failure analysis information collection function which concerns on this embodiment. 本実施形態に係る障害解析情報収集機能を備えるSIPサーバの障害発生時の処理の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of a process when the failure of a SIP server provided with the failure analysis information collection function which concerns on this embodiment occurs.

次に、本発明を実施するための形態(以下、「本実施形態」という)における障害解析情報収集プログラム等について説明する。なお、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 SIP servlet 20 is a Java standard, this embodiment is based on the premise that Java is used as a program language.

<概要>
まず、本実施形態に係る障害解析情報収集プログラムにより実現される障害解析情報収集機能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 information collection function 30 realized by the failure analysis information collection program according to the present embodiment will be described.
FIG. 1 is a functional block diagram illustrating a configuration example of the SIP server 1 including a failure analysis information collection function 30 realized by the failure analysis information collection program according to the present embodiment.
In the SIP server 1 according to the present embodiment, when the SIP servlet container 10 receives a SIP message, it generates a SIP servlet 20 corresponding to the SIP message, starts an application, and executes processing. Further, the SIP servlet container 10 deletes the generated SIP servlet 20 when the service by the application ends.
The SIP server 1 according to the present embodiment collects information (failure analysis information) necessary for failure analysis at the time of providing the service of the SIP servlet 20 generated by the SIP servlet container 10, A failure analysis information collecting function 30 is provided for outputting failure analysis information when a failure occurs.

この障害解析情報収集機能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 SIP server 1 having the failure analysis information collection function 30, (1) generation of the SIP servlet 20 that is originally executed by the SIP servlet container 10, and (2) information managed by the SIP servlet 20 is copied to other SIP servers. A failure analysis information collection unit (failure) provided in the SIP servlet container 10 in response to a setAttribute API call for (3) deletion of the SIP servlet 20 and (4) exception processing when a failure (exception) occurs. (Analysis information collecting means) 31 collects information necessary for failure analysis. At this time, the failure analysis information collection unit 31 includes reference information for information related to the service provided by the SIP servlet 20 managed by the SIP servlet container 10, reference information for parameters when calling the setAttribute API, and exception processing. Reference information to the information generated in step (exception information 330 described later) is collected. In the present embodiment, “reference information” means not address information (data) itself but address information in a memory space such as a RAM (Random Access Memory) in which the information is stored. In this failure analysis information collection function 30, information (failure analysis information) necessary for failure analysis collected by the failure analysis information collection unit 31 is stored in the failure analysis management table 300 as reference information, and when a failure occurs (when an exception occurs). ) Is output as failure analysis information.

このようにすることで、本実施形態に係る障害解析情報収集プログラムによれば、サービス提供時等においても、障害解析に必要な情報(障害解析情報)を、処理性能への影響を低減させて収集し出力することができる。   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 server 1 having the failure analysis information collection function 30 will be specifically described.

<SIPサーバの構成>
SIPサーバ1は、SIPメッセージを受信して通信サービスを実現する装置であり、例えば、不図示の入出力部、制御部(演算部)、メモリ部、記憶部等から構成されるコンピュータとして実現される。入出力部は、入出力インタフェースや通信インタフェースにより構成される。制御部(演算部)は、CPU(Central Processing Unit)等の演算処理装置により構成される。メモリ部は、RAM等の一次記憶装置からなり、制御部によりデータ処理に必要な情報が一時的に記憶される。記憶部は、ハードディスクやフラッシュメモリ等の記憶装置により構成される。
また、SIPサーバ1は、その機能として、図1に示すように、SIPサーブレットコンテナ10と、そのSIPサーブレットコンテナ10により生成されるSIPサーブレット20と、障害解析情報収集機能30と、を含んで構成される。
<Configuration of SIP server>
The SIP server 1 is a device that receives a SIP message and implements a communication service. For example, the SIP server 1 is realized as a computer including an input / output unit (not shown), a control unit (calculation unit), a memory unit, a storage unit, and the like. The The input / output unit includes an input / output interface and a communication interface. The control unit (calculation unit) is configured by an arithmetic processing device such as a CPU (Central Processing Unit). The memory unit includes a primary storage device such as a RAM, and information necessary for data processing is temporarily stored by the control unit. The storage unit is configured by a storage device such as a hard disk or a flash memory.
Further, as shown in FIG. 1, the SIP server 1 includes a SIP servlet container 10, a SIP servlet 20 generated by the SIP servlet container 10, and a failure analysis information collection function 30. Is done.

≪SIPサーブレットコンテナ≫
SIPサーブレットコンテナ10は、ライフサイクルに沿ったアプリケーションの管理やセッション等のSIPに関する管理を実行する。また、SIPサーブレットコンテナ10は、SIPメッセージ(INVITE等)を受信すると、起動するアプリケーションに対応したSIPサーブレット20を生成する。
<< SIP servlet container >>
The SIP servlet container 10 executes management related to SIP such as application management and session along the life cycle. Further, when the SIP servlet container 10 receives a SIP message (INVITE or the like), the SIP servlet container 10 generates a SIP servlet 20 corresponding to the application to be activated.

このSIPサーブレットコンテナ10は、SIPサーブレット生成部11と、通信管理部12と、SIPサーブレット削除部13と、例外処理部14と、不図示のメモリ部内にSIPサーブレットコンテナ管理情報100とを備える。また、このSIPサーブレットコンテナ10は、各処理部が行う処理を監視し、障害解析のために利用する情報を収集する障害解析情報収集部(障害解析情報収集手段)31を備えている。なお、この障害解析情報収集部31は、障害解析情報収集機能30としての処理を、SIPサーブレットコンテナ10内において実行するため処理部であり、後記する障害解析情報収集機能30において詳細に説明する。   The SIP servlet container 10 includes a SIP servlet generation unit 11, a communication management unit 12, a SIP servlet deletion unit 13, an exception processing unit 14, and SIP servlet container management information 100 in a memory unit (not shown). The SIP servlet container 10 also includes a failure analysis information collection unit (failure analysis information collection unit) 31 that monitors processing performed by each processing unit and collects information used for failure analysis. The failure analysis information collection unit 31 is a processing unit for executing the processing as the failure analysis information collection function 30 in the SIP servlet container 10, and will be described in detail in the failure analysis information collection function 30 described later.

SIPサーブレット生成部11は、受信したSIPメッセージに基づき、どのアプリケーションを起動するか決定し、そのアプリケーションに対応したSIPサーブレット20を生成する。   The SIP servlet generation unit 11 determines which application is to be activated based on the received SIP message, and generates a SIP servlet 20 corresponding to the application.

通信管理部12は、SIPサーブレット20と、他のSIPサーバやクライアント(SIP端末)等の外部装置との間で、情報の送受信を行うと共に、トランザクションやセッション制御を行う。そして、通信管理部12は、SIPサーブレット生成部11が生成したSIPサーブレット20に関して、そのサービスの提供に必要な管理情報をオブジェクト(管理情報オブジェクト)としてメモリ部(不図示)に記憶する。また、通信管理部12は、SIPサーブレットコンテナ管理情報100(図2参照)において、その管理情報オブジェクトへの参照情報等をSIPサーブレット20毎に記憶し管理している。   The communication management unit 12 transmits and receives information between the SIP servlet 20 and an external device such as another SIP server or client (SIP terminal), and also performs transaction and session control. Then, the communication management unit 12 stores management information necessary for providing the service regarding the SIP servlet 20 generated by the SIP servlet generation unit 11 as an object (management information object) in a memory unit (not shown). Further, the communication management unit 12 stores and manages the reference information and the like for the management information object for each SIP servlet 20 in the SIP servlet container management information 100 (see FIG. 2).

SIPサーブレット削除部13は、サービスの終了に関するSIPメッセージ(doByeメッセージ)への応答を受信した場合に、対応するSIPサーブレット20を削除する。   The SIP servlet deleting unit 13 deletes the corresponding SIP servlet 20 when receiving a response to the SIP message (doBye message) regarding the termination of the service.

例外処理部14は、例外(プログラム実行中における予期せぬ事象(エラー:障害))が発生すると例外オブジェクトを生成し、例外ハンドラ(例外発生時の処理)を実行する。この例外処理部14が生成する例外オブジェクトには、例外クラスのクラス名のインスタンス、例外ハンドラに基づき実行された例外のメッセージのインスタンス、プログラムの実行過程を記録したスタックトレースのインスタンスが含まれる。   When an exception (an unexpected event (error: failure) during program execution) occurs, the exception processing unit 14 generates an exception object and executes an exception handler (processing when an exception occurs). The exception object generated by the exception processing unit 14 includes an instance of the class name of the exception class, an instance of an exception message executed based on the exception handler, and an instance of a stack trace that records the program execution process.

SIPサーブレットコンテナ管理情報100には、通信管理部12の制御により、SIPサーブレットコンテナ10が生成した各SIPサーブレット20に関する情報が記憶される。   The SIP servlet container management information 100 stores information on each SIP servlet 20 generated by the SIP servlet container 10 under the control of the communication management unit 12.

図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 SIP servlet 20 stored in the SIP servlet container management information 100.
As shown in FIG. 2, the SIP servlet container management information 100 includes a SIP servlet instance identifier 101, provided service information 102, subscriber type (origin / departure) 103, subscription service information 104, and communication message information 105. . The SIP servlet container management information 100 is stored in a memory unit (not shown).

SIPサーブレットインスタンス識別子101には、SIPサーブレット生成部11が生成したSIPサーブレット20毎に固有な識別子が記憶される。なお、SIPサーブレット生成部11が生成するSIPサーブレット20は、例えば、同じ発信元から同じアプリケーションのサービス提供を要求するSIPメッセージを別時刻に受信した場合であれば、それぞれ別のサービス要求として別々のSIPサーブレット20が生成され、別のSIPサーブレットインスタンス識別子101が付される。   The SIP servlet instance identifier 101 stores a unique identifier for each SIP servlet 20 generated by the SIP servlet generation unit 11. Note that the SIP servlet 20 generated by the SIP servlet generation unit 11 is different from each other as a separate service request if, for example, SIP messages requesting service provision of the same application are received from different sources at different times. A SIP servlet 20 is generated and attached with another SIP servlet instance identifier 101.

提供サービス情報102には、当該SIPサーブレット20で提供するサービスの識別情報や、そのサービスを利用する発信側や着信側の端末等の電話番号、IPアドレス等の情報が格納される提供サービス情報インスタンスへの参照情報(以下、参照情報を、図2および図3において「参照」と記載する)が記憶される。なお、この提供サービス情報インスタンスは、SIPサーブレット20がSIPサーブレット生成部11により生成される毎に、通信管理部12により管理情報オブジェクトのインスタンスとして生成されるものである。   The provided service information 102 stores information such as identification information of a service provided by the SIP servlet 20, information such as a telephone number and an IP address of a caller or a callee that uses the service, and the like. Reference information (hereinafter referred to as “reference” in FIGS. 2 and 3) is stored. This provided service information instance is generated as an instance of a management information object by the communication management unit 12 every time the SIP servlet 20 is generated by the SIP servlet generation unit 11.

加入者種別(発/着)103には、当該SIPサーブレット20が発信側または着信側のどちらからの要求により生成されたかが記憶される。
例えば、起動されるサービスが「短縮ダイヤル」であれば、この加入者種別(発/着)103に、発信側からの要求によるサービスとして「発」が記憶される。また、起動されるサービスが「キャッチホン」であれば、加入者種別(発/着)103に、着信側からの要求によるサービスとして「着」が記憶される。
The subscriber type (source / receiver) 103 stores whether the SIP servlet 20 is generated by a request from the transmission side or the reception side.
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 subscription service information 104, reference information to a subscription service information instance in which information such as a service subscribed by a subscriber who starts the SIP servlet 20 is stored is stored.
The SIP server 1 includes a subscriber information DB (DataBase) that stores information on services to which each subscriber subscribes in a storage unit (not shown) or the like. Then, the communication management unit 12 starts the SIP servlet 20 from the subscriber information DB when the SIP servlet generation unit 11 generates the SIP servlet 20 based on the SIP message from the subscriber's SIP terminal or the like. Information on services and the like subscribed by subscribers who have subscribed is acquired, and a subscription service information instance is generated and stored in a memory unit (not shown).

通信電文情報105には、当該SIPサーブレット20で処理している通信電文(パケット)に関するヘッダ情報、本文(ボディ)等が格納される通信電文インスタンスへの参照情報が記憶される。
なお、この通信電文インスタンスは、通信管理部12が、当該SIPサーブレット20と、他のSIPサーバやクライアント(SIP端末)等の外部装置との間で、パケット等の通信電文が送受信される毎に、通信管理部12により生成され、メモリ部(不図示)に記憶される。
In the communication message information 105, header information related to a communication message (packet) processed by the SIP servlet 20, reference information to a communication message instance in which a body (body) and the like are stored is stored.
This communication message instance is transmitted each time the communication management unit 12 transmits / receives a communication message such as a packet between the SIP servlet 20 and an external device such as another SIP server or client (SIP terminal). Are generated by the communication management unit 12 and stored in a memory unit (not shown).

なお、提供サービス情報102、加入サービス情報104および通信電文情報105には、通信管理部12が生成した各インスタンスの参照情報として記憶されるものとしたが、各インスタンスの実体(データ)が格納されるようにしてもよい。   The provided service information 102, the subscription service information 104, and the communication message information 105 are stored as reference information for each instance generated by the communication management unit 12, but the instances (data) of each instance are stored. You may make it do.

≪SIPサーブレット≫
図1に戻り、SIPサーブレット20は、SIPサーブレットコンテナ10により、1つのサービスの提供を要求するSIPメッセージをSIPサーブレットコンテナ10が受信する毎に作成されるAPIである。
このSIPサーブレット20は、APIとして機能するためのサービス処理部21と、情報複製部22とを備える。
<< SIP servlet >>
Returning to FIG. 1, the SIP servlet 20 is an API created every time the SIP servlet container 10 receives an SIP message requesting provision of one service by the SIP servlet container 10.
The SIP servlet 20 includes a service processing unit 21 for functioning as an API and an information copying unit 22.

サービス処理部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 information copying unit 22 executes a process of copying the data managed by the SIP servlet 20 to another SIP server other than itself, in case a failure occurs in the SIP server 1 while providing the communication service. Specifically, the information duplication unit 22 calls an API (setAttribute) for duplicating information (possessed data) regarding the communication service being provided, and provides it to other SIP servers via the SIP servlet container 10. Sends information (possession data) about the current communication service. The information duplicating unit 22 executes the setAttibute API calling process at a predetermined time interval, for example.

なお、この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 information duplicating unit 22 generates instances of “name” and “attribute” that are parameters of the setAttribute API as “name instance” and “attribute instance”, and stores them in a memory unit (not shown).

また、情報複製部22は、setAttribute APIを呼び出す処理に関して、他のSIPサーバとの間で、「Response」クラスのsendメソッドを実行し情報の送信を行った場合には、そのsendメソッドのパラメータについてのインスタンスを生成し、不図示のメモリ部内に記憶する。なお、このsendメソッドは、setAttribute APIにおいてSIPサーブレット20が管理する情報を送信するために必要な中間処理に関する情報の送信に用いられる。   In addition, regarding the process of calling the setAttribute API, the information duplicating unit 22 executes the send method of the “Response” class with another SIP server and transmits information about the parameters of the send method. Are generated and stored in a memory unit (not shown). The send method is used to transmit information related to intermediate processing necessary for transmitting information managed by the SIP servlet 20 in the setAttribute API.

≪障害解析情報収集機能≫
障害解析情報収集機能30は、SIPサーバ1内で障害が発生した場合に、その障害解析のために必要となる情報(障害解析情報)を収集して出力する。この障害解析情報収集機能30は、図1に示すように、障害解析情報収集部(障害解析情報収集手段)31と、障害解析情報管理部(障害解析情報管理手段)32と、障害解析情報出力部(障害解析情報出力手段)33と、不図示のメモリ部内に記憶される障害解析管理テーブル300とを含んで構成される。
≪Failure analysis information collection function≫
The failure analysis information collection function 30 collects and outputs information necessary for failure analysis (failure analysis information) when a failure occurs in the SIP server 1. As shown in FIG. 1, the failure analysis information collection function 30 includes a failure analysis information collection unit (failure analysis information collection unit) 31, a failure analysis information management unit (failure analysis information management unit) 32, and a failure analysis information output. Unit (failure analysis information output means) 33 and a failure analysis management table 300 stored in a memory unit (not shown).

障害解析情報収集部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 information collection unit 31 is provided in the SIP servlet container 10 and collects information (failure analysis information) necessary for analyzing a failure occurring in the SIP server 1 from the SIP servlet container 10.
Specifically, the failure analysis information collection unit 31 generates a setAttribute API from the SIP servlet 20 when a SIP servlet is generated by the SIP servlet generation unit 11 in the SIP servlet container 10 (when an INVITE message is received from another server or client). Information required for failure analysis is collected when an exception is processed by the exception processing unit 14, when a SIP servlet is deleted by the SIP servlet deletion unit 13 (when a response to the doBye message is received). The management unit 32 is notified.

以下、さらに詳細に説明する。
障害解析情報収集部(障害解析情報収集手段)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 communication management unit 12 of the SIP servlet container 10 includes information on each data item of the SIP servlet container management information 100 (see FIG. 2) regarding the generated SIP servlet 20. Is stored, the reference information to the information related to one SIP servlet 20 stored in the SIP servlet container management information 100 (that is, the management information of the SIP servlet 20 for one line (one record)) is collected, and the failure analysis is performed. The information management unit 32 is notified. Note that reference information for one line (one record) of the SIP servlet container management information 100 output here is referred to as “SIP servlet generation information 310”.

また、障害解析情報収集部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 information collection unit 31 collects information (setAttribute API call information 320 described later) regarding the setAttribute API call from the SIP servlet 20. Specifically, the failure analysis information collection unit 31 (1) the time when the setAttribute API was issued, reference information to the instance of the setAttribute API call parameter (name, attribute), and (2) the SIP servlet 20 Reference information to the instance of the parameter of the send method in the Response class related to information transmitted / received to / from other servers, clients, and the like, and the time when the communication message is issued by the send method are collected, and the setAttribute API call information 320 To the failure analysis information management unit 32.

さらに、障害解析情報収集部31は、SIPサーバ1内で障害(例外)が発生した場合に、例外処理部14が生成した例外オブジェクトにおいて、例外クラスのクラス名のインスタンスへの参照情報、例外のメッセージのインスタンスへの参照情報、および、スタックトレースのインスタンスへの参照情報を収集し、例外情報330として、障害解析情報管理部32に通知する。   Further, the failure analysis information collection unit 31 includes, in the exception object generated by the exception processing unit 14 when a failure (exception) occurs in the SIP server 1, reference information to the instance of the class name of the exception class, the exception Reference information to the instance of the message and reference information to the instance of the stack trace are collected and notified to the failure analysis information management unit 32 as exception information 330.

また、障害解析情報収集部31は、SIPサーブレット削除部13が、SIPサーブレット20を削除した旨の情報を収集する。そして、障害解析情報収集部31は、SIPサーブレットコンテナ管理情報100に記憶された、その削除されたSIPサーブレット20に関する情報(1行(1レコード)分のSIPサーブレット20の管理情報)への参照情報(SIPサーブレット生成情報310)を含むSIPサーブレット削除情報を生成して障害解析情報管理部32に通知する。   Further, the failure analysis information collection unit 31 collects information indicating that the SIP servlet deletion unit 13 has deleted the SIP servlet 20. Then, the failure analysis information collecting unit 31 refers to the information related to the deleted SIP servlet 20 (management information of the SIP servlet 20 for one line (one record)) stored in the SIP servlet container management information 100. SIP servlet deletion information including (SIP servlet generation information 310) is generated and notified to the failure analysis information management unit 32.

障害解析情報管理部(障害解析情報管理手段)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 information collection unit 31, and creates a failure analysis management table 300 for each generated SIP servlet 20. (See FIG. 3B described later).
Specifically, the failure analysis information management unit 32 acquires the SIP servlet generation information 310 from the failure analysis information collection unit 31 and stores it in the failure analysis management table 300 when the SIP servlet 20 is generated. The failure analysis information management unit 32 acquires the setAttribute API call information 320 from the failure analysis information collection unit 31 and stores it in the failure analysis management table 300 when calling the setAttribute API. Further, the failure analysis information management unit 32 acquires the exception information 330 from the failure analysis information collection unit 31 and stores the exception information 330 in the failure analysis management table 300 when a failure (exception) occurs. The failure analysis information output unit 33 is notified. Further, when the SIP servlet 20 is deleted, the failure analysis information management unit 32 acquires the SIP servlet deletion information from the failure analysis information collection unit 31 and deletes information on the corresponding SIP servlet 20 in the failure analysis management table 300.

図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 container management information 100 shown in FIG. 2, and FIG. An analysis management table 300 is shown. The failure analysis management table 300 is stored in a memory unit (not shown).

図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 servlet generation information 310, setAttribute API call information 320, and exception information 330. As described above, the SIP servlet generation information 310 is information (one line (one line)) stored in the SIP servlet container management information 100 (FIGS. 2 and 3A) managed by the SIP servlet container 10. 1 record) worth of SIP servlet 20 management information). The failure analysis management table 300 stores setAttribute API call information 320 and exception information 330 in association with the SIP servlet generation information 310 generated for each SIP servlet 20.

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 information 320, setAttribute related information 321 and send related information 322 are stored. The setAttribute related information 321 stores the time and reference information to the instance of the setAttribute API call parameter (name, attribute) every time the setAttribute API is issued. Also, in the send related information 322, each time a communication message is issued by the send method, the time and a reference to the instance of the parameter of the send method (indicated as “Response (parameter)” in FIG. 3B) Information is stored.

例外情報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 exception processing unit 14 of the SIP servlet container 10. Reference information to is stored.

図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 information management unit 32 that the exception information 330 is stored in the failure analysis management table 300, the failure analysis management unit Referring to the table 300 (FIG. 3B), the failure analysis information related to the SIP servlet 20 is extracted and output. Here, the failure analysis information is information including SIP servlet generation information 310, setAttibute API call information 320, and exception information 330 stored as information related to one SIP servlet 20 in the failure analysis management table 300. .

なお、このSIPサーバ1をプログラム実行処理により実現するため、記憶部(不図示)には、SIPサーバ1の各処理部(SIPサーブレットコンテナ10のSIPサーブレット生成部11〜例外処理部14、SIPサーブレット20のサービス処理部21および情報複製部22、障害解析情報収集機能30の障害解析情報収集部31〜障害解析情報出力部33)により構成される制御部(不図示)の機能を実現するためのプログラム(障害解析情報収集プログラムを含む)が格納される。そして、制御部は、記憶部に記憶されたそのプログラムを、CPU(不図示)がRAM等で実現されるメモリ部(不図示)に展開し実行することで実現される。   In order to realize the SIP server 1 by program execution processing, the storage unit (not shown) includes each processing unit of the SIP server 1 (SIP servlet generation unit 11 to exception processing unit 14 of the SIP servlet container 10, SIP servlet). 20 for realizing a function of a control unit (not shown) constituted by the service processing unit 21 and the information duplicating unit 22 and the failure analysis information collecting unit 31 to the failure analysis information output unit 33 of the failure analysis information collecting function 30. Stores programs (including failure analysis information collection programs). And a control part is implement | achieved when CPU (not shown) expand | deploys and runs the program memorize | stored in the memory | storage part on the memory part (not shown) implement | achieved by RAM etc.

<処理の流れ>
次に、図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 SIP server 1 including the failure analysis information collection function 30 according to the present embodiment will be described.
In FIG. 4, the failure analysis information collecting process performed when the SIP server 1 is normal will be described. In FIG. 5, a failure analysis information collecting process when a failure (exception) occurs in the SIP server 1 will be described.

≪正常時の処理≫
図4は、本実施形態に係る障害解析情報収集機能30を備えるSIPサーバ1の正常時の処理の流れを示すシーケンス図である。
<Normal processing>
FIG. 4 is a sequence diagram showing a normal processing flow of the SIP server 1 including the failure analysis information collection function 30 according to the present embodiment.

(SIPサーブレット生成)
まず、SIPサーバ1のSIPサーブレットコンテナ10は、SIP端末5等からSIPメッセージ(INVITE等)を受け付ける(ステップS10)。
(SIP servlet generation)
First, the SIP servlet container 10 of the SIP server 1 accepts a SIP message (INVITE or the like) from the SIP terminal 5 or the like (step S10).

そして、SIPサーブレットコンテナ10のSIPサーブレット生成部11が、受け付けたSIPメッセージ(INVITE等)に対応したSIPサーブレット20を生成する(ステップS11)。そして、通信管理部12が、生成したSIPサーブレット20に関する管理情報オブジェクトを生成しメモリ部に記憶した上で、SIPサーブレットコンテナ管理情報100(図2参照)の各データ項目に、当該SIPサーブレット20の各情報を記憶する。   Then, the SIP servlet generation unit 11 of the SIP servlet container 10 generates the SIP servlet 20 corresponding to the received SIP message (INVITE or the like) (step S11). Then, the communication management unit 12 generates a management information object related to the generated SIP servlet 20 and stores it in the memory unit. Then, in each data item of the SIP servlet container management information 100 (see FIG. 2), Each information is stored.

続いて、障害解析情報収集部31は、新たに生成されたSIPサーブレット20について、SIPサーブレットコンテナ管理情報100に記憶された1つのSIPサーブレット20に関する情報(1行(1レコード)分のSIPサーブレット20の管理情報)への参照情報をSIPサーブレット生成情報310として収集する(ステップS12)。
そして、障害解析情報収集部31は、収集したSIPサーブレット生成情報310を障害解析情報管理部32に通知する(ステップS13)。
Subsequently, the failure analysis information collection unit 31 relates to one SIP servlet 20 stored in the SIP servlet container management information 100 for the newly generated SIP servlet 20 (one line (one record) worth of the SIP servlet 20). (Reference information) is collected as SIP servlet generation information 310 (step S12).
Then, the failure analysis information collection unit 31 notifies the failure analysis information management unit 32 of the collected SIP servlet generation information 310 (step S13).

次に、障害解析情報管理部32は、障害解析管理テーブル300(図3(b)参照)に、新たなレコードを作成し、受信したSIPサーブレット生成情報310を記憶する(ステップS14)。   Next, the failure analysis information management unit 32 creates a new record in the failure analysis management table 300 (see FIG. 3B), and stores the received SIP servlet generation information 310 (step S14).

続いて、SIPサーブレットコンテナ10が、生成したSIPサーブレット20の「doInvite」を呼び出し(ステップS15)、アプリケーションを起動して処理を実行する。なお、以降のアプリケーション毎に固有の処理については、説明を省略する。   Subsequently, the SIP servlet container 10 calls “doInvite” of the generated SIP servlet 20 (step S15), starts an application, and executes processing. Note that the description of processes unique to each subsequent application is omitted.

(setAttribute API呼び出し)
次に、SIPサーブレット20の情報複製部22は、SIPサーブレット20が保持する情報を他のSIPサーバ1に複製するため、setAttribute APIを呼び出す(ステップS20)。
(SetAttribute API call)
Next, the information copying unit 22 of the SIP servlet 20 calls the setAttribute API in order to copy the information held by the SIP servlet 20 to another SIP server 1 (step S20).

続いて、障害解析情報収集部31は、setAttribute APIの呼び出しに関連する情報(図3(b)のsetAttribute関連情報321およびsend関連情報322)を、setAttribute API呼び出し情報320として収集する(ステップS21)。そして、障害解析情報収集部31は、その収集したsetAttribute API呼び出し情報320を、SIPサーブレットコンテナ10に出力する(ステップS22)。   Subsequently, the failure analysis information collection unit 31 collects information related to the setAttribute API call (setAttribute related information 321 and send related information 322 in FIG. 3B) as setAttribute API call information 320 (step S21). . Then, the failure analysis information collection unit 31 outputs the collected setAttribute API call information 320 to the SIP servlet container 10 (step S22).

また、障害解析情報収集部31は、その収集したsetAttribute API呼び出し情報320を、障害解析情報管理部32に通知する(ステップS23)。   The failure analysis information collection unit 31 notifies the collected setAttribute API call information 320 to the failure analysis information management unit 32 (step S23).

次に、障害解析情報管理部32は、該当するSIPサーブレット20(SIPサーブレット生成情報310)に対応付けた情報として、障害解析管理テーブル300(図3(b)参照)にsetAttribute API呼び出し情報320を記憶する(ステップS24)。
なお、このsetAttribute API呼び出し情報320を記憶する処理は、SIPサーブレット20によって、例えば、所定の時間間隔でsetAttribute APIが呼び出される毎に実行される。
Next, the failure analysis information management unit 32 sets the setAttribute API call information 320 in the failure analysis management table 300 (see FIG. 3B) as information associated with the corresponding SIP servlet 20 (SIP servlet generation information 310). Store (step S24).
The processing for storing the setAttribute API call information 320 is executed by the SIP servlet 20 every time the setAttribute API is called at a predetermined time interval, for example.

(SIPサーブレット削除)
次に、SIPサーブレットコンテナ10は、SIPサーブレット20から「doBye」の応答を受信する(ステップS30)。
(Delete SIP Servlet)
Next, the SIP servlet container 10 receives a “doBye” response from the SIP servlet 20 (step S30).

そして、SIPサーブレットコンテナ10のSIPサーブレット削除部13が、受信した「doBye」メッセージの応答に示されるSIPサーブレット20を削除する(ステップS31)。次に、通信管理部12は、SIPサーブレットコンテナ管理情報100(図2参照)から、削除したSIPサーブレット20に関する各情報を、削除する。なお、管理情報オブジェクトの実体は、通信管理部12が、例えば、Javaで規定されるGC(Garbage Collection:ガーベジ・コレクション)の処理により削除する。   Then, the SIP servlet deletion unit 13 of the SIP servlet container 10 deletes the SIP servlet 20 indicated in the response to the received “doBye” message (step S31). Next, the communication management unit 12 deletes each piece of information related to the deleted SIP servlet 20 from the SIP servlet container management information 100 (see FIG. 2). The entity of the management information object is deleted by the communication management unit 12 by, for example, a GC (Garbage Collection) process defined by Java.

続いて、障害解析情報収集部31は、SIPサーブレット削除部13が、SIPサーブレット20を削除した旨の情報を収集する(ステップS32)。そして、障害解析情報収集部31は、SIPサーブレットコンテナ管理情報100に記憶された、その削除されたSIPサーブレット20に関する情報(1行分のSIPサーブレット20の管理情報)への参照情報(SIPサーブレット生成情報310)を含むSIPサーブレット削除情報を生成して障害解析情報管理部32に通知する(ステップS33)。   Subsequently, the failure analysis information collection unit 31 collects information indicating that the SIP servlet deletion unit 13 has deleted the SIP servlet 20 (step S32). Then, the failure analysis information collection unit 31 stores reference information (SIP servlet generation) for information regarding the deleted SIP servlet 20 (management information for one line of the SIP servlet 20) stored in the SIP servlet container management information 100. SIP servlet deletion information including information 310) is generated and notified to the failure analysis information management unit 32 (step S33).

次に、障害解析情報管理部32は、障害解析管理テーブル300(図3(b))に記憶されたSIPサーブレット20毎の障害解析情報のうち、SIPサーブレット削除情報に示されるSIPサーブレット生成情報310に対応するSIPサーブレット20の情報(障害解析情報)を削除する(ステップS34)。   Next, the failure analysis information management unit 32 includes the SIP servlet generation information 310 indicated in the SIP servlet deletion information among the failure analysis information for each SIP servlet 20 stored in the failure analysis management table 300 (FIG. 3B). The information (failure analysis information) of the SIP servlet 20 corresponding to is deleted (step S34).

≪障害発生時の処理≫
図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 SIP server 1 including the failure analysis information collection function 30 according to the present embodiment.
In FIG. 5, the SIP servlet generation information 310 and the setAttribute API call information 320 are stored in the failure analysis management table 300 (see FIG. 3B) by the processing of steps S10 to S15 and steps S20 to S24 shown in FIG. It is assumed that it has already been stored.

まず、SIPサーブレットコンテナ10の例外処理部14は、障害(例外)が発生すると、例外オブジェクトを生成し(ステップS40)、例外ハンドラ(例外発生時の処理)を実行する。その際に、例外処理部14は、例外オブジェクトとして、例外クラスのクラス名のインスタンス、例外ハンドラに基づき実行された例外のメッセージのインスタンス、スタックトレースのインスタンスを生成する。   First, when a failure (exception) occurs, the exception processing unit 14 of the SIP servlet container 10 generates an exception object (step S40) and executes an exception handler (processing when an exception occurs). At that time, the exception processing unit 14 generates, as exception objects, an instance of the class name of the exception class, an instance of the exception message executed based on the exception handler, and an instance of the stack trace.

次に、障害解析情報収集部31は、例外処理部14が例外オブジェクトを生成するか否かを監視しており、例外処理部14が例外オブジェクトを生成すると、例外クラスのクラス名のインスタンスへの参照情報、例外のメッセージのインスタンスへの参照情報、および、スタックトレースのインスタンスへの参照情報を、例外情報330として収集する(ステップS41)。そして、障害解析情報収集部31は、その収集した例外情報330を、障害解析情報管理部32に通知する(ステップS42)。   Next, the failure analysis information collection unit 31 monitors whether or not the exception processing unit 14 generates an exception object. When the exception processing unit 14 generates an exception object, the failure analysis information collection unit 31 converts the exception class to the instance of the class name. The reference information, the reference information to the instance of the exception message, and the reference information to the stack trace instance are collected as exception information 330 (step S41). Then, the failure analysis information collection unit 31 notifies the failure analysis information management unit 32 of the collected exception information 330 (step S42).

次に、障害解析情報管理部32は、該当するSIPサーブレット20(SIPサーブレット生成情報310)に対応付けた情報として、障害解析管理テーブル300(図3(b)参照)に例外情報330を記憶する(ステップS43)。そして、障害解析情報管理部32は、障害解析管理テーブル300に例外情報330を記憶した旨を障害解析情報出力部33に通知する(ステップS44)。   Next, the failure analysis information management unit 32 stores the exception information 330 in the failure analysis management table 300 (see FIG. 3B) as information associated with the corresponding SIP servlet 20 (SIP servlet generation information 310). (Step S43). Then, the failure analysis information management unit 32 notifies the failure analysis information output unit 33 that the exception information 330 is stored in the failure analysis management table 300 (step S44).

続いて、障害解析情報出力部33は、当該例外情報330が通知されたSIPサーブレット20に関する障害解析情報を、障害解析管理テーブル300から抽出して出力する(ステップS45)。   Subsequently, the failure analysis information output unit 33 extracts the failure analysis information related to the SIP servlet 20 notified of the exception information 330 from the failure analysis management table 300 and outputs it (step S45).

なお、障害解析情報出力部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 container management information 100, the failure analysis management table 300, etc.) related to the SIP servlet 20 is not deleted until the output of the failure analysis information by the failure analysis information output unit 33 is completed. Each related processing unit performs exclusive control.
Further, after the output of the failure analysis information by the failure analysis information output unit 33 is completed, the SIP servlet container 10 may delete the SIP servlet 20 in which a failure (exception) has occurred. In that case, by performing processing similar to the processing of steps S31 to S34 shown in FIG. 4, from the SIP servlet container management information 100 (see FIG. 2) and the failure analysis management table 300 (see FIG. 3B), Information about the SIP servlet 20 can be deleted.

以上説明したように、本実施形態に係る障害解析情報収集プログラムにより実現される障害解析情報収集機能30を備えるSIPサーバ1によれば、既存のSIPサーブレットコンテナ10で管理される情報への参照情報を障害解析情報としてメモリに収集することにより、サービス提供時等においても、障害解析に必要な情報(障害解析情報)を、処理性能への影響を低減させて出力することができる。よって、障害発生時に、被疑箇所の詳細なログを出力するように通信プログラムを入れ替える必要がなく、通信サービス開発時のデバックおよび通信サービス提供時の障害解析にかかる時間を短縮することができる。   As described above, according to the SIP server 1 including the failure analysis information collection function 30 realized by the failure analysis information collection program according to the present embodiment, reference information to information managed by the existing SIP servlet container 10 Is collected in the memory as failure analysis information, information necessary for failure analysis (failure analysis information) can be output with reduced influence on processing performance even during service provision. 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.

<変形例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サーブレットの障害解析情報についても、障害解析情報の記憶に関するメモリ使用量を適正に維持した上で、障害解析に利用することができる。
<Modification 1>
In the processing by the SIP server 1 including the failure analysis information collection function 30 according to the present embodiment, only information related to the SIP servlet 20 that is providing a service (during activation of the SIP servlet 20) is targeted for failure analysis information. On the other hand, even after the communication for providing the service is completed, that is, after the generated SIP servlet 20 is deleted, the failure of each SIP servlet 20 stored in the failure analysis management table 300 (see FIG. 3B). The analysis information may be stored without being deleted, and the stored failure analysis information may be output in response to a request from an external device or the like. In this case, for example, when the number of pieces of failure analysis information of the SIP servlet 20 stored in the failure analysis management table 300 is set to an upper limit and the number reaches the upper limit (predetermined number), the failure analysis information management unit 32 The servlet 20 deletes the deleted failure analysis information. For example, the failure analysis information management unit 32 records the storage date and time of the failure analysis information in the failure analysis management table 300 and deletes the failure analysis information from which the SIP servlet 20 has been deleted. You may delete it at random.
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が、その障害解析情報を出力するようにする。
このようにすることで、障害発生の条件が分かっているものに関する障害解析を効率化することができる。
<Modification 2>
In addition, the failure analysis information management unit 32 according to the present embodiment has the failure of the specific SIP servlet 20 stored in the failure analysis management table 300 (see FIG. 3B) even after the SIP servlet 20 is deleted. The analysis information may be stored without being selectively deleted.
For example, the failure analysis information management unit 32 determines whether any information that is a basis of the reference information stored as the failure analysis information includes information that matches a predetermined exception occurrence condition. Then, the failure analysis information management unit 32 knows in advance that an exception occurrence rate is high when a predetermined exception occurrence condition (for example, a specific destination telephone number or a communication service related to a specific service is used). If there is no failure analysis information that does not contain information that matches the destination telephone number or service), the failure analysis information that contains information that matches the specified exception occurrence condition is not deleted. It continues to be stored in the failure analysis management table 300. In response to a request from an external device or the like, the failure analysis information output unit 33 outputs the failure analysis information.
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とを連携させたサービスも提供可能である。
<Modification 3>
In the present embodiment, the failure analysis information collection program for collecting failure analysis information in the communication service provided by the SIP servlet 20 generated by the SIP servlet container 10 has been described. On the other hand, an HTTP (HyperText Transfer Protocol) servlet is defined as a specification that is a Java standard and is similar to a SIP servlet. When the Web server or the like receives an HTTP request (for example, a GET request), the HTTP servlet container generates an HTTP servlet. Then, the generated HTTP servlet executes a communication service such as creating a Web page. Since the HTTP servlet and the SIP servlet 20 have a lot in common in configuration and processing, it is possible to provide a service in which both servlets are mounted on one server and HTTP and SIP are linked.

この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 SIP servlet 20.
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 SYMBOLS 1 SIP server 10 SIP servlet container 11 SIP servlet production | generation part 12 Communication management part 13 SIP servlet deletion part 14 Exception processing part 20 SIP servlet 21 Service processing part 22 Information replication part 30 Fault analysis information collection function 31 Fault analysis information collection part (fault Analysis information collection means)
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 container management information 300 Failure analysis management table

Claims (5)

SIPサーブレットコンテナがSIPサーブレットを生成することにより通信サービスを提供する際に発生する障害の障害解析のための情報を収集する障害解析情報収集プログラムであって、
前記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サーブレットコンテナ管理情報への参照情報を収集し、
前記生成された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
JP2012157801A 2012-07-13 2012-07-13 Failure analysis information collection program Expired - Fee Related JP5894512B2 (en)

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)

* Cited by examiner, † Cited by third party
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

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