説明

情報処理装置、情報処理方法、プログラム、記録媒体

【課題】状態遷移表を切り替えるデータパターンを予め定義しておき、このデータパターンが解析データから検出されることで状態遷移表を切り替え、障害の原因と対策を提示する。
【解決手段】本発明は、通信データの解析を行う情報処理装置であって、通信データの障害を特定するための状態遷移表を記録する記録手段と、解析対象となる通信データから解析データを作成する作成手段と、前記作成手段により作成された解析データから、予め定義される前記記録手段により記録される状態遷移表を切り替えるデータパターンを検出する検出手段と、前記検出手段により検出されたデータパターンに応じて前記前記記録手段により記録される状態遷移表を切り替えることで、障害の原因と対策を示す情報を表示する表示制御手段とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
EDIデータ交換装置において発生した障害の記録、検出及び解析の技術に関する。
【背景技術】
【0002】
近年、企業などにおいては受発注業務における業務効率化のために、電子商取引を行うEDIシステムが導入されている。その多くは、業務内容に即したファイルの転送を行うものだが、業界や取引相手先により、さまざまな通信プロトコルを使い分けなければならないケースが一般的である。
【0003】
そのため、障害が発生した場合これらのプロトコルに精通している要員の確保が困難であるので、原因の特定や復旧作業に多くの時間やコストが掛かってしまうだけでなく、ビジネスの機会を損失するリスクもあるのが現状である。
【0004】
このような、EDIデータ交換装置の障害を自動的に検出し、復旧の時間やコストを軽減する技術として、特許文献1及び2に示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平6−62088
【特許文献2】特開平4−10735
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1の技術では、解析データに1つの状態遷移表だけを用いる方法であり、複数のプロトコル(状態遷移表)が階層構造になっている場合には、対応できない。
【0007】
また、特許文献2の技術では、解析データはリアルタイムで出力される(実際の通信を行いながら)ため、解析作業中は運用者が常に監視する必要がある。
【0008】
本発明は、上記課題を解決するものであり、状態遷移表を切り替えるデータパターンを予め定義しておき、このデータパターンが解析データから検出されることで状態遷移表を切り替え、障害の原因と対策を提示することを可能とする。
【課題を解決するための手段】
【0009】
本発明は、通信データの解析を行う情報処理装置であって、通信データの障害を特定するための状態遷移表を記録する記録手段と、解析対象となる通信データから解析データを作成する作成手段と、前記作成手段により作成された解析データから、予め定義される前記記録手段により記録される状態遷移表を切り替えるデータパターンを検出する検出手段と、前記検出手段により検出されたデータパターンに応じて前記前記記録手段により記録される状態遷移表を切り替えることで、障害の原因と対策を示す情報を表示する表示制御手段とを有することを特徴とする。
【発明の効果】
【0010】
本発明によれば、状態遷移表を切り替えるデータパターンを予め定義しておき、このデータパターンが解析データから検出されることで状態遷移表を切り替え、障害の原因と対策を提示することが可能となる。
【図面の簡単な説明】
【0011】
【図1】本発明の実施形態におけるEDIシステムの構成を示す図である。
【図2】本発明の実施形態における各種端末のハードウェア構成を示す図である。
【図3】本発明の実施形態における運用管理サーバ101の機能ブロックを示す図である。
【図4】本発明の実施形態におけるEDIシステムの基本的な処理フローを示す図である。
【図5】本発明の実施形態におけるEDIシステムの解析データテーブルを示す図である。
【図6】本発明の実施形態におけるEDIシステムのエラー情報データテーブルを示す図である。
【図7】本発明の実施形態におけるEDIシステムの通信データ解析処理フローを示す図である。
【図8】本発明の実施形態におけるEDIシステムのプロトコル一覧を示す図である。
【図9】本発明の実施形態におけるEDIシステムのプロトコル属性テーブルを示す図である。
【図10】本発明の実施形態におけるEDIシステムのBSCイベント判定処理を示す図(1)である。
【図11】本発明の実施形態におけるEDIシステムのBSCイベント判定処理を示す図(2)である。
【図12】本発明の実施形態におけるEDIシステムのBSCイベント判定処理を示す図(3)である。
【図13】本発明の実施形態におけるEDIシステムのBSCイベント判定処理を示す図(4)である。
【図14】本発明の実施形態におけるEDIシステムのイベント判定テーブルを示す図である。
【図15】本発明の実施形態におけるEDIシステムのエラー解析処理フローを示す図である。
【図16】本発明の実施形態におけるEDIシステムのBSC透過状態遷移表を示す図(1)である。
【図17】本発明の実施形態におけるEDIシステムのBSC透過状態遷移表を示す図(2)である。
【図18】本発明の実施形態におけるEDIシステムの全銀手順状態遷移表を示す図である。
【図19】本発明の実施形態におけるEDIシステムの全銀TCPIPサブレイヤ状態遷移表を示す図である。
【図20】本発明の実施形態におけるEDIシステムの状態遷移表−判定処理を示す図である。
【図21】本発明の実施形態におけるEDIシステムのエラー詳細情報テーブルを示す図である。
【図22】本発明の実施形態におけるEDIシステムの全銀手順解析対象抽出処理を示す図である。
【発明を実施するための形態】
【0012】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【0013】
図1は、本発明の実施形態のEDIシステムの構成を示す図である。
【0014】
通信サーバ102とEDI端末103は、ネットワークを介して商取引に関する電子情報であるEDIデータを相互に交換する。運用管理サーバ101は、通信サーバ102が受信したデータを監視して、ジョブを実行する。
【0015】
なお、図1のネットワーク上に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【0016】
通信サーバ102は、EDI通信機能を有し、EDI端末103との間のデータ交換を行う。ここでいうデータ交換とは、通信可能なEDIプロトコルでEDIデータを送受信することを指す。
【0017】
次に、図1の運用管理サーバ101のハードウェア構成について、図2を用いて説明する。なお、通信サーバ102とEDI端末103のハードウェア構成については、同じであるので説明を省略する。
【0018】
図2は、本発明の実施形態における各種端末のハードウェア構成を示す図である。
【0019】
CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。
【0020】
また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。RAM203は、CPU201の主メモリ、ワークエリア等として機能する。
【0021】
CPU201は、処理の実行に際して必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現するものである。
【0022】
また、入力コントローラ(入力C)205は、キーボード209や不図示のマウス等のポインティングデバイスからの入力を制御する。
【0023】
ビデオコントローラ(VC)206は、CRTディスプレイ(CRT)210等の表示器への表示を制御する。表示器はCRTだけでなく、液晶ディスプレイでも構わない。これらは必要に応じて管理者が使用するものである。本発明には直接関係があるものではない。
【0024】
メモリコントローラ(MC)207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフロッピー(登録商標)ディスク或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ211へのアクセスを制御する。
【0025】
通信I/Fコントローラ(通信I/FC)208は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。
【0026】
なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT210上での表示を可能としている。また、CPU201は、CRT210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【0027】
本発明を実現するためのEDI運用管理プログラム212は外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。
【0028】
図3は、図1の運用管理サーバ101の構成を概略的に示す機能ブロック図である。これらの装置は主にWindows(登録商標)、UNIX(登録商標)などのOSを搭載したコンピュータを想定しているが、本発明では、使用OSは特定しない。
【0029】
通信制御部301は、通信実行と通信データを記憶部302に記録し、また通信中、記憶部304に記録した通信データを基に、主処理を実現するための機能である。また、その結果を表示部303の機能を呼び出し、表示させるものである。
【0030】
記憶部302は、通信中のデータ及び、通信終了後の通信データを読み込む機能と、書き込む機能を持つ。
【0031】
表示部303は、記憶部302から読み込まれた通信データを元に作成した、通信制御部301が作成したエラー情報データを表示するための機能である。
【0032】
図4は、本発明の実施形態のEDIシステムの基本的な処理フローを示す図である。
【0033】
まず、ステップS401において、運用管理サーバ101は、通信制御部が記憶部の通信データを基に解析データを作成する。そして、解析の結果、作成した解析データを、解析データテーブルに記録する。図5に解析データテーブルの一例を示す。
【0034】
解析データテーブル50は、セッションNo501、シーケンスNo502、インデックス503、方向504、日時505、データ長506、データイメージ507の項目を備える。
【0035】
次に、ステップS402において、運用管理サーバ101は、ステップS401で作成した解析データテーブル50から通信中に発生した全エラーを表示部で表示可能なエラー情報データを作成する。作成したエラー情報データは、エラー情報データテーブルに記録する。
【0036】
図6にエラー情報データテーブルの一例を示す。
【0037】
エラー情報データテーブル60は、セッションNo601、シーケンスNo602、プロトコル名603、イベント名604、エラーNo605の項目を備える。
【0038】
なお、詳細な処理の説明は後述する。
【0039】
最後に、ステップS403において、運用管理サーバ101は、ステップS402で作成したエラー情報データを表示部に表示する処理を行って、全体の処理を終了する。
【0040】
図7は、図4におけるステップS402の詳細フローを示す図である。ステップS402では、状態遷移表に記述された情報をもとに、解析データから通信中のエラーを示すエラー情報データを生成する処理である。
【0041】
ここでは、全銀BSC手順と全銀TCPIP手順の2つのプロトコルの解析処理が行える例を挙げて以下の説明を行う。全銀BSCで解析する場合は、図8に示すプロトコル一覧81を適用する。全銀TCPIPで解析する場合は、図8に示すプロトコル一覧82を適用する。具体的には、解析データテーブルのセッションNo.とプロトコル一覧を紐付けることで行う。なお、プロトコル一覧には、階層No801、プロトコルNo802の項目を備える。
【0042】
ステップS501において、運用管理サーバ101は、はじめに解析する対象のプロトコルNoを取得する。具体的には、値0をキーにし、プロトコル一覧81または82を検索する。一致したレコードのプロトコルNoを取得し、現在処理中のプロトコルNoをこの値で更新する。また、現在処理中のイベントコードを値0で更新する。例えば、全銀BSCの場合、プロトコル一覧81を適用する。そして、適用したプロトコル一覧81からプロトコルNo「1」の使用を決定する。
【0043】
ステップS702において、運用管理サーバ101は、現在処理中のセッションNoを運用者が指定した解析対象のセッションNoで、現在処理中のシーケンスNoを値0で更新する。具体的には、現在処理中のセッションNo「100」、シーケンスNo「0」となる。
【0044】
ステップS703において、運用管理サーバ101は、未処理の解析データレコードが存在するかをチェックする。ない場合は、処理を終了し、ある場合は、ステップS704へ進む。ここでは、具体的には、現在処理中のセッションNo及び、現在処理中のシーケンスNoに1を足した値をキーに解析データテーブル50を検索し、一致するレコードが存在しない場合は、解析対象となるすべての解析データレコードに対し解析済みと判断し、ステップS402の処理を終了する。一致するレコードが存在した場合はレコードのシーケンスNoで現在処理中のシーケンスNoを更新する。例えば、図5のセッションNo「100」、シーケンスNo「1」のレコードが最初の解析対象となる。
【0045】
ステップS704において、運用管理サーバ101は、解析データレコードのデータイメージを読み込む。例えば、図5のセッションNo「100」、シーケンスNo「1」のデータイメージを読み込む。なお、ステップS703で、一致するレコードが1つ以上存在する場合は、インデックスが最大であるものを読み込み対象とし、読み込む。→理由
ステップS705において、運用管理サーバ101は、ステップS704で読み込んだデータイメージの解析に必要なプロトコル属性を取得する。具体的には、現時処理中のプロトコルNoをキーにプロトコル属性テーブルを検索し、一致するレコードを取得する。図9にプロトコル属性テーブルの一例を示す。図9のプロトコル属性テーブル90の場合、プロトコルNo「1」の属性を解析に使用することが決まる。
【0046】
ステップS706において、運用管理サーバ101は、現在処理中のプロトコルでの解析範囲を取得する。具体的には、ステップS705で取得したレコードの解析範囲開始オフセット及び、解析範囲終了オフセットを取得する。このオフセットとは、ステップS704で読み込んだデータイメージの先頭を0とした値(バイト数)である(以下、本文中で述べるオフセットは同じ意味とする。)。
【0047】
ここで、全銀BSC手順と全銀TCPIP手順とで処理が異なる。
(1)全銀BSC手順の場合
全銀BSC手順の場合、最下層のプロトコルNo.は「1」となるので、図9のプロトコルNo「1」の解析範囲開始/終了オフセット値を取得すると、このオフセットは−1となる。負数の場合は、オフセットの値としては無効なので、この値は適用しない。このときは、プロトコル固有の処理の適用となり、絶対値が処理No.となる。例えば、全銀BSCの場合、解析範囲が一定ではないため、具体値を入れられない。その場合、解析範囲を同定する特殊処理の番号を負数で示す。この例の場合−1なので、処理番号1となる。そして、図10の処理が実行され、図10の処理終了後、解析データテーブル50にデータイメージがイベントコードのみであるレコードが追加される。
例えば、解析対象のデータ長が11バイト「323232322DFFFFFFFFFFFF」の場合、2バイト判定処理(図11)に移る。図11において、データは2バイト以上なので、1バイトコードパターンが存在するかをチェックする。このデータ内には「2D」というコードが含まれている。この結果2Dが発生した事象(イベント)となり、この結果を新規レコードとして解析テーブルに追加する。図5のセッションNo「100」、シーケンスNo「1」、インデックスNo「1」が追加されたレコードである。
(2)全銀TCPIP手順の場合
全銀TCPIP手順の場合、最下層のプロトコルNo.は4となるので、開始オフセットは0、終了オフセットは7となる。解析対象のデータセッションNo.101、シーケンスNo.1が解析対象レコードの場合解析の範囲は「004D100F00000000」となる。
【0048】
次に、ステップS707において、運用管理サーバ101は、現在処理中のプロトコルでのクオート処理(データ置換)処理の内容を取得する。具体的には、ステップS706の解析範囲内出現した、全てのクオート処理置換前コードパターンをクオート処理置換後コードパターンで置き換える。
【0049】
ここで、「クオート処理」とは、エスケープ処理で変換した結果を元に戻す処理である。また、「エスケープ処理」とは、プロトコル毎に決められている特殊に意味を持つコードを、通常のデータとして扱うための変換処理のことである。
【0050】
(1)全銀BSC手順の場合
全銀BSC手順の場合、現在処理中のプロトコルNoに依存する。
プロトコルNoが「1」の場合、クオート処理置換前コードパターン及び、クオート処理置換後コードパターンの記述がない。この場合はクオート処理を行わない。
プロトコルNoが「2」の場合、クオート処理置換前コードパターン「1010」、クオート処理置換後コードパターンは「10」なので、「1010」は「10」に置き換えられる。
(2)全銀TCPIP手順の場合
全銀TCPIP手順の場合、プロトコルNo「4」、「5」、「6」のいずれかが適用されるがいずれもクオート処理置換前コードパターン及び、クオート処理置換後コードパターンの記述がない。そのため、クオート処理は行われない。
【0051】
次に、ステップS708において、運用管理サーバ101は、現在処理中の解析データが、現在処理中のプロトコルで、どのイベントに該当するかを取得する。具体的には、ステップS705で取得したレコードのイベント判定位置開始オフセット及び、イベント判定位置終了オフセットを取得する。現在処理中の解析データにこの値の位置のコードを取得する。次に、このコードと現在処理中のプロトコルNoをキーにイベント判定テーブルを検索し、一致するレコードを取得する。一致するレコードが存在しない場合は、プロトコル上、定義されていないイベントが発生したとする。一致するレコードが存在した場合、現在処理中のイベントコードをこのコードで、更新する。図14にイベント判定テーブルの一例を示す。
【0052】
(1)全銀BSC手順の場合
全銀BSC手順の場合、最下層のプロトコルNoは「1」となるので、このオフセットの記述がない。この場合、イベント取得処理は行わない。
(2)全銀TCPIP手順の場合
全銀TCPIP手順の場合、最下層のプロトコルNoは「4」となるので、開始オフセットは2、終了オフセットも2となる。解析対象のデータセッションNo「101」、シーケンスNo「1」が解析対象レコードの場合イベントとするコードは、「10」となる。プロトコルNo「4」、及びコード「10」をキーとして、イベント判定テーブル1400を検索すると、全銀TCPIPサブレイヤのテキストイベントであることが分かる。現在処理中のイベントコードを「10」で更新する。
【0053】
次に、ステップS709において、運用管理サーバ101は、現在処理中のプロトコルに状態遷移表が存在するかを判定する。具体的には、ステップS705で取得したレコードの状態遷移表Noを取得する。存在する場合は、ステップS710へ進みエラー解析処理を行う。存在しない場合はステップS711へ進む。
【0054】
ステップS710において、運用管理サーバ101は、エラー解析処理を行う。本処理の詳細を、図15を用いて説明する。
【0055】
図15は、状態遷移表(図16乃至19を参照)を、状態Noイベントコードをキーにプロトコル上のエラーが、解析データレコードに発生しているかを調べる処理を示す図である。
【0056】
図16および17は、BSC透過状態遷移表(状態遷移表No.1)の一例を示す表である。
【0057】
図18は、全銀手順状態遷移表(状態遷移表No.2)の一例を示す表である。
【0058】
図19は、銀TCPIPサブレイヤ状態遷移表(状態遷移表No.3)の一例を示す表である。
【0059】
ステップS1501において、運用管理サーバ101は、状態遷移表Noと、状態Noイベントコードをキーとし、状態遷移表から取得したエラー判定処理の処理内容を実行する。
【0060】
図16(状態遷移表No.1)を例とすると、解析の最初なので、状態番号1(ENQ(2D)待ち)となる。
イベントコードはステップS708で取得されていないので、セッションNo「100」、シーケンスNo「1」で解析データテーブル50を検索すると、該当のレコードが2件見つかる。このうちインデックスNoが最大のものをイベントコードとする。この場合イベントコードは(ENQ(2D))となる。この2つの条件に一致するエラー判定条件処理を実行する。この場合、図20の処理が実行される。
【0061】
ステップS2001において、運用管理サーバ101は、現在処理中のセッションNo.と1つ大きいシーケンスNo.をキーに解析データテーブル50を検索する。
【0062】
ステップS2002において、運用管理サーバ101は、解析データがあるかを判定する。Yesの場合、2005へ進み、Noの場合、2003へ進む。
【0063】
ステップS2003において、運用管理サーバ101は、解析データの方向(受信/送信)を取得する。
【0064】
ステップS2004において、運用管理サーバ101は、BSCイベント判定処理を行う。この処理は、図10に示す処理である。
【0065】
図10乃至13を用いて、BSCイベント判定処理の詳細を説明する。
【0066】
ステップS1001において、運用管理サーバ101は、データは2バイト以上かを判定する。Yesの場合、ステップS1007へ進み、Noの場合、ステップS1002へ進む。
【0067】
ステップS1002において、運用管理サーバ101は、1バイトコードがあるかを判定する。Yesの場合、ステップS1003へ進み、Noの場合、ステップS1006へ進む。
【0068】
ステップS1003において、運用管理サーバ101は、1バイトイベントとする。
【0069】
ステップS1004において、運用管理サーバ101は、同定したイベントコードをデータイメージに格納したレコードを解析データテーブルに追加する。セッションNo.シーケンスNo.は現在値としインデックス値を+1とする。
【0070】
ステップS1005において、運用管理サーバ101は、現在処理中のイベントコードを更新する。
【0071】
ステップS1006において、運用管理サーバ101は、不正イベントとする。
【0072】
ステップS1007において、運用管理サーバ101は、2バイト判定処理を行う。この処理の詳細は、後に説明する。
【0073】
ステップS1008において、運用管理サーバ101は、不正イベントであるかを判定する。Yesの場合、ステップS1006へ進み、Noの場合、ステップS1009へ進む。
【0074】
ステップS1009において、運用管理サーバ101は、1/2バイトまた電文イベントとする。
【0075】
図11は、2バイト判定処理の詳細なフローである。
【0076】
ステップS1101において、運用管理サーバ101は、データは2バイトであるかを判定する。Yesの場合、ステップS1102へ進み、Noの場合、ステップS1105へ進む。
【0077】
ステップS1102において、運用管理サーバ101は、1バイトコードパターンa)、b)があるかを判定する。Yesの場合、ステップS1103へ進み、Noの場合、ステップS1104へ進む。
【0078】
ステップS1103において、運用管理サーバ101は、1バイトイベントとする。
【0079】
ステップS1104において、運用管理サーバ101は、不正イベントとする。
【0080】
ステップS1105において、運用管理サーバ101は、3バイト判定処理を行う。この処理の詳細は、後に説明する。
【0081】
ステップS1106において、運用管理サーバ101は、不正イベントであるかを判定する。Yesの場合、ステップS1104へ進み、Noの場合、ステップS1107へ進む。
【0082】
ステップS1107において、運用管理サーバ101は、1また2バイトイベントとする。
【0083】
図12は、3バイト判定処理の詳細なフローである。
【0084】
ステップS1201において、運用管理サーバ101は、データは3バイトであるかを判定する。Yesの場合、ステップS1202へ進み、Noの場合、ステップS1205へ進む。
【0085】
ステップS1202において、運用管理サーバ101は、1バイトコードパターンc)または2バイトコードパターンa)、b)があるかを判定する。Yesの場合、ステップS1203へ進み、Noの場合、ステップS1204へ進む。
【0086】
ステップS1203において、運用管理サーバ101は、1また2バイトイベントとする。
【0087】
ステップS1204において、運用管理サーバ101は、不正イベントとする。
【0088】
ステップS1205において、運用管理サーバ101は、4バイト判定処理を行う。この処理の詳細は、後に説明する。
【0089】
ステップS1206において、運用管理サーバ101は、不正イベントであるかを判定する。Yesの場合、ステップS1204へ進み、Noの場合、ステップS1207へ進む。
【0090】
ステップS1207において、運用管理サーバ101は、2また電文(1002)イベントとする。
【0091】
図13は、4バイト判定処理の詳細なフローである。
【0092】
ステップS1301において、運用管理サーバ101は、データは4バイトであるかを判定する。Yesの場合、ステップS1302へ進み、Noの場合、ステップS1305へ進む。
【0093】
ステップS1302において、運用管理サーバ101は、2バイトコードパターンc)があるかを判定する。Yesの場合、ステップS1303へ進み、Noの場合、ステップS1304へ進む。
【0094】
ステップS1303において、運用管理サーバ101は、2バイトイベントとする。
【0095】
ステップS1304において、運用管理サーバ101は、不正イベントとする。
【0096】
ステップS1305において、運用管理サーバ101は、電文コードパターンがあるかを判定する。Yesの場合、ステップS1304へ進み、Noの場合、ステップS1306へ進む。
【0097】
ステップS1306において、運用管理サーバ101は、電文イベントとする。
【0098】
ステップS1307において、運用管理サーバ101は、解析データテーブルに新規レコードを追加する。
【0099】
次に、ステップS2005において、運用管理サーバ101は、解析データなしとする。
【0100】
ステップS2006において、運用管理サーバ101は、現在処理中のセッションNo、シーケンスNo.をキーに解析データテーブルを検索し、最大インデックスのレコードのイメージデータを再読み込みする。
【0101】
例えば、現在処理中のセッションNo「100」、シーケンスNo「1」+「1」=「2」を条件に解析データテーブル50を検索する。この例では2レコード目が取得できる。このレコードから送信、データ長13バイトが解り、データイメージを図10の処理に適用することとなる。
【0102】
この結果、解析データテーブル50にセッションNo「100」、シーケンスNo「2」、インデックスNo「1」のレコードが追加される。
【0103】
この後、セッションNo「100」、シーケンスNo「2」で解析データテーブル50を検索すると、該当レコードが2件見つかる。このうちインデックスNoが最大のものをイベントコードとする。この場合イベントコードは(ACK0−1070)となる。
【0104】
次に、ステップS1502において、運用管理サーバ101は、同じ状態遷移表の判定条件をステップS1501で取得したイベントコードをキーに検索する。検索した結果、異常の条件と一致した場合は、ステップS1504へ、正常の条件と一致した場合はステップS1503へ処理が進む。例えば、図20の処理結果より、ACK0を送信したことが解る。判定条件に照らし合わせると、これは正常であることが解る。
【0105】
ステップS1503において、運用管理サーバ101は、現在処理中の状態遷移表Noと、状態Noイベントコードをキーとし、状態遷移表から取得したエラー判定処理の判定結果(正常:遷移先状態No.)から、状態遷移表の状態Noを遷移先状態Noで更新する。正常なので、遷移先状態Noは「2」であるので状態番号を「2」で更新する。
【0106】
S1504において、運用管理サーバ101は、現在処理中の解析データレコードのセッションNo及びシーケンスNoを取得する。また、現在処理中の状態遷移表Noと、状態Noイベントコードをキーとし、状態遷移表から取得したエラー判定処理の判定結果(異常:エラーNo.)から、エラー情報データレコードを作成し、エラー情報データテーブル60の最後尾に追加する。
【0107】
次に、ステップS711において、運用管理サーバ101は、上位プロトコルへの切り替えが発生するかを取得する。具体的には、ステップS708で判定した、現在処理中のイベントコードと、プロトコルNo.をキーにイベント判定テーブル1400を検索する。一致するレコードが存在しないか、または一致するレコードがあった場合でも、レコードの上位遷移先階層No.が存在しない場合は、上位の状態遷移表への切り替えは発生しないので、ステップS714へ進む。
【0108】
反対に一致するレコードが存在し、かつレコードの上位遷移先階層No.が存在する場合は上位の状態遷移表への切り替えが発生する。その場合、ステップS712とステップS713で上位遷移先階層No.をキーにプロトコル一覧テーブルを検索し、一致したレコードのプロトコルNo.を取得する。取得したプロトコルNo.で現在処理中のプロトコルNo.を更新し、ステップS705へ戻る。
【0109】
例えば、現在処理中のセッションNo「100」、シーケンスNo「1」で解析データテーブル50を検索すると、該当のレコードが2件見つかる。このうちインデックスNoが最大のものをイベントコードとする。この場合イベントコードは(ENQ−2D)となる。イベント判定テーブル1400上のプロトコルNo「1」に「2D」のコードは存在しないので、階層の移動は発生しない。
【0110】
次に、ステップS714において、運用管理サーバ101は、下位プロトコルへの切り替えが発生するかを取得する。具体的には、ステップS708で判定した、現在処理中のイベントコードと、プロトコルNo.をキーにイベント判定テーブル1400を検索する。一致するレコードが存在しないか、または一致するレコードがあった場合でも、レコードの下位遷移先階層No.が存在しない場合は、下位の状態遷移表への切り替えは発生しないので、ステップS703へ戻る。
【0111】
反対に一致するレコードが存在し、かつレコードの下位遷移先階層No.が存在する場合は下位の状態遷移表への切り替えが発生する。その場合、ステップS715とステップS716で下位遷移先階層No.をキーにプロトコル一覧テーブルを検索し、一致したレコードのプロトコルNo.を取得する。取得したプロトコルNo.で現在処理中のプロトコルNo.を更新し、ステップS703へ戻る。
【0112】
ステップS703において、ここまでの繰り返しで、発生した全エラーのエラー情報データテーブルが作成される。
【0113】
エラー詳細情報テーブル2100は、ステップS720で作成されたエラー情報データレコードの状態遷移表No.とエラーNo.をキーに検索され、一致したレコードの詳細情報1と詳細情報2が取得される。取得された詳細情報1および2は、ステップS403で通信制御部301が表示部303にエラー情報を表示させる際に使用される。
【0114】
以上、図4におけるステップS402の詳細フローを説明した。
【0115】
上述した通り、本発明によれば、状態遷移表を切り替えるデータパターンを予め定義しておき、このデータパターンが解析データから検出されることで状態遷移表を切り替え、障害の原因と対策を提示することが可能となる。
【0116】
また、本発明では解析データを通信セッション毎に記録・蓄積しておくため、解析作業中は運用者が常に監視する必要がないだけでなく、発生頻度が少ない、潜在的な障害も洩らすことなく検出し、原因の特定及び対策の提示が可能となる。
【0117】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【0118】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【符号の説明】
【0119】
101 運用管理サーバ
102 通信サーバ
103 EDI端末
104 ネットワーク

【特許請求の範囲】
【請求項1】
通信データの解析を行う情報処理装置であって、
通信データの障害を特定するための状態遷移表を記録する記録手段と、
解析対象となる通信データから解析データを作成する作成手段と、
前記作成手段により作成された解析データから、予め定義される前記記録手段により記録される状態遷移表を切り替えるデータパターンを検出する検出手段と、
前記検出手段により検出されたデータパターンに応じて前記前記記録手段により記録される状態遷移表を切り替えることで、障害の原因と対策を示す情報を表示する表示制御手段と
を有することを特徴とする情報処理装置。
【請求項2】
前記記憶手段により記憶される状態遷移表は、プロトコル毎に記録され、
前記表示制御手段は、それぞれのプロトコル毎に障害の原因と対策を提示することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
通信データの障害を特定するための状態遷移表を記録する記録手段を有し、通信データの解析を行う情報処理装置における情報処理方法であって、
解析対象となる通信データから解析データを作成する作成ステップと、
前記作成ステップにより作成された解析データから、予め定義される前記記録手段により記録される状態遷移表を切り替えるデータパターンを検出する検出ステップと、
前記検出ステップにより検出されたデータパターンに応じて前記前記記録手段により記録される状態遷移表を切り替えることで、障害の原因と対策を示す情報を表示する表示制御ステップと
を有することを特徴とする情報処理方法。
【請求項4】
通信データの解析を行う情報処理装置において実行可能なプログラムであって、
通信データの障害を特定するための状態遷移表を記録する記録手段、
解析対象となる通信データから解析データを作成する作成手段、
前記作成手段により作成された解析データから、予め定義される前記記録手段により記録される状態遷移表を切り替えるデータパターンを検出する検出手段、
前記検出手段により検出されたデータパターンに応じて前記前記記録手段により記録される状態遷移表を切り替えることで、障害の原因と対策を示す情報を表示する表示制御手段
として前記情報処理装置を機能させることを特徴とするプログラム。
【請求項5】
請求項4に記載のプログラムをコンピュータ読み取り可能に記憶した記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate


【公開番号】特開2012−141710(P2012−141710A)
【公開日】平成24年7月26日(2012.7.26)
【国際特許分類】
【出願番号】特願2010−293041(P2010−293041)
【出願日】平成22年12月28日(2010.12.28)
【出願人】(390002761)キヤノンマーケティングジャパン株式会社 (656)
【出願人】(312000206)キヤノンMJアイティグループホールディングス株式会社 (259)
【出願人】(592135203)キヤノンITソリューションズ株式会社 (528)
【Fターム(参考)】