JP5198154B2 - Fault monitoring system, device, monitoring apparatus, and fault monitoring method - Google Patents
Fault monitoring system, device, monitoring apparatus, and fault monitoring method Download PDFInfo
- Publication number
- JP5198154B2 JP5198154B2 JP2008146774A JP2008146774A JP5198154B2 JP 5198154 B2 JP5198154 B2 JP 5198154B2 JP 2008146774 A JP2008146774 A JP 2008146774A JP 2008146774 A JP2008146774 A JP 2008146774A JP 5198154 B2 JP5198154 B2 JP 5198154B2
- Authority
- JP
- Japan
- Prior art keywords
- state transition
- failure
- monitoring
- test data
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012544 monitoring process Methods 0.000 title claims description 108
- 238000000034 method Methods 0.000 title claims description 54
- 230000007704 transition Effects 0.000 claims description 169
- 238000012360 testing method Methods 0.000 claims description 135
- 238000012806 monitoring device Methods 0.000 claims description 25
- 230000005540 biological transmission Effects 0.000 claims description 19
- 239000003795 chemical substances by application Substances 0.000 description 21
- 230000008569 process Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 238000011161 development Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 9
- 238000012795 verification Methods 0.000 description 4
- 239000001110 calcium chloride Substances 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
本発明は、障害監視システム及びデバイスと監視装置並びに障害監視方法に関し、特にネットワークを通じて直接的または間接的に通信が可能な複数のデバイスにおける障害の発生を監視する技術に関する。 The present invention relates to a fault monitoring system, a device, a monitoring apparatus, and a fault monitoring method, and more particularly to a technique for monitoring the occurrence of a fault in a plurality of devices that can communicate directly or indirectly through a network.
近年、携帯電話やテレビといったコンシューマ機器が多機能化しており、そこに搭載されるソフトウェアの規模は年々増加する傾向にある。一般に、ソフトウェアの規模が増加すると、潜在的なバグの数が増加し、製品出荷後に不良が発生する可能性が高くなる。こうした状況を避けるため、大規模なソフトウェアの開発を高品位に、かつ高効率に行うために、モデルベース開発やソフトウェアプロダクトラインといったソフトウェア開発の方法論に関する研究が進められている。
一方、コンシューマ機器の製品出荷後に発生するソフトウェアの不具合を迅速に修正するための要素技術の研究も進んでいる。ソフトウェアをリモートから更新するための機能を備えたテレビやゲーム機が製品化されている。また、機器上で発生した障害を検出するシステムが一般に知られている。例えば特許文献1記載の障害監視システムや特許文献2記載の組み込み機器用監視装置などがある。
On the other hand, research on elemental technologies for promptly correcting software defects that occur after product shipment of consumer devices is also in progress. TVs and game consoles with a function for remotely updating software have been commercialized. A system for detecting a failure that has occurred on a device is generally known. For example, there are a failure monitoring system described in
一般的な障害検出システムは、監視対象機器からセンタサーバへ障害情報を送信することで障害の検出を行っている。この方式では、監視対象機器の数が増えるにつれて通信回数や通信データ量が増加し、輻輳の発生やサーバ維持費の増加に繋がっている。そこで、前記特許文献1では、発生した障害情報の緊急度を判定し、緊急度が高い障害情報は直ちにセンタサーバへ送信し、緊急度が低い障害情報は一定期間蓄積した後にまとめて送信する手段について述べている。また、前記特許文献2では、監視対象機器同士が連携し、障害情報を回覧することで通信回数を削減する手段について述べている。
しかし、前記特許文献1記載の方式では、通信の回数を削減することは可能であるが、通信データ量の削減には課題が残る。また、前記特許文献2記載の方式では、センタサーバに対する負担は軽減されるが、通信データ量は削減されず、かつ障害情報の収集に係る監視対象機器の高コスト化といった課題を持つ。
A general failure detection system detects a failure by transmitting failure information from a monitored device to a center server. In this method, the number of communications and the amount of communication data increase as the number of devices to be monitored increases, leading to congestion and an increase in server maintenance costs. Therefore, in
However, with the method described in
一般に通信データ量を削減する方式としてエラーコードの利用や、重要度の低い障害情報を間引いて送信する手段が考えられるが、この方式では障害情報の品質が低下する。エラーコードの送信だけでは想定外の障害に対処することは難しく、障害情報を間引く手段では本当に必要な障害情報にアクセスできなくなる可能性がある。 In general, as a method for reducing the amount of communication data, use of an error code or means for thinning out and transmitting failure information with low importance can be considered, but with this method, the quality of failure information is reduced. It is difficult to cope with an unexpected failure only by transmitting an error code, and there is a possibility that the failure information that is really necessary cannot be accessed by means of thinning out the failure information.
本発明が解決しようとする第1の課題は、監視対象機器の増加に伴う障害情報の通信データ量の増加である。第2の課題は、通信データ量を削減することによる障害情報の品質低下である。 A first problem to be solved by the present invention is an increase in the amount of communication data of failure information accompanying an increase in monitored devices. A second problem is a reduction in the quality of failure information due to a reduction in the amount of communication data.
前記課題を解決するため、本発明ではソフトウェアの開発段階で実施されるテストの結果を基にした障害情報を作成する。例えばモデルベース開発と呼ばれる開発方法論で用いられる状態遷移表を基にした障害情報を作成する。テスト結果を基に、障害発生箇所のテストが実施済である場合は想定外の障害として詳細な障害情報を作成し、未実施である場合は想定内の障害としてテストの実施を促すための簡易な障害情報を作成し、実施中である場合は現在対策中の障害として障害情報を作成しない。この方式を採用することで、前記課題を解決する。 In order to solve the above-mentioned problems, the present invention creates fault information based on the results of tests performed at the software development stage. For example, fault information is created based on a state transition table used in a development methodology called model-based development. Based on the test result, if failure test has been performed, detailed failure information is created as an unexpected failure, and if it has not been performed, it is easy to promote the test execution as an expected failure If failure information is created and is being implemented, failure information is not created as a failure currently being addressed. By adopting this method, the above problem is solved.
すなわち、本発明は、監視対象となるデバイスと、前記デバイスにおける障害の発生を監視する監視装置と、前記デバイスの障害データを記憶するデータベースである外部記憶装置とからなり、これら装置がネットワークを介してデータの送受信が可能な障害監視システムであって、前記デバイス上で動作するプログラムモジュールにおいて発生した障害を監視する障害監視部と、前記プログラムモジュールの状態遷移を監視する状態遷移監視部と、前記障害監視部が障害の発生を検知した際に前記状態遷移監視部より状態遷移履歴情報を取得し、さらに前記外部記憶装置より前記プログラムモジュールに関して実施されたテストデータを取得し、前記状態遷移履歴情報および前記テストデータを基に障害情報を作成する障害情報作成部と、前記障害情報作成部により作成された障害情報を、ネットワークを介して前記監視装置に送信する障害情報送信部とを有する障害監視システムである。 That is, the present invention includes a device to be monitored, a monitoring device that monitors occurrence of a failure in the device, and an external storage device that is a database that stores failure data of the device, and these devices are connected via a network. A fault monitoring system capable of transmitting and receiving data, a fault monitoring unit for monitoring faults occurring in program modules operating on the device, a state transition monitoring unit for monitoring status transitions of the program modules, When the failure monitoring unit detects the occurrence of a failure, it acquires state transition history information from the state transition monitoring unit, and further acquires test data performed on the program module from the external storage device, and the state transition history information And a failure information creation unit for creating failure information based on the test data, The fault information generated by the serial failure information creation unit, a fault monitoring system comprising a fault information transmission unit that transmits to the monitoring device via the network.
本発明によれば、監視対象機器からセンタサーバに送信する障害情報のデータ量を削減でき、よって監視対象機器の増加に伴うネットワークトラフィックの増加を抑制することができる。また、ソフトウェアの開発段階で実施されるテストの結果に依拠した監視方法であることから、既存の方式に比べて障害情報の品質を向上させることができ、かつ本発明の導入コストを低く抑えることが可能である。 ADVANTAGE OF THE INVENTION According to this invention, the data amount of the failure information transmitted to a center server from a monitoring object apparatus can be reduced, Therefore The increase in the network traffic accompanying the increase in the monitoring object apparatus can be suppressed. In addition, since the monitoring method is based on the results of tests performed at the software development stage, it is possible to improve the quality of fault information compared to existing methods and to keep the introduction cost of the present invention low. Is possible.
本発明を実施するための最良の形態を説明する。
本発明の障害監視システム及びデバイスと監視装置並びに障害監視方法の実施形態について、図面を用いて説明する。
図1はハードウェア構成図である。これは、本発明に係る一般的なシステムのハードウェア構成を表すものであり、ハードウェア構成を限定するものではない。また、本発明はネットワークを介した複数の端末を利用するシステムについて述べたものであるが、本図面は単一の端末について示したものであり、本発明に係る全ての端末を網羅するものではない。
The best mode for carrying out the present invention will be described.
Embodiments of a failure monitoring system, a device, a monitoring apparatus, and a failure monitoring method of the present invention will be described with reference to the drawings.
FIG. 1 is a hardware configuration diagram. This represents a hardware configuration of a general system according to the present invention, and does not limit the hardware configuration. In addition, the present invention describes a system that uses a plurality of terminals via a network, but this drawing shows a single terminal and does not cover all terminals according to the present invention. Absent.
演算装置101は、主記憶装置102にロードされたプログラムデータを解析し、処理を実行する中央演算ユニットである。例えばIntel社製のPentium(登録商標)プロセッサなどが演算装置101に該当する。
主記憶装置102は、外部記憶装置104に記録されているプログラムデータをロードする揮発メモリである。例えばDRAM等の半導体メモリが主記憶装置102に該当する。
通信装置103は、外部ネットワークと通信するための装置である。例えばインターネットに接続するためのネットワークインタフェースカードが通信装置103に該当する。
外部記憶装置104は、プログラムデータ等を記憶する不揮発メモリである。例えばハードディスク装置が外部記憶装置104に該当する。外部記憶装置104は、データベース等のネットワークを介した装置であってもよい。
The
The
The
The
図2はモジュール概念図である。これは、本発明に係る一般的なモジュールの概念構成を表すものであり、モジュールの構成を限定するものではない。図示されているモジュールの包含関係(例えば被監視装置202と監視エージェント206の包含関係)は一般的な例であり、包含関係を規定するものではない。また、図示されているモジュールがネットワークを介して連携するかどうか、同一の装置上で連携するかどうかについて規定するものではない。
FIG. 2 is a conceptual diagram of the module. This represents a conceptual configuration of a general module according to the present invention, and does not limit the configuration of the module. The illustrated module inclusion relationship (for example, the inclusion relationship between the monitored
ネットワーク201は、データの送受信が行えることを特徴とする通信ネットワークである。例えばインターネットやEthernet(登録商標)などがネットワーク201に該当する。
The
被監視装置202は、ネットワーク201を介して監視装置215によって監視される装置である。例えば携帯電話やホームゲートウェイなどが被監視装置202に該当する。
被監視プログラム203は、監視エージェント206によって監視されるプログラムである。例えばホームゲートウェイ上で動作する情報家電制御プログラムなどが被監視プログラム203に該当する。
The monitored
The monitored
状態遷移通知部204は、被監視プログラム203上で発生した状態遷移に関する情報を状態遷移監視部207に通知するモジュールである。また、通知方式は、PUSH型(状態遷移通知部204から状態遷移監視部207へ通知する方式)であってもよく、PULL型(状態遷移監視部207から状態遷移通知部204に問い合わせる方式)であってもよい。例えばJava(登録商標)のJMX(Java Management Extensions)仕様で規定されるMBeanなどを利用することで状態遷移通知部204を実装できる。この具体例については後述する。
The state transition notification unit 204 is a module that notifies the state
障害通知部205は、被監視プログラム203上で発生した障害に関する情報を障害監視部208に通知するモジュールである。また、通知方式は、PUSH型(障害通知部205から障害監視部208へ通知する方式)であってもよく、PULL型(障害監視部208から障害通知部205に問い合わせる方式)であってもよい。例えばJavaのJMX仕様で規定されるMBeanなどを利用することで障害通知部205を実装できる。この具体例については後述する。
The
監視エージェント206は、被監視プログラム203の状態遷移、および被監視プログラム203における障害の発生を監視し、被監視プログラム203で障害が発生した場合、ネットワーク201を介してデータベース212より状態遷移表テストデータ213および状態遷移パステストデータ214等のテストデータを取得し、当該テストデータを基に発生した障害の種類を判定し、発生した障害の種類を基に障害情報を作成し、必要であればネットワーク201を介して監視装置215に前記障害情報を送信するモジュールであり、また、ネットワーク201を介して監視装置215より最新のテストデータを受信し、当該テストデータを基にネットワーク201を介してデータベース212に格納されている状態遷移表テストデータ213および状態遷移パステストデータ214等の前記テストデータを更新する機能を持ったモジュールである。
監視エージェント206は、被監視プログラム203と同じマシン上に存在してもよく、ネットワーク201を介した別のマシン上に存在してもよい。また、状態遷移表テストデータ213および状態遷移パステストデータ214等のテストデータは、別のテストデータを利用することも可能である。本実施例では、テストデータの具体的な例として状態遷移表テストデータ213および状態遷移パステストデータ214を利用する。これらのテストデータの具体例については後述する。
The
The
状態遷移監視部207は、前述の通り、状態遷移通知部204と連携し、被監視プログラム203の状態遷移を監視するモジュールである。
障害監視部208は、前述の通り、障害通知部205と連携し、被監視プログラム203上で発生する障害を監視するモジュールである。
障害情報作成部209は、障害監視部208が障害の発生を検知した際、過去に遷移した状態の履歴情報を状態遷移監視部207より取得し、ネットワーク201を介して当該情報に対応する状態遷移表テストデータ213および状態遷移パステストデータ214をデータベース212より取得し、当該データを基に障害情報を作成し、必要であれば当該障害情報を障害情報送信部210に送信するモジュールである。障害情報の作成手順および障害情報の具体例については後述する。
As described above, the state
As described above, the
When the
障害情報送信部210は、障害情報作成部209によって作成された障害情報を、ネットワーク201を介して監視装置215の障害情報受信部216に送信するモジュールである。
テストデータ更新部211は、監視装置215のテストデータ送信部217がネットワーク201を介して送信したテストデータを受信し、当該テストデータを基にデータベース212に格納されている状態遷移表テストデータ213および状態遷移パステストデータ214を更新するモジュールである。
The failure
The test
データベース212は、状態遷移表テストデータ213および状態遷移パステストデータ214を格納する外部記憶装置104である。
状態遷移表テストデータ213は、被監視プログラム203の開発段階で実施された状態遷移表テストに関するデータである。
状態遷移パステストデータ214は、被監視プログラム203の開発段階で実施された状態遷移パステストに関するデータである。
監視プログラム214は、ネットワーク201を介して監視エージェント206から障害情報を受信し、当該障害情報を管理者等に通知し、また、最新のテストデータが存在する場合は当該テストデータをネットワーク201を介してテストデータ更新部211に送信するモジュールである。
The
The state transition
The state transition
The
監視装置215は、ネットワーク201を介して監視エージェント206と通信を行い、被監視装置202を監視する装置である。
障害情報受信部216は、ネットワーク201を介して障害情報送信部210より障害情報を受信し、当該障害情報を障害情報通知部218に通知するモジュールである。
テストデータ送信部217は、ネットワーク201を介し、被監視プログラム203の開発担当者によって実施された最新のテストデータをテストデータ更新部211に送信するモジュールである。
障害情報通知部218は、障害情報受信部216が受信した障害情報を、独自の手段(メール送信、ダイアログ表示等)により管理者等に通知するモジュールである。
The
The failure
The test
The failure
図3は障害情報の作成に関するフローチャートを示す図である。
ステップ301は、状態遷移監視部207が被監視プログラム203の状態遷移を監視するステップである。このステップにおいて、状態遷移監視部207は被監視プログラム203上で発生した状態遷移の履歴を保持する。具体的な状態遷移の監視手段については後述する。
ステップ302は、障害監視部208が被監視プログラム203で発生する障害を監視するステップである。このステップにおいて、障害監視部208は被監視プログラム203上で発生した障害情報のログを保持する。具体的な障害の監視手段については後述する。
ステップ301とステップ302は、処理が前後してもよく、また、並列に実行されていてもよい。
ステップ303は、ステップ302で障害が発生したかどうかを調べるステップである。もし障害が発生していなければ、ステップ301へ戻る。もし障害が発生した場合は、ステップ304へ進む。
FIG. 3 is a diagram showing a flowchart relating to creation of failure information.
Step 301 is a step in which the state
Step 302 is a step in which the
Step 303 is a step for checking whether or not a failure has occurred in
ステップ304は、障害情報作成部209が状態遷移監視部207から状態遷移履歴情報を取得するステップである。状態遷移履歴情報の具体例については後述する。
ステップ305は、障害情報作成部209がステップ304で取得した状態遷移履歴情報を基にデータベースを検索するステップである。このステップにおいて、障害情報作成部209はデータベースから前記状態遷移履歴情報に対応した状態遷移表テストデータ213および状態遷移パステストデータ214を検索する。
Step 304 is a step in which the failure
Step 305 is a step of searching the database based on the state transition history information acquired in
ステップ306は、障害情報作成部209がステップ305において検索した状態遷移表テストデータ213を検証するステップである。ステップ304で取得した状態遷移履歴情報と状態遷移表テストデータ213を比較し、現在のテスト状態を検証する処理を行う。
ステップ307は、ステップ306の検証処理において、現在のテスト状態が障害対策中かどうかを判定するステップである。もし障害対策中であれば、障害情報を監視装置215に送信する必要がないため、処理を終了する。もし障害対策中でなければ、ステップ308へ進む。
Step 306 is a step of verifying the state transition
Step 307 is a step of determining whether or not the current test state is in the process of troubleshooting in the verification process of
ステップ308は、ステップ306の検証処理において、現在のテスト状態が未実施状態かどうかを判定するステップである。もし未実施であれば、ステップ315へ進む。もし未実施でなければ、つまり実施済であれば、ステップ309へ進む。
Step 308 is a step of determining whether or not the current test state is an unexecuted state in the verification process of
ステップ309は、障害情報作成部209がステップ305において検索した状態遷移パステストデータ214を検証するステップである。ステップ304で取得した状態遷移履歴情報と状態遷移パステストデータ214を比較し、現在のテスト状態を検証する処理を行う。
Step 309 is a step in which the failure
ステップ310は、ステップ309の検証処理において、現在のテスト状態が障害対策中かどうかを判定するステップである。もし障害対策中であれば、障害情報を監視装置215に送信する必要がないため、処理を終了する。もし障害対策中でなければ、ステップ311へ進む。
Step 310 is a step of determining whether or not the current test state is a countermeasure against a failure in the verification process of
ステップ311は、ステップ309の検証処理において、現在のテスト状態が実施済状態かどうかを判定するステップである。もし実施済であれば、ステップ313へ進む。もし実施済でなければ、ステップ312へ進む。
ステップ312は、ステップ311において状態遷移パステストデータ214のテスト状態が実施済でなかった場合にパス障害情報を作成するステップである。パス障害情報とは、障害発生時点の状態遷移履歴に関する情報である。障害発生箇所は状態遷移パステストが実施されていないため、状態遷移パステストを実施するための最低限の情報のみを作成することで情報量を削減する。パス障害情報の詳細については後述する。
ステップ313は、ステップ311において状態遷移パステストデータ214のテスト状態が実施済であった場合に詳細障害情報を作成するステップである。詳細障害情報とは、メモリダンプやエラーログといった、障害原因の特定に必要な情報である。障害発生箇所は状態遷移パステストが実施されているため、予期せぬ障害が発生したと判断し、詳細な障害情報を作成する。
Step 311 is a step of determining whether or not the current test state is an executed state in the verification process of
Step 312 is a step of creating path fault information when the test state of the state transition
Step 313 is a step of creating detailed fault information when the test state of the state transition
ステップ315は、ステップ308において状態遷移表テストデータ213のテスト状態が未実施であった場合に簡易障害情報を作成するステップである。簡易障害情報とは、障害発生箇所に対応する状態遷移表のセル(行、列)に関する情報である。障害発生箇所は状態遷移表テストが実施されていないため、状態遷移表テストを実施するための最低限の情報のみを作成することで情報量を削減する。簡易障害情報の詳細については後述する。
Step 315 is a step of creating simple fault information when the test state of the state transition
ステップ314およびステップ316は、ステップ312、ステップ313、およびステップ315で作成された障害情報を監視装置215の障害情報受信部216に送信するステップである。以上の手順により障害情報を作成することで、必要最低限の障害情報のみを監視装置215へ送信することができる。
図4は、前記JMX技術を利用した場合の状態遷移監視手段および障害監視手段を表すシーケンス図である。JMX技術は、MBeanとよばれるプログラム監視向けモジュールを開発することで、プログラムの内部状態を外部から監視できるようにするための技術である。Javaのバージョン5(Java SE 5)から、JMX技術が標準技術として導入されている。図4では、このJMX技術を利用した場合の被監視プログラム203の監視手段を示す。図では処理の流れを単純化するため、MBeanServer等のJMX関連モジュールについては記載を省略する。
FIG. 4 is a sequence diagram showing state transition monitoring means and failure monitoring means when the JMX technology is used. JMX technology is a technology that enables the internal state of a program to be monitored from the outside by developing a module for program monitoring called MBean. JMX technology has been introduced as a standard technology from Java version 5 (Java SE 5). FIG. 4 shows the monitoring means of the monitored
最初に、監視エージェント206は、状態遷移監視リスナの登録要求403を状態遷移監視MBean401へ送信する。当該リスナの登録に成功すると、状態遷移監視MBean401はエラーを発生させずに登録成功メッセージ404を返す。
次に、監視エージェント206は、障害監視リスナの登録要求405を障害監視MBean402へ送信する。当該リスナの登録に成功すると、障害監視MBean402は、エラーを発生させずに登録成功メッセージ406を返す。
First, the
Next, the
次に、被監視プログラム203は、プログラム内部の状態が変化すると状態遷移メッセージ407を状態遷移監視MBean401へ送信する。状態遷移監視MBean401は、当該状態遷移メッセージ407を受信すると、状態遷移監視リスナを通じて状態遷移通知メッセージ408を監視エージェント206へ送信する。監視エージェント206は、当該状態遷移通知メッセージ408を受信すると、状態遷移履歴(ログ)更新する処理409を行う。このようにして、監視エージェント206は状態遷移履歴情報を保持する。
Next, the monitored
プログラム内部で障害が発生すると、被監視プログラム203は、障害発生メッセージ410を障害監視MBean402へ送信する。障害監視MBean402は、障害発生メッセージ410を受信すると、障害監視リスナを通じて障害発生通知メッセージ411を監視エージェント206へ送信する。監視エージェント206は、当該障害発生通知メッセージ411を受信すると、状態遷移履歴情報を確認する処理412を行い、次に障害情報を作成する処理413を行い、最後に障害情報を送信する処理414を行う。障害の作成手順および障害情報の送信処理については図3に示した通りである。このように、JMX技術等を利用することで外部監視用プログラムを作成できる。但し、これは障害監視方法の一例であり、他のプログラムを記述することも、専用のハードウェアを利用して監視することも可能である。
When a failure occurs inside the program, the monitored
図5は本発明で参照している状態遷移表の例を示す図である。これは、モデルベース開発と呼ばれる開発手法において一般に利用される、プログラムの状態遷移を表すデータである。
イベントA501、イベントB502、イベントC503、イベントD504は、プログラムに関連して発生するイベントの種類を表し、状態A505、状態B506、状態C507、状態D508、状態E509は、プログラムの遷移し得る状態を表している。また、図中の「×」はある状態の時にそのイベントが発生する可能性がないことを表し、図中の「/」はある状態の時にそのイベントが発生しても処理が行われず、無視されることを表し、図中の「遷移X(XはAからEまでのいずれかのアルファベット)」はある状態の時にそのイベントXが発生すると、アルファベットXに対応する別の状態に遷移することを表している。例えば図5の表は、状態A505の時にイベントB502は発生する可能性がないことを表し、状態B506の時にイベントA501が発生しても無視されることを表し、状態C507の時にイベントC503が発生するとプログラムの状態が状態A505に遷移することを表している。このような状態遷移表がモデルベース開発と呼ばれる開発方法において一般に利用されている。
FIG. 5 is a diagram showing an example of a state transition table referred to in the present invention. This is data representing the state transition of a program that is generally used in a development method called model-based development.
Event A501, event B502, event C503, and event D504 represent the types of events that occur in relation to the program, and state A505, state B506, state C507, state D508, and state E509 represent states in which the program can transition. ing. Also, “x” in the figure indicates that there is no possibility that the event will occur in a certain state, and “/” in the figure does not process even if the event occurs in a certain state and ignores it. "Transition X (X is any alphabet from A to E)" in the figure means that if the event X occurs in a certain state, the transition to another state corresponding to the alphabet X Represents. For example, the table in FIG. 5 indicates that event B502 is not likely to occur when in state A505, indicates that event A501 occurs even when in state B506, and event C503 occurs when in state C507. Then, the program state transitions to state A505. Such a state transition table is generally used in a development method called model-based development.
図6は、図5で示した状態遷移表に対応する数値データの例を示す表である。図中のe1(601)、e2(602)、e3(603)、e4(604)は、それぞれイベントa501、イベントb502、イベントc503、イベントd504に対応し、s1(605)、s2(606)、s3(607)、s4(608)、s5(609)は、それぞれ状態A505、状態B506、状態C507、状態D508、状態E509に対応している。表中の番号は、図5の表中で示す表記にそれぞれ対応している。このように状態遷移表そのものを文字列データとして利用するのではなく、状態遷移表に対応した数値データを利用することで情報量を削減できる。これは情報量を削減するための一般的な例である。 FIG. 6 is a table showing an example of numerical data corresponding to the state transition table shown in FIG. In the figure, e1 (601), e2 (602), e3 (603), e4 (604) correspond to event a501, event b502, event c503, and event d504, respectively, and s1 (605), s2 (606), s3 (607), s4 (608), and s5 (609) correspond to state A505, state B506, state C507, state D508, and state E509, respectively. The numbers in the table correspond to the notations shown in the table of FIG. Thus, the amount of information can be reduced by using numerical data corresponding to the state transition table instead of using the state transition table itself as character string data. This is a general example for reducing the amount of information.
図7は、図6で示したフォーマットを用いて表記した状態遷移履歴情報の例を示す表である。図中の発生順序701は状態遷移が発生した順番を表す数値であり、セル番号702は図6で示した数値データに対応する数値である。この例では、状態Eの時にイベントBが発生して状態Dに遷移し、状態Dの時にイベントCが発生して状態Cに遷移し、状態Cの時にイベントAが発生して状態Bに遷移し、状態Bの時にイベントDが発生して状態Aに遷移し、状態Aの時にイベントBが発生したことを示している。図5の状態遷移図では状態Aの時にイベントBは発生しないと表記されているが、この例では状態Aの時にイベントBが発生したことを示している。
ここで、図3の説明において述べた簡易障害情報とは、障害発生直前の状態遷移に対応するセル番号702の数値データを障害情報として利用するものである。図7の例では、簡易障害情報に相当するデータは「2」となる。但し、これは情報量を削減するための簡易障害情報の一例であり、その内容を限定するものではない。
FIG. 7 is a table showing an example of the state transition history information expressed using the format shown in FIG. The
Here, the simple failure information described in the description of FIG. 3 uses numerical data of the
図8は、図6で示したフォーマットを用いて表記した状態遷移表テストデータ213の例を示す表である。状態遷移表テストとは、状態遷移表の各マトリクスが正常に動作するかどうかを確認するテストであり、モデルベース開発で一般的に行われるテスト手法である。例えば図5においては、状態Aの時にイベントAが発生した場合に状態Bへ正しく遷移するかどうかといった動作をテストする。
図中のセル番号801は図6で示した数値データに対応する数値であり、テスト状態802はセル番号801に対応した状態遷移表テストの実施状態を表す数値である。テスト状態802の数値は、「0」が実施済であることを表し、「1」が未実施であることを表し、「2」が実施不可能であることを表し、「3」が対策中であることを表している。
ここで、実施不可能とは、ある状態の時にイベントが発生し得ないためにテストが不可能である(図5の「×」に該当する)という意味であり、対策中とは、現在テスト中であるという意味である。このような状態遷移表テストデータ213を利用することで、どういった種類の障害情報を作成すべきか、また、障害情報を監視装置215に送信すべきかどうかを判定することができる。判定手順の例については図3で示した通りである。
FIG. 8 is a table showing an example of the state transition
The
Here, “impossible to execute” means that the test cannot be performed because an event cannot occur in a certain state (corresponding to “x” in FIG. 5). It means being inside. By using such state transition
図9は、図6で示したフォーマットを用いて表記した状態遷移パステストデータ214の例を示す表である。状態遷移パステストとは、状態遷移表の一連の状態遷移が正常に動作するかどうかを確認するテストであり、モデルベース開発で一般的に行われるテスト手法である。例えば図5においては、状態Aの時にイベントAが発生した場合に状態Bへ正しく遷移し、さらに状態Bの時にイベントBが発生した場合に状態Eへ正しく遷移し、さらに状態Eの時にイベントAが発生した場合に正しく当該イベントを無視するかどうかといった一連の動作をテストする。
図中の状態遷移パス901は図6で示した数値データに対応する状態遷移履歴を表すデータであり、テスト状態902は状態遷移パス901に対応した状態遷移パステストの実施状況を表す数値である。テスト状態902の数値は、「0」が実施済であることを表し、「1」が対策中(例えば事前に受付済み)であることを表す。図中に表れない状態遷移パスは、全てテスト状態が未実施であることを示すものとする。未実施の状態遷移パスを図中に表記しない理由は、状態遷移パス901の取り得る値を全て網羅するとデータ量が膨大になるためである。このような状態遷移パステストデータ214を利用することで、どういった種類の障害情報を作成すべきか、また、障害情報を監視装置215に送信すべきかどうかを判定することができる。判定手順の例については図3で示した通りである。
ここで、図3の説明において述べたパス傷害情報とは、障害発生前の一連の状態遷移に対応する状態遷移パス901の数値データを障害情報として利用するものである。図9の例では、パス障害情報に相当するデータは「1、6、20、9、5」等になる。但し、これは情報量を削減するためのパス障害情報の一例であり、その内容を限定するものではない。
FIG. 9 is a table showing an example of the state transition
A
Here, the path injury information described in the description of FIG. 3 uses numerical data of the
図10は、図3の説明において述べた障害情報の送信手順を示すシーケンス図である。
最初に、障害情報作成部209は、前記障害情報の送信要求1001を障害情報送信部210へ送信する。次に、障害情報送信部210は、前記障害情報を監視装置215の障害情報受信部216へ送信する処理1002を行う。次に、障害情報受信部216は、障害情報送信部210より受信した前記障害情報の通知要求1003を障害情報通知部218へ送信する。障害情報通知部218は前記障害情報の解析処理1004を行い、前記障害情報を人間が読むことのできる形式に変換し、メール送信等の手段により被監視装置202の管理者へ通知する処理1005を行う。最後に、障害情報通知部218は、通知に成功したことを示すメッセージ1006を障害情報受信部216へ送信し、障害情報受信部216は、障害情報の受信に成功したことを示すメッセージ1007を障害情報送信部210へ送信し、障害情報送信部210は、障害情報の送信に成功したことを示すメッセージ1008を障害情報作成部209へ送信する。以上の流れにより障害情報を被監視装置202の管理者に通知するが、これは一般的な通知方法を述べたものであり、通知方法を限定するものではない。
FIG. 10 is a sequence diagram showing a procedure for transmitting failure information described in the description of FIG.
First, the failure
図11はテストデータの更新手順を示すシーケンス図である。障害情報の通知を受けた管理者は、障害箇所をテストし、バグを修正したモジュールを配信すると共に、前記テストデータのテスト状態を更新することができる。 FIG. 11 is a sequence diagram showing a test data update procedure. The administrator who has received the notification of the fault information can test the fault location, distribute the module in which the bug is corrected, and update the test state of the test data.
最初に、管理者1101は、被監視プログラム203に関する最新のテストデータを監視プログラム214へ入力する処理1102を行う。次に、監視プログラム214は、前記最新のテストデータを更新するメッセージを監視エージェント206へ送信する処理1103を行う。次に、監視エージェント206は、受信した前記最新のテストデータをデータベース212へ送信し、前記テストデータを更新する処理1104を行う。最後に、データベース212はテストデータの更新に成功したことを示すメッセージ1105を監視エージェント206へ送信し、監視エージェント206は、テストデータの受信に成功したことを示すメッセージ1106を監視プログラム214へ送信し、監視プログラム214は、テストデータの入力に成功したことを示すメッセージ1107を管理者1101へ送信する。以上の流れによりテストデータの更新を行うが、これは一般的な更新方法を述べたものであり、更新方法を限定するものではない。特に、テスト状態の更新は監視エージェント206が自動で行うことも考えられるが、ここでは一般的な例として管理者による更新処理を示したものである。
First, the
101 演算装置、102 主記憶装置、103 通信装置、104 外部記憶装置、201 ネットワーク、202 被監視装置、203 被監視プログラム、204 状態遷移通知部、205 障害通知部、206 監視エージェント、207 状態遷移監視部、208 障害監視部、209 障害情報策西部、210 障害情報送信部、211 テストデータ更新部、212 データベース、213 状態遷移表テストデータ、214 状態遷移パステストデータ、215 監視装置、216 障害情報受信部、217 テストデータ送信部、218 障害情報通知部。
101
Claims (10)
前記デバイス上で動作するプログラムモジュールにおいて発生した障害を監視する障害監視部と、前記プログラムモジュールの状態遷移を監視する状態遷移監視部と、前記障害監視部が障害の発生を検知した際に前記状態遷移監視部より状態遷移履歴情報を取得し、さらに前記外部記憶装置より前記プログラムモジュールに関して実施されたテストデータを取得し、前記状態遷移履歴情報および前記テストデータを基に障害情報を作成する障害情報作成部と、前記障害情報作成部により作成された障害情報を、ネットワークを介して前記監視装置に送信する障害情報送信部とを有することを特徴とする障害監視システム。 It consists of a device to be monitored, a monitoring device that monitors the occurrence of a failure in the device, and an external storage device that is a database that stores the failure data of the device, and these devices can send and receive data via a network Fault monitoring system,
A fault monitoring unit that monitors a fault that has occurred in a program module that operates on the device; a state transition monitoring unit that monitors a state transition of the program module; and the state when the fault monitoring unit detects the occurrence of a fault. Failure information for obtaining state transition history information from a transition monitoring unit, further obtaining test data for the program module from the external storage device, and creating failure information based on the state transition history information and the test data A failure monitoring system comprising: a creation unit; and a failure information transmission unit that transmits failure information created by the failure information creation unit to the monitoring device via a network.
前記プログラムモジュールにおいて発生した障害を監視する障害監視部と、前記プログラムモジュールの状態遷移を監視する状態遷移監視部と、前記障害監視部が障害の発生を検知した際に前記状態遷移監視部より状態遷移履歴情報を取得し、さらに前記外部記憶装置より前記プログラムモジュールに関して実施されたテストデータを取得し、前記状態遷移履歴情報および前記テストデータを基に障害情報を作成する障害情報作成部と、前記障害情報作成部により作成された障害情報を、ネットワークを介して前記監視装置に送信する障害情報送信部とを有することを特徴とするデバイス。 A device comprising a program module, capable of transmitting and receiving data via a network with a monitoring device and an external storage device which is a database for storing device failure data,
A failure monitoring unit that monitors a failure that has occurred in the program module, a state transition monitoring unit that monitors a state transition of the program module, and a state from the state transition monitoring unit when the failure monitoring unit detects the occurrence of a failure. Acquiring a transition history information, further acquiring test data performed on the program module from the external storage device, and generating a failure information based on the state transition history information and the test data; and A device comprising: a failure information transmission unit configured to transmit failure information created by a failure information creation unit to the monitoring apparatus via a network.
前記デバイス上で動作するプログラムモジュールにおいて発生した障害を監視する障害監視ステップと、前記プログラムモジュールの状態遷移を監視する状態遷移監視ステップと、前記障害監視ステップにより障害の発生を検知した際に前記状態遷移監視ステップにより状態遷移履歴情報を取得し、さらに前記外部記憶装置より前記プログラムモジュールに関して実施されたテストデータを取得し、前記状態遷移履歴情報および前記テストデータを基に障害情報を作成する障害情報作成ステップと、前記障害情報作成ステップにより作成された障害情報を、ネットワークを介して前記監視装置に送信する障害情報送信ステップとを有することを特徴とする障害監視方法。 It consists of a device to be monitored, a monitoring device that monitors the occurrence of a failure in the device, and an external storage device that is a database that stores the failure data of the device, and these devices can send and receive data via a network A method for monitoring faults in a fault monitoring system,
A fault monitoring step for monitoring a fault that has occurred in a program module operating on the device; a state transition monitoring step for monitoring a state transition of the program module; and the state when a fault occurrence is detected by the fault monitoring step. Failure information for acquiring state transition history information by a transition monitoring step, further acquiring test data for the program module from the external storage device, and creating failure information based on the state transition history information and the test data A failure monitoring method comprising: a creation step; and a failure information transmission step of transmitting failure information created in the failure information creation step to the monitoring device via a network.
The test data is state transition table test data corresponding to a result of a state transition table test performed on the program module, state transition path test data corresponding to a result of a state transition path test, or both. 9. The fault monitoring method according to 9.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008146774A JP5198154B2 (en) | 2008-06-04 | 2008-06-04 | Fault monitoring system, device, monitoring apparatus, and fault monitoring method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008146774A JP5198154B2 (en) | 2008-06-04 | 2008-06-04 | Fault monitoring system, device, monitoring apparatus, and fault monitoring method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009294837A JP2009294837A (en) | 2009-12-17 |
JP5198154B2 true JP5198154B2 (en) | 2013-05-15 |
Family
ID=41542985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008146774A Expired - Fee Related JP5198154B2 (en) | 2008-06-04 | 2008-06-04 | Fault monitoring system, device, monitoring apparatus, and fault monitoring method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5198154B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108981278A (en) * | 2017-05-31 | 2018-12-11 | 日立空调·家用电器株式会社 | The diagnostic method and terminal device of household appliance system, household appliance |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782612B2 (en) * | 2010-05-11 | 2014-07-15 | Ca, Inc. | Failsafe mechanism for dynamic instrumentation of software using callbacks |
JP5821217B2 (en) * | 2011-03-01 | 2015-11-24 | 株式会社リコー | Image forming apparatus, management method, management program, and recording medium |
US9411616B2 (en) | 2011-12-09 | 2016-08-09 | Ca, Inc. | Classloader/instrumentation approach for invoking non-bound libraries |
JP6655361B2 (en) * | 2015-11-11 | 2020-02-26 | 日立オートモティブシステムズ株式会社 | Vehicle control device |
JP6899936B2 (en) * | 2015-11-11 | 2021-07-07 | 日立Astemo株式会社 | Vehicle control device |
JP6514182B2 (en) * | 2016-12-14 | 2019-05-15 | キャッツ株式会社 | Device, management server, information collection system, and information collection method |
CN114428709B (en) * | 2022-01-17 | 2022-08-05 | 广州鲁邦通物联网科技股份有限公司 | SDS state detection method and system in cloud management platform |
CN115953146B (en) * | 2022-12-07 | 2024-02-13 | 国家电网有限公司 | A distribution network fault handling auxiliary decision-making system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008003985A (en) * | 2006-06-26 | 2008-01-10 | Dainippon Screen Mfg Co Ltd | Development support system, development support method and development support program |
-
2008
- 2008-06-04 JP JP2008146774A patent/JP5198154B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108981278A (en) * | 2017-05-31 | 2018-12-11 | 日立空调·家用电器株式会社 | The diagnostic method and terminal device of household appliance system, household appliance |
Also Published As
Publication number | Publication date |
---|---|
JP2009294837A (en) | 2009-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5198154B2 (en) | Fault monitoring system, device, monitoring apparatus, and fault monitoring method | |
US11269718B1 (en) | Root cause detection and corrective action diagnosis system | |
CN103201724B (en) | Providing application high availability in highly-available virtual machine environments | |
US10037238B2 (en) | System and method for encoding exception conditions included at a remediation database | |
CN108427616B (en) | Background program monitoring method and monitoring device | |
CN110324174B (en) | Block chain environment detection method, equipment, device and storage medium | |
CN102439568A (en) | System health and performance care of computing devices | |
CN112527484A (en) | Workflow breakpoint continuous running method and device, computer equipment and readable storage medium | |
CN114064208A (en) | Method and device for detecting application service state, electronic equipment and storage medium | |
CN102306119A (en) | System for capturing global exception and method | |
US12204401B2 (en) | Systems and methods for data-driven proactive detection and remediation of errors on endpoint computing systems | |
CN109144525A (en) | A kind of software installation method and system of network self-adapting | |
CN112256593A (en) | Program processing method and device, computer equipment and readable storage medium | |
CN114510381A (en) | Fault injection method, device, equipment and storage medium | |
CN115080834A (en) | Failure detection method and device for push link, electronic equipment and storage medium | |
JP2012230451A (en) | Network terminal failure handling system, terminal device, server device, network terminal failure handling method and program | |
CN115037653B (en) | Service flow monitoring method, device, electronic equipment and storage medium | |
JP5499484B2 (en) | Program correction system, terminal device, server device, program correction method, error detection program, and management program | |
JP4918669B2 (en) | Remote maintenance system and method and program | |
CN114205422A (en) | Non-invasive service processing method, device, equipment and storage medium | |
CN108845932B (en) | Unit testing method and device of network library, storage medium and terminal | |
CN114816969A (en) | Test case generation method, device, equipment and storage medium | |
CN119127723B (en) | Interface test method, system, terminal and medium for connecting multiple hong-Mongolian devices | |
US20240160506A1 (en) | Operation support apparatus, system, method, and computer-readable medium | |
CN117240681B (en) | Data packet processing method in LVS load balancing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110201 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120322 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120417 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120918 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120921 |
|
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: 20130205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130206 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160215 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |