JP5871499B2 - COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM - Google Patents
COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM Download PDFInfo
- Publication number
- JP5871499B2 JP5871499B2 JP2011150340A JP2011150340A JP5871499B2 JP 5871499 B2 JP5871499 B2 JP 5871499B2 JP 2011150340 A JP2011150340 A JP 2011150340A JP 2011150340 A JP2011150340 A JP 2011150340A JP 5871499 B2 JP5871499 B2 JP 5871499B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- error
- communication control
- processing
- importance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Debugging And Monitoring (AREA)
Description
本発明は、通信制御装置、通信制御システム、通信制御方法およびプログラムに関する。 The present invention relates to a communication control device, a communication control system, a communication control method, and a program.
コンピュータ・ノード上の複数のソフトウェアコンポーネントが相互に通信しながら動作するプロセス間通信において、サブルーチンコール(関数呼び出し)のようにしてデータの通信が可能な手法がある(例えば、SunRPC)。この手法によれば、プロセス間やノード間通信を用いて別プロセス(同じノード上でも別のノード上でもかまわない)とデータをやりとりすることができる。 In inter-process communication in which a plurality of software components on a computer node operate while communicating with each other, there is a technique capable of data communication like a subroutine call (function call) (for example, SunRPC). According to this method, data can be exchanged with another process (which may be on the same node or another node) using inter-process or inter-node communication.
一方、複数のプロセス、複数のコンピュータ・ノードにプロセス内の関数呼び出しを模擬するソフトウェア部品を配置し、ソフトウェア部品を再利用することによりソフトウェア開発効率の向上、品質の向上が目指されている。 On the other hand, software components that simulate function calls in a process are arranged in a plurality of processes and a plurality of computer nodes, and the software components are reused to improve software development efficiency and quality.
しかし、プロセス内の関数呼び出しと同一のインターフェースを用いて、プロセス間あるいはノード間の通信(遠隔手続き)を行う場合、通信エラーが発生する可能性がある。プロセス内の関数を呼び出すように記述されたソフトウェアは、遠隔手続きにおける通信エラーを直接検出することができない。例えば、関数の戻り値がvoidであったり、関数の実行結果を表す値のみを返す仕様等、呼び出された関数自身がエラーを返した場合以外に、プロセス内の関数呼び出しの仕様では、呼び出しの失敗は想定されていないからである。 However, when performing communication (remote procedure) between processes or nodes using the same interface as the function call in the process, a communication error may occur. Software written to call functions in the process cannot directly detect communication errors in remote procedures. For example, in the specification of the function call in the process, except for the case where the called function itself returns an error, such as a specification in which the return value of the function is void or a value in which only the value indicating the execution result of the function is returned. This is because failure is not assumed.
この問題を解決するため、例外ハンドラやコールバックハンドラ(以下、総称して「ハンドラ」と呼ぶ)を使った方法が利用されている(Java(登録商標)言語におけるcatch構文、C言語におけるシグナルハンドラなどが相当する)。この方法では、関数呼び出しの仕様はエラーを考慮しない仕様のまま、呼び出し側プロセス内にエラー処理を行うためのスレッドを用意する。同時に、通信エラーを検出するとこのスレッドにエラー処理あるいはエラー復帰のための特殊な関数を実行させることによって、関数の仕様には影響せずに通信エラーの検出と対応を行うものである。 In order to solve this problem, methods using exception handlers and callback handlers (hereinafter collectively referred to as “handlers”) are used (catch syntax in Java (registered trademark) language, signal handler in C language). Etc.). In this method, a thread for performing error processing is prepared in the calling process while the specification of the function call does not consider the error. At the same time, when a communication error is detected, a special function for error processing or error recovery is executed by this thread, thereby detecting and responding to the communication error without affecting the function specification.
ハンドラを使用しないエラー処理技術に関しては、先行技術として特許文献1や特許文献2などが提案されている。
Regarding error processing techniques that do not use handlers,
特許文献1には、複数のプロセスを実行するシステムにおいて、各プロセスに予めエラー検証のための検証プログラムコードを付加しておく構成が開示されている。そして、通信エラーなどシステム異常が発生したことを検証プログラムコードによって検出し、システム復旧を行う手法が開示されている。特許文献1は、特別に付与されたプログラムコードによってエラーの検出を行うため、関数戻り値の仕様などは通信エラーの発生検出を意図したものではない。 Patent Document 1 discloses a configuration in which a verification program code for error verification is added to each process in advance in a system that executes a plurality of processes. A method is disclosed in which a system error such as a communication error is detected by a verification program code and system recovery is performed. Since Patent Document 1 detects an error using a specially assigned program code, the specification of the function return value is not intended to detect the occurrence of a communication error.
特許文献2は、関数のリモート呼び出しにおいてクライアント側にタイムアウト機構を設けることにより、サーバ側からクライアント側への通信におけるエラーを検出する構成が開示されている。ここで、タイムアウト機構の実装されるクライアント側とは、リモート関数呼び出し機構自体を指しており、関数を呼び出す部分の実装にエラー検出機構が含まれるものではない。
ハンドラを用いたエラー検出手法では、プロセス毎にエラー検出部を実装する必要がある。プロセス内で関数呼び出しを行っていたソフトウェアをそのまま遠隔手続きを行うプログラムとして再利用し、開発効率を向上させようとする目的に鑑みると、プロセス毎にコードの修正量が多くなってしまい望ましくない。プログラムコードの修正量を減らす観点からは、遠隔手続き呼び出しライブラリにエラー検出部を実装する手法も考えられる。しかしこの手法は、遠隔手続き呼び出しライブラリにエラー検出機能、およびエラーからの復帰、エラー処理機能を実装することになる。エラー検出機能・エラー処理機能は、一般的に、ソフトウェアシステムが動作するハードウェアに依存するものである。ハードウェアへの依存の強いソフトウェアをライブラリ内に実装した場合、同ライブラリを他のハードウェアで動作するシステムに移植する際には、ハードウェアへの依存性の観点から汎用性が減ずるという問題がある。 In the error detection method using a handler, it is necessary to implement an error detection unit for each process. In view of the purpose of improving the development efficiency by reusing the software that has made a function call in the process as it is as a program for performing a remote procedure, it is not desirable because the amount of code correction increases for each process. From the viewpoint of reducing the amount of program code correction, a method of implementing an error detection unit in the remote procedure call library is also conceivable. However, this method implements an error detection function, return from error, and error handling function in the remote procedure call library. The error detection function / error processing function generally depends on the hardware on which the software system operates. When software that strongly depends on hardware is implemented in a library, when porting the library to a system that operates on other hardware, there is a problem that versatility is reduced from the viewpoint of dependency on hardware. is there.
特許文献1では、各プロセスに予めエラー検証のための検証プログラムコードを付加しておくことが必要である。この検証プログラムコードは一般的にウォッチドッグ、ハートビートなどと呼ばれるものである。この手法では例外ハンドラやコールバックハンドラを用いる手法と同じくプロセス毎に例外処理を実装する必要がある。そのため、多数のプロセスから構成される分散システムにおいては実装しなければならないコードの量が多く開発効率の点で問題がある。 In Patent Document 1, it is necessary to add a verification program code for error verification to each process in advance. This verification program code is generally called a watchdog, a heartbeat or the like. In this method, it is necessary to implement exception handling for each process, as in the method using exception handlers and callback handlers. Therefore, in a distributed system composed of a large number of processes, there is a problem in terms of development efficiency because of the large amount of code that must be implemented.
特許文献2では、検出できる通信エラーがサーバ側からクライアント側への送信時のエラーに限られていること、また、タイムアウト機構をクライアント側に実装しなければいけない。そのため、特許文献1の手法と同じく実装コードの量が多いことから開発効率、またクライアント側からサーバ側へのエラーが検出できないことからエラー発生の補足性能の点で問題がある。
In
分散型のシステムではほとんどの場合、システムに複数プロセスで共有されるログシステムを有し、各プロセスはログシステムへの出力を行うログ出力機能を有している。一般的に、分散型のシステムでは複数のプロセスが協調してソフトウェアの機能を実現しており、ログをもとにシステムの動作やエラーの解析を行うためには、特定プロセスに属していない、システム全体で統一されたログが必要となる。このことが、ログシステムの存在する理由である。 In most cases, a distributed system has a log system shared by a plurality of processes in the system, and each process has a log output function for outputting to the log system. Generally, in a distributed system, multiple processes cooperate to realize software functions, and in order to analyze system operations and errors based on logs, they do not belong to a specific process. A unified log is required for the entire system. This is the reason why the log system exists.
本発明は、複数のプロセスで共有されるログ出力機能をエラー検出に利用した通信制御技術を提供することを目的とする。 An object of the present invention is to provide a communication control technique that uses a log output function shared by a plurality of processes for error detection.
上記の目的を達成する本発明の一つの側面にかかる通信制御装置は、
同一のプロセス内における複数のアプリケーション間の通信処理を、前記複数のアプリケーションの内の一つのアプリケーションと前記アプリケーションが存在するプロセスとは別の他のプロセスとの間の通信処理または前記アプリケーションが存在する装置とは別の他の装置との間の通信処理に変換し、変換した通信処理を行う通信手段と、
前記通信手段による前記通信処理の実行中において発生した通信エラーを検出するエラー検出手段と、
前記通信エラーの種別と、当該通信エラーの種別に対応した通信エラーの重要度と、を予め定めた通信エラーの種別と重要度との対応関係から識別する識別手段と、
前記識別手段によって識別された重要度が一定値以上であるとエラー処理を実行する例外処理手段と、
を備えることを特徴とする。
A communication control device according to one aspect of the present invention that achieves the above object is as follows:
A communication process between a plurality of applications in the same process, a communication process between one application of the plurality of applications and another process other than the process in which the application exists, or the application exists A communication means for converting into communication processing with another device different from the device, and performing the converted communication processing;
Error detection means for detecting a communication error that occurs during execution of the communication processing by the communication means;
Identifying means for identifying the type of the communication error and the importance of the communication error corresponding to the type of the communication error from the correspondence between the predetermined type of communication error and the degree of importance;
Exception processing means for executing error processing when the importance identified by the identification means is a certain value or more,
It is characterized by providing.
本発明によれば、ログ出力機能をエラー検出に利用した通信制御技術の提供が可能になる。 According to the present invention, it is possible to provide a communication control technique using a log output function for error detection.
ログ出力機能をエラー検出にも利用することにより、各プロセスにエラー検出部を実装する必要がなく、呼び出し側のコード修正量が少なくて済むため、ソフトウェアの再利用性を高め開発効率を向上させることが可能になる。 By using the log output function also for error detection, it is not necessary to install an error detection unit in each process, and the amount of code correction on the call side is small, improving software reusability and improving development efficiency. It becomes possible.
あるいは、エラー状態フラグを介して間接的に通信エラーの検出と通知を行うことにより、プロセス内の関数呼び出しを、特定のハードウェアの機能への依存の少ない、汎用的な遠隔呼び出し処理に適用することが可能になる。 Or, by detecting and notifying a communication error indirectly via an error status flag, the function call in the process is applied to general-purpose remote call processing that is less dependent on a specific hardware function. It becomes possible.
本発明は、同一プロセス内の通信を、プログラムコードの大幅な変更を伴わずにプロセス間あるいはノード間の通信に適用して、通信処理を行う技術を提供する。ここで、同一プロセス内の通信とは、例えば、一のアプリケーションから他のアプリケーションの関数を呼び出し、アプリケーション間で情報の送受信を行うための通信をいい、以下、この通信を関数呼び出しともいう。また、プロセス間あるいはノード間の通信とは、例えば、異なるプロセス間あるいは通信制御装置(ノード)間において、一方のアプリケーションから他方のアプリケーションの関数を呼び出し、相互に情報の送受信を行うための通信をいう。以下、この通信を遠隔呼び出しともいう。 The present invention provides a technique for performing communication processing by applying communication within the same process to communication between processes or between nodes without significant change in program code. Here, the communication within the same process means, for example, communication for calling a function of another application from one application and transmitting / receiving information between the applications, and hereinafter, this communication is also called a function call. In addition, communication between processes or between nodes means, for example, communication between different processes or between communication control devices (nodes) for calling functions of one application from another application and transmitting / receiving information to / from each other. Say. Hereinafter, this communication is also referred to as remote call.
本発明の実施形態にかかる通信制御装置の構成を図面の参照により説明する。 A configuration of a communication control apparatus according to an embodiment of the present invention will be described with reference to the drawings.
図1は通信制御システムを構成する通信制御装置の構成例を示す図である。通信制御システムを構成する通信制御装置(ノード01)101上に、CPU102、ネットワークコントローラ103およびメモリ104が配置されており、システムバス105によって相互に接続されている。メモリ104はCPU102の備えるメモリ保護機構によってプロセス毎に分割されている。通信制御装置(ノード01)101でプロセスA、プロセスBが動作している場合は、メモリ104内にプロセスAのメモリ空間106、プロセスBのメモリ空間107が存在する。
FIG. 1 is a diagram illustrating a configuration example of a communication control apparatus constituting a communication control system. A
また、これらに加えてメモリ104上には、ノード毎に唯一存在するエラー状態フラグ108、エラー通知部109、およびエラー処理を実行する例外処理部110が存在する。プロセスAのメモリ空間106内には、プロセスA上で動作するアプリケーション111およびアプリケーション111にリンクされる遠隔呼び出しライブラリ112が配置されている。同様にプロセスBのメモリ空間107内には、アプリケーション113およびアプリケーション113にリンクされる遠隔呼び出しライブラリ114が配置されている。これらはプロセス毎に配置されるものである。
In addition to these, on the memory 104, there are an
通信制御装置(ノード01)101は、ネットワークコントローラ103により、確立された通信路115を経由して、通信制御装置(ノード02)116と接続されている。通信制御装置(ノード02)116も通信制御装置(ノード01)101と同様の構成を有しており、通信制御装置(ノード01)101のプロセスA,Bは通信路115を経由して通信制御装置(ノード02)116のプロセスC、Dと通信可能である。
The communication control apparatus (node 01) 101 is connected to the communication control apparatus (node 02) 116 via the
図2は、図1における遠隔呼び出しライブラリ112の備える機能構成を説明する図である。通信制御装置(ノード01)101と通信制御装置(ノード02)116とを有するシステムにおいて、通信制御装置(ノード01)101においてプロセスAが動作しており、プロセスAのメモリ空間106上ではアプリケーション111が動作している。
FIG. 2 is a diagram for explaining a functional configuration of the
アプリケーション111は、同一のプロセスAのメモリ空間106内に存在する他のアプリケーションに属する関数を呼び出し、通信処理を行うようプログラムされている。遠隔呼び出しライブラリ112は、プロセスAのメモリ空間106内でアプリケーション111とリンクされている。
The
遠隔呼び出しライブラリ112は、通信処理を行う通信部206を備える。通信部206は、アプリケーション111からのプロセス内における関数の呼び出し処理(通信処理)を、他のプロセスとの間の通信処理または他の通信制御装置との間の通信処理、通信プロトコルに変換し、通信処理を行うことを特徴としている。通信部206は、例えば、アプリケーション111からのプロセス内における関数の呼び出し処理(サブルーチンコール)を、他のアプリケーション、他のプロセス間あるいは他のノード間との間の通信処理(遠隔呼び出し)に変換する。
The
アプリケーション111の通信相手となる他のアプリケーションは、アプリケーション111と同一のプロセスAのメモリ空間106内に配置されていてもよい。また、他のアプリケーションは、同一の通信制御装置(ノード01)101上、または、通信制御装置(ノード01)101と異なる別のノードである通信制御装置(ノード02)116上に配置されていてもよい。
Other applications that are communication partners of the
また、遠隔呼び出しライブラリ112は、通信に係るエラーを検出するエラー検出部207および、通信をはじめとするライブラリ自身の動作状態を出力するための情報記憶部208を備えている。本実施形態においては、情報記憶部208の情報記憶機能として記憶媒体にエラーログを出力する機能が実装されているものとする。ここで、記録媒体とは、磁気ディスク上の特定ファイルでも、メモリ上の特定の領域でもよく、ログ記録用の専用マシン上に確保された記憶領域であってもよい。
Further, the
遠隔呼び出しライブラリ112は、エラー検出部207によって通信エラーが検出され、情報記憶部208から出力されるログの種別を判定し、通信エラーの重要度を識別する記録情報識別部209を備える。エラー検出部207で通信エラーが検出され、情報記憶部208から通信エラーに係るエラーログが出力される際、記録情報識別部209は、例外処理部110に対して例外処理を促す重要な通信エラーであるか否かを判断する。
The
更に、遠隔呼び出しライブラリ112は、記録情報識別部209によって通信エラーが重要なものと判断された場合、エラー状態フラグ108を、非シグナル状態からシグナル状態とするフラグ設定部210を備えている。ここで、非シグナル状態とは、システムが正常動作をしていることを示し、シグナル状態とは、通信エラー状態の発生を示す。
Further, the
更に、通信制御装置(ノード01)101上には、エラー通知部109が設けられている。エラー通知部109は、フラグ設定部210によってエラー状態フラグ108がシグナル状態に変更された場合に、例外処理部110に対してエラーが起きたことを通知し、例外処理(エラー処理)の実行を促す。
Further, an
図3は、情報記憶部208から出力されるログの種別301と、ログの重要度のレベル302との対応関係を示す図である。通信エラーの種別(ログの種別)と、通信エラーの種別に対応した通信エラーの重要度を示すログレベルとの対応関係は、予め、通信制御装置のメモリ104または外部のハードディスク等に記憶しておくことが可能である。
FIG. 3 is a diagram illustrating a correspondence relationship between the
ログの重要度のレベル302とログの種別301とは、1対1に対応している。記録情報識別部209は、情報記憶部208から出力されるログの種別301を識別することにより、ログの種別に対応しているログの重要度のレベル302を判定することができる。本実施形態では、ログの重要度のレベル302の数値は、小さいほど、重要度が高いログであることを示している。すなわち、ログの重要度のレベル302(ログレベル)の「1」に対応するログ種別、LOG_FATAL303が最も重要度の高いログ種別になる。LOG_FATAL303は、例えば、ハードウェアエラー、オペレーティングシステムの内部エラーなど復帰不能な深刻なエラーの属性を表す。ログレベル「2」に対応するログ種別は、LOG_ERROR304であり、これは通信エラーなど処理の継続ができない重要なエラーを表す。ログレベル「3」に対応するログ種別は、LOG_WARNING305であり、処理のタイムアウトなど、処理の継続が可能な軽微な異常を表す。ログレベル「4」に対応するログ種別は、LOG_INFO306であり、システムの動作状態を予防的に知るための、正常状態でも出力されるログである。ログレベル「5」に対応するログの種別は、LOG_DEBUG307であり、システムのデバッグ時や障害解析時にのみ使用されるような、システムの詳細な内部動作状態を出力するためのログである。
The
記録情報識別部209は、これらのログレベルを利用して、フラグ設定部210を作動させるか否かの判定を行ない、判定結果によりフラグ設定部210を制御することが可能である。例えば、ログの種別として、LOG_FATAL(ログレベル1)またはLOG_ERROR(ログレベル2)が出力された場合のみ、記録情報識別部209は、フラグ設定部210を作動させることが可能である。一方、それ以外のログ種別の場合、記録情報識別部209は、フラグ設定部210を作動させないように制御することが可能である。
The recorded
システムの仕様によりエラーの種別を表現するログ属性が存在しない場合には、一定以上の重要なエラーログが出力されたという条件で、記録情報識別部209は、フラグ設定部210を作動させることが可能である。また、ログレベルが特定できない場合、全てのエラーログを対象として、記録情報識別部209は、フラグ設定部210を作動させることも可能である。
If there is no log attribute that represents the type of error according to the system specifications, the recorded
(エラー検出時の処理フロー)
エラー検出時の処理フローを図4の参照により説明する。まず、通信部206による通信処理の実行中、エラー検出部207によって、「通信エラー」が検出されると、本処理がスタートする(ステップS401)。次に、ステップS402において、記録情報識別部209は、検出された通信エラーのログの種別を決定し、通信エラーの重要度を識別する。例えば、「通信エラー」は、図3に示すログの属性、LOG_ERROR304に相当し、対応するログレベルは「2」である。
(Processing flow when an error is detected)
A processing flow at the time of error detection will be described with reference to FIG. First, when a “communication error” is detected by the
ログの種別が決定されると、ステップS403において、情報記憶部208によりログが出力される。
When the log type is determined, the
情報記憶部208は、通信制御装置(ノード01)101の外部のハードディスク、または通信制御装置(ノード01)101のメモリ104上の特定領域に、ログレベルの高低に応じてログの出力先を制御することが可能である。例えば、情報記憶部208は、重要度の高いログレベル1、2のみについて、外部のハードディスク、またはメモリ104ログを出力するように制御することも可能である。
The
ステップS403において、ログ出力が行われると、ステップS404において、記録情報識別部209は、先のステップS403で出力されたログレベルが一定以上のレベルであるか否かを識別する。本ステップの処理は、例外処理を行うか否かの閾値を設定することに相当する。ログレベルを一定以上とすることにより、正常状態でも出力され得る軽微なログによって例外処理が起動されてしまわないように制御することができる。
When log output is performed in step S403, in step S404, the recording
ステップS404の判定で、ログレベルが一定値未満の場合(S404−N0)、処理は終了し(S406)、ログレベルが一定値以上の場合(S404−Yes)、処理はステップS405に進められ、フラグ設定処理が実行される。ステップS405において、記録情報識別部209は、フラグ設定部210を作動させことによりエラー状態フラグ108を更新し、ログレベルが一定値以上の高いレベルにある通信エラー状態の発生を示すシグナル状態に設定する。
If it is determined in step S404 that the log level is less than a certain value (S404-N0), the process ends (S406). If the log level is more than a certain value (S404-Yes), the process proceeds to step S405. A flag setting process is executed. In step S405, the record
(エラー通知部109によるフラグ監視フロー)
図5は、エラー通知部109により実行されるエラー状態フラグ108の監視と、監視結果に伴う処理の流れを説明する図である。ステップS501において、エラー通知部109は、システム起動後の任意の時点でエラー状態フラグ108の監視を開始する。ここで、監視とは、初期状態として設定されているエラー状態フラグ108のログレベルが一定値未満であることを示す非シグナル状態から、ログレベルが一定値以上であることを示すシグナル状態への変化を検知することをいう。監視の方法は一定時間ごとにエラー状態フラグ108をチェックするポーリングによってもよいし、イベントなどシステム固有の方法で受動的にフラグ状態の変化を示す情報を、エラー通知部109が受信するようにしてもよい。
(Flag monitoring flow by the error notification unit 109)
FIG. 5 is a diagram for explaining the monitoring of the
監視中にエラー状態フラグ108が非シグナル状態からシグナル状態への設定変更を検出すると(S502−Yes)、ステップS503において、エラー通知部109は、例外処理部110にエラーの発生を通知(エラー通知)する。エラー通知を受けた例外処理部110の具体的な処理内容については図6を用いて詳細に説明する。
When the
(例外処理部110によるエラー処理フロー)
図6は、エラー通知部109からエラー通知を受けた例外処理部110によるエラー処理の流れを説明する図である。
(Error processing flow by the exception processing unit 110)
FIG. 6 is a diagram illustrating the flow of error processing by the exception processing unit 110 that has received an error notification from the
まず、ステップS601において、例外処理部110がエラー通知部109からエラー通知を受信すると、本処理がスタートする。ステップS602において、例外処理部110は、ユーザインタフェース(UI)画面にエラーが発生したこと(エラー状態)を表示する。その後、ステップS603において、例外処理部110は、システムに属する全てのプロセスを終了させる。そして、ステップS604において、例外処理部110は、ハードウェアをシャットダウンすることにより、例外処理を終了する(ステップS605)。
First, in step S601, when the exception processing unit 110 receives an error notification from the
この例外処理とはシステムが深刻な異常状態に陥った際に行われる処理で、アプリケーションが動作するハードウェアに依存するものである。図6の例外処理として、全システムの停止、およびハードウェアのシャットダウンは一例であり、復帰可能なエラーの場合はプロセスを終了させずに再起動させてもよい。また、エラーの程度(ログレベル)に応じて複数の例外処理フローを実行するようにしてもよい。また、ハードウェアを停止ないし再起動する処理であってもよく、アプリケーションの全体あるいは一部分を停止ないし再起動する処理であってもよく、また、システムに特有のエラーからの復帰を行う処理であってもよい。 This exception processing is processing performed when the system falls into a serious abnormal state and depends on the hardware on which the application operates. The exception processing in FIG. 6 is an example of stopping the entire system and shutting down the hardware. In the case of a recoverable error, the process may be restarted without ending. Further, a plurality of exception processing flows may be executed according to the degree of error (log level). Also, it may be a process of stopping or restarting hardware, a process of stopping or restarting all or part of an application, or a process of recovering from a system-specific error. May be.
本実施形態によれば、ログ出力機能をエラー検出に利用した通信制御技術が提供される。ログ出力機能をエラー検出にも利用することにより、各プロセスにエラー検出部を実装する必要がなく、呼び出し側のコード修正量が少なくて済むため、ソフトウェアの再利用性を高め開発効率を向上させることが可能になる。エラー状態フラグを介して間接的に通信エラーの検出と通知を行うことにより、プロセス内の関数呼び出しを、特定のハードウェアの機能への依存の少ない、汎用的な遠隔呼び出し処理に適用することが可能になる。 According to the present embodiment, a communication control technique using the log output function for error detection is provided. By using the log output function also for error detection, it is not necessary to install an error detection unit in each process, and the amount of code correction on the call side is small, improving software reusability and improving development efficiency. It becomes possible. By detecting and notifying communication errors indirectly via error status flags, function calls in the process can be applied to general-purpose remote call processing with less dependence on specific hardware functions. It becomes possible.
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other examples)
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.
Claims (8)
前記通信手段による前記通信処理の実行中において発生した通信エラーを検出するエラー検出手段と、
前記通信エラーの種別と、当該通信エラーの種別に対応した通信エラーの重要度と、を予め定めた通信エラーの種別と重要度との対応関係から識別する識別手段と、
前記識別手段によって識別された重要度が一定値以上であるとエラー処理を実行する例外処理手段と、
を備えることを特徴とする通信制御装置。 A communication process between a plurality of applications in the same process, a communication process between one application of the plurality of applications and another process other than the process in which the application exists, or the application exists A communication means for converting into communication processing with another device different from the device, and performing the converted communication processing;
Error detection means for detecting a communication error that occurs during execution of the communication processing by the communication means;
Identifying means for identifying the type of the communication error and the importance of the communication error corresponding to the type of the communication error from the correspondence between the predetermined type of communication error and the degree of importance;
Exception processing means for executing error processing when the importance identified by the identification means is a certain value or more,
A communication control apparatus comprising:
前記識別手段によって識別された前記重要度が一定値以上であると前記通信エラーの種別を前記記憶手段に出力する情報記憶手段と、を更に備えることを特徴とする請求項1または2に記載の通信制御装置。 Storage means for storing a correspondence relationship between the type of the communication error and the importance of the communication error corresponding to the type of the communication error;
3. The information storage unit according to claim 1, further comprising: an information storage unit that outputs the type of the communication error to the storage unit when the importance level identified by the identification unit is equal to or greater than a predetermined value. Communication control device.
前記通信制御装置は、
同一のプロセス内における複数のアプリケーション間の通信処理を、前記複数のアプリケーションの内の一つのアプリケーションと前記アプリケーションが存在するプロセスとは別の他のプロセスとの間の通信処理または前記アプリケーションが存在する通信制御装置とは別の前記他方の通信制御装置との間の通信処理に変換し、変換した通信処理を行う通信手段と、
前記通信手段による前記通信処理の実行中において発生した通信エラーを検出するエラー検出手段と、
前記通信エラーの種別と、当該通信エラーの種別に対応した通信エラーの重要度と、を予め定めた通信エラーの種別と重要度との対応関係から識別する識別手段と、
前記識別手段によって識別された重要度が一定値以上の場合に、エラー処理を実行する例外処理手段と、を備えることを特徴とする通信制御システム。 In a plurality of communication control devices, a communication control system for calling a function of an application of the other communication control device from an application of one communication control device and transmitting / receiving information to / from each other,
The communication control device includes:
A communication process between a plurality of applications in the same process, a communication process between one application of the plurality of applications and another process other than the process in which the application exists, or the application exists A communication means for converting the communication processing between the other communication control device different from the communication control device and performing the converted communication processing;
Error detection means for detecting a communication error that occurs during execution of the communication processing by the communication means;
Identifying means for identifying the type of the communication error and the importance of the communication error corresponding to the type of the communication error from the correspondence between the predetermined type of communication error and the degree of importance;
An exception processing unit that executes an error process when the degree of importance identified by the identification unit is equal to or greater than a predetermined value.
前記通信制御装置の通信手段が、同一のプロセス内における複数のアプリケーション間の通信処理を、前記複数のアプリケーションの内の一つのアプリケーションと前記アプリケーションが存在するプロセスとは別の他のプロセスとの間の通信処理または前記アプリケーションが存在する通信制御装置とは別の他の通信制御装置との間の通信処理に変換し、変換した通信処理を行う通信工程と、
前記通信制御装置のエラー検出手段が、前記通信工程による前記通信処理の実行中において発生した通信エラーを検出するエラー検出工程と、
前記通信制御装置の識別手段が、前記通信エラーの種別と、当該通信エラーの種別に対応した通信エラーの重要度と、を予め定めた通信エラーの種別と重要度との対応関係から識別する識別工程と、
前記通信制御装置の例外処理手段が、前記識別手段によって識別された重要度が一定値以上の場合に、エラー処理を実行する例外処理工程と、
を有することを特徴とする通信制御方法。 A communication control method in a communication control device,
The communication means of the communication control device performs communication processing between a plurality of applications in the same process between one application of the plurality of applications and another process other than the process in which the application exists. A communication process for converting the communication process into a communication process with another communication control apparatus other than the communication control apparatus or the communication control apparatus in which the application exists , and performing the converted communication process;
An error detection step in which the error detection means of the communication control device detects a communication error that occurs during the execution of the communication process by the communication step;
Identification in which the identification means of the communication control device identifies the type of the communication error and the importance of the communication error corresponding to the type of the communication error from the correspondence between the predetermined type of communication error and the degree of importance Process,
Exception processing means of the communication control device, when the importance identified by the identification means is a certain value or more, an exception processing step of executing error processing;
A communication control method characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011150340A JP5871499B2 (en) | 2011-07-06 | 2011-07-06 | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011150340A JP5871499B2 (en) | 2011-07-06 | 2011-07-06 | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013016132A JP2013016132A (en) | 2013-01-24 |
JP5871499B2 true JP5871499B2 (en) | 2016-03-01 |
Family
ID=47688745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011150340A Active JP5871499B2 (en) | 2011-07-06 | 2011-07-06 | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5871499B2 (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05324574A (en) * | 1991-10-22 | 1993-12-07 | Fujitsu Ltd | Inter-processor communication system |
JP2000163345A (en) * | 1998-11-25 | 2000-06-16 | Seiko Epson Corp | Device control system, information registering method, device utilizing method and storage medium recording computer program |
JP2001005693A (en) * | 1999-06-22 | 2001-01-12 | Nec Corp | System and method for automatically restoring fault and recording medium recording automatic fault restoration program |
JP3653004B2 (en) * | 2001-04-25 | 2005-05-25 | Necフィールディング株式会社 | Fault history monitoring system, fault history monitoring method, and fault history monitoring program |
JP4317420B2 (en) * | 2003-10-21 | 2009-08-19 | 安川情報システム株式会社 | Server computer and communication log processing method |
JP2010152838A (en) * | 2008-12-26 | 2010-07-08 | Ricoh Co Ltd | Image forming device, control method and program |
-
2011
- 2011-07-06 JP JP2011150340A patent/JP5871499B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013016132A (en) | 2013-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9658914B2 (en) | Troubleshooting system using device snapshots | |
KR101021394B1 (en) | Programmatic computer problem diagnosis and resolution and automated reporting and updating of the same | |
US7802128B2 (en) | Method to avoid continuous application failovers in a cluster | |
EP3121726B1 (en) | Fault processing method, related device and computer | |
KR102268355B1 (en) | Cloud deployment infrastructure validation engine | |
TWI229796B (en) | Method and system to implement a system event log for system manageability | |
US9753809B2 (en) | Crash management of host computing systems in a cluster | |
CN104639380A (en) | Server monitoring method | |
US11157373B2 (en) | Prioritized transfer of failure event log data | |
EP3591485B1 (en) | Method and device for monitoring for equipment failure | |
CN108431781B (en) | Self-diagnosis and automatic diagnostic data collection of device driver detected errors | |
CN112256507B (en) | Chip fault diagnosis method and device, readable storage medium and electronic equipment | |
CN111522703A (en) | Method, apparatus and computer program product for monitoring access requests | |
JP5425720B2 (en) | Virtualization environment monitoring apparatus and monitoring method and program thereof | |
KR20180134677A (en) | Method and apparatus for fault injection test | |
CN117472623A (en) | Method, device, equipment and storage medium for processing memory fault | |
CN112988442B (en) | Method and equipment for transmitting fault information in server operation stage | |
US11290330B1 (en) | Reconciliation of the edge state in a telemetry platform | |
JP6880961B2 (en) | Information processing device and log recording method | |
EP2312443A2 (en) | Information processing apparatus, method of controlling information processing apparatus and control program | |
CN110764962A (en) | Log processing method and device | |
JP5871499B2 (en) | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM | |
CN113553243A (en) | Remote error detection method | |
EP3993353A2 (en) | System and method for managing clusters in an edge network | |
CN104050074A (en) | Method and device for asynchronously recording log in system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140703 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150410 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150417 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150615 |
|
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: 20151214 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160112 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5871499 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |