JP2005346414A - トレース処理プログラム、方法及び装置 - Google Patents

トレース処理プログラム、方法及び装置 Download PDF

Info

Publication number
JP2005346414A
JP2005346414A JP2004165319A JP2004165319A JP2005346414A JP 2005346414 A JP2005346414 A JP 2005346414A JP 2004165319 A JP2004165319 A JP 2004165319A JP 2004165319 A JP2004165319 A JP 2004165319A JP 2005346414 A JP2005346414 A JP 2005346414A
Authority
JP
Japan
Prior art keywords
trace
request message
application
relay
condition
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.)
Pending
Application number
JP2004165319A
Other languages
English (en)
Inventor
Kenichi Shimazaki
健一 島崎
Koji Ishibashi
宏司 石橋
Masaya Shindo
正哉 進藤
Shinji Watanabe
真二 渡邉
Kotaro Tsuro
光太郎 津呂
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004165319A priority Critical patent/JP2005346414A/ja
Priority to US10/955,887 priority patent/US8543988B2/en
Publication of JP2005346414A publication Critical patent/JP2005346414A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】トレース採取のオーバヘッドを最小にしてボトルネックを迅速に特定可能とする。
【解決手段】分散型アプリケーションシステムは、階層配置された複数のサーバ上で動作する複数のアプリケーションを有し、クライアント24から要求電文を受信した際に、アプリケーション間でリレーコードを順番に受け渡しながら処理を実行する。トレース条件埋込部28は、要求電文を受信した際に、リレーコードにトレース採取条件を埋め込んで次のアプリケーションに受け渡す。トレース採取部30−1〜30−3は、その指示に従ったトレース処理を行う。トレース採取条件には、トレース採取の有無、トレース範囲のアプリケーション単位の指示、通過したアプリケーションの記録が含まれる。更に、要求電文の受信回数に対しトレースを採取する割合を指示する間欠スイッチ情報も含む。
【選択図】 図1

Description

本発明は、ネットワーク経由でアプリケーションサービスを実現する分散型アプリケーションシステムのトレース処理プログラム、方法及び装置に関し、特に、トレースを採取してレスポンス悪化の原因となったボトルネック箇所を特定するトレース処理プログラム、方法及び装置に関する発明である。
ネットワーク対応の分散型アプリケーションシステムは、複数のサーバが多階層で構成され、かつ、その上で動作するアプリケーションも複雑に組み合わされ、それぞれが連携して動作することにより一つのサービスが実現される。
このような複雑な分散型アプリケーションシステムにおいて、レスポンス悪化の原因となったボトルネック箇所を特定するには、アプリケーションの振る舞いを記録したトレース情報を時系列に並べて繋ぎ合わせるなどして調査、分析を行っている。
トレース情報の採取は、通常、実行されたアプリケーション(プログラムもしくはプログラム内のモジュールなども含む)の呼び出された時の入口ポイントと処理を終了するときの出口ポイントで、各ポイントを通過した時の時刻情報と共に記録され、蓄積される。
図16は従来のトレース情報の採取であり、ウェブサーバ200、アプリケーションサーバ202、データベースサーバ204、データベース206が階層構成で配置され、クライアントからの要求電文は、各サーバのアプリケーションの実行で処理され、データベース206の検索等による応答が行われる。
トレース情報は実行されたアプリケーションの入口と出口となるポイントP1〜P12のそれぞれで採取される。ここでトランザクションレスポンスt1が悪化した場合には、トレース情報から得られた各サーバのトランザクションレスポンスw1、w2、a1、a2、d1、d2について、正常時と比較することで、ボトルネック箇所を特定することができる。
また、複雑に組み合わせれた各アプリケーションが、どのような呼び出し関係で連動していったかを調べるためのトレース情報の繋ぎ合わせを容易にするために、入口と出口の時間情報だけではなく、図17に示すように、次に呼び出すアプリケーションの情報についても記録するなど、記録する情報に工夫があるものなどがある。図17(A)はトランザクションの分配の例であり、これに対応して図17(B)のように、各アプリケーションの呼び出し階層情報を生成している。
特開平1−277940号公報 特開平4−84234号公報 特開2001−318809号公報
しかしながら、従来の分散型アプリケーションシステムのトレース処理方法には、以下のような問題がある。まず従来のトレース処理方法は、オーバヘッドが大きすぎる。分散型アプリケーションシステムでトレースの対象となる各アプリケーションの入口情報と出口情報、呼び出し関係情報などの情報は、非常に膨大な量の情報となり、システムへのオーバヘッドも無視できないくらいに発生する。
このため、不測の事態に備えて常時トレースを収集しておくという運用は実質不可能になっており、トラブルが発生した後で、システムになるべく影響が出ない範囲でトレースを収集するなどの運用しかできないため、ボトルネックの原因追求に時間がかかる原因になっている。
また従来のトレース処理方法は、分散型アプリケーションシステムにおける運用が煩雑である。図18において、分散型アプリケーションシステムを対象にトレース情報を収集する場合、トレースの有無を指示するスイッチ208、210、212を各サーバ200、202、204におけるシステムや各アプリケーションごとに装備している。このためトラブルが発生した後でトレースを収集しようとなると、管理者はいくつものスイッチを入れる必要があり、かつ、どのスイッチを入れれば良いのか判断が必要になるため、非常に煩雑な運用を強いられている。
本発明は、トレース採取のオーバヘッドを最小にしてボトルネックを迅速に特定可能とする分散アプリケーションシステムを対象としたトレース処理方法、プログラム及び装置を提供することを目的とする。
図1は本発明の原理説明図である。本発明は、クライアントの要求電文を最初に処理する第1階層のアプリケーションを備えたサーバを構成するコンピュータにより実行されるシレース処理プログラムを提供する。このプログラムは、
クライアントから前記要求電文を受信した際に、トレース採取の有無を指示するスイッチ情報を含む予め設定されたトレース採取条件を前記リレーコードに埋め込んで次のアプリケーションに受け渡すトレース条件埋込ステップと、
リレーコードに埋め込むトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理すると共に、他のアプリケーションから要求電文を受信した際に、要求電文のリレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取ステップと、
を実行させることを特徴とする。
本発明は、クライアントの要求電文を2回目以降に処理する第2階層以降のアプリケーションを備えたサーバを構成するコンピュータにより実行されるトレース処理プログラムを提供する。このプログラムは、他のアプリケーションから要求電文を受信した際に、要求電文のリレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取ステップを実行させることを特徴とする。
ここで、トレース条件埋込ステップは、トレース採取条件として、更に、トレースを採取する範囲をアプリケーション単位に指示する機能IDと、通過したアプリケーションを記録するリレーIDを含むことを特徴とする。
トレース条件埋込ステップは、スイッチ情報でトレース採取有りを指示した際にユニークなリレーIDを生成し、トレース採取ステップは、次に呼び出すアプリケーションの識別子をリレーIDの後ろに繋げていく。
トレース条件埋込ステップは、トレース採取条件として、更に、スイッチ情報によるトレース採取有りの指示状態で要求電文の受信回数に対しトレースを採取する割合を指示する間欠スイッチ情報を含み、間欠スイッチ情報の割合に従ってリレーコードにトレース採取条件を埋め込む。
間欠スイッチ情報は、要求電文のルートを識別し、識別したルート毎に要求電文の受信回数に対しトレースを採取する割合を指示することもできる。間欠スイッチは要求電文の受信回数に対しトレースを採取する割合を0パーセント乃至100パーセントの範囲で指示する。
分析表示ステップは、トレース採取ステップにより各アプリケーションで採取されたトレース情報から、リレーIDに従ったルートのトレース情報を抽出して時刻順にソートし、ソート結果に基づきルートと各アプリケーションと処理の関係を生成して表示させる。
具体的には、分析表示ステップは、要求電文を受信してから次に引き渡すまでの処理時間を通過ポイントとなる各アプリケーションに対応して表示させる。また分析表示ステップは、入口のアプリケーションが要求電文を受信してから応答するまでの合計処理時間に対し、各アプリケーションが要求電文を受信して次に引き渡すまでの処理時間の割合を通過ポイントとなる各アプリケーションに対応して表示させても良い。
本発明は、階層配置された複数のサーバ上で動作する複数のアプリケーションを有し、クライアント24から要求電文を受信した際に、アプリケーション間でリレーコードを順番に受け渡しながら処理を実行して応答する分散型アプリケーションシステムのトレース処理方法を対象し、
要求電文を受信した際に、トレース採取の有無を指示するスイッチ情報を含む予め設定されたトレース採取条件をリレーコードに埋め込んで次のアプリケーションに受け渡すトレース条件埋込ステップと、
アプリケーションの各々に設けられ、要求電文の受信時にリレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取ステップと、
を備えたことを特徴とする。
本発明は、階層配置された複数のサーバ上で動作する複数のアプリケーション処理部を有し、クライアント24から要求電文を受信した際に、アプリケーション処理部26、34、36の間でリレーコードを順番に受け渡しながら処理を実行して応答する分散アプリケーションのトレース処理装置を対象とし、要求電文を受信した際に、トレース採取の有無を指示するスイッチ情報を含む予め設定されたトレース採取条件をリレーコードに埋め込んで次のアプリケーションに受け渡すトレース条件埋込部28と、アプリケーション処理部26、34、36の各々に設けられ、要求電文の受信時にリレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取部30−1〜30−3とを備えたことを特徴とする。
なお、本発明のトレース処理方法及び装置の詳細は、基本的にトレース処理プログラムと同じになる。
本発明によれば、分散型アプリケーションシステムにおいて、トレース採取によるオーバヘッドを最小化および局所化できるため、常時トレースを採取する運用が実現でき、トラブル発生時に迅速にボトルネックの特定が可能となる。
また、分散型アプリケーションシステムは、入り組んでいて複雑な構成であるため、どこでどのようなアプリケーションが動作しているのかなかなか分からないといった問題もある。このような問題に対しても、本発明は、アプリケーションが連動して動作する様子を、簡単に把握することができる。
図2は、本発明のトレース処理が適用される分散型アプリケーションシステムの説明図である。図2において、分散型アプリケーションシステム10は複数のサーバを階層配置している。この例にあっては、インターネット22を介してクライアント24からの要求電文を受けるシステムの入口側にウェブサーバ12−1、12−2、12−3、12−4を設けており、次の階層にアプリケーションサーバ14−1、14−2、14−3、14−4を設け、更に3番目の階層にデータベースサーバ16−1、16−2を設け、データベースサーバ16−1、16−2に対しデータベース18−1、18−2をそれぞれ接続している。
分散型アプリケーションシステム10における階層配置されたウェブサーバ12−1〜12−4、アプリケーションサーバ14−1〜14−4及びデータベースサーバ16−1、16−2の間は、相互に入出力接続されており、データベース18−1、18−2の例えば検索などにおいて、階層配置されたアプリケーションを辿る複雑な処理経路を経て要求電文に対する処理を実行して応答することになる。
分散型アプリケーションシステム10を構築する階層配置された複数のサーバにあっては、クライアント24からインターネット22を介して入口側のウェブサーバ12−1〜12−4で要求電文を受信した際に、アプリケーション間でリレーコードと呼ばれるキーワードを順番に受け渡しながら動作するようになる。
分散型アプリケーションシステム10を構成する階層配置されたサーバに対しては管理サーバ20が設けられる。管理サーバ20は、入口側に位置するウェブサーバ12−1〜12−4に対し、クライアント24からの要求電文に付加してアプリケーション間で受け渡すリレーコードに埋め込むトレース採取条件の設定を行う。また管理サーバ20は必要に応じて、各サーバ14に蓄積されているトレース情報を収集して分析表示する処理を行う。
図3は、本発明によるトレース処理の機能構成のブロック図であり、図2の分散型アプリケーションシステム10におけるクライアント24からデータベース18までの1系統について取り出して示している。
図3において、クライアント24からの要求電文は、インターネット22を介して入口側に位置するウェブサーバ12で受信され、ウェブサーバ12のアプリケーション、次のアプリケーションサーバ14のアプリケーション、更にデータベースサーバ16のアプリケーションの実行を経て、データベース18のアクセスを行い、アクセス結果を、データベースサーバ16のアプリケーション、アプリケーションサーバ14のアプリケーション、更にウェブサーバ12のアプリケーションを経由して、クライアント24側に応答することになる。
このため、ウェブサーバ12、アプリケーションサーバ14及びデータベースサーバ16のそれぞれには、アプリケーションプログラムとして機能するアプリケーション処理部26、34、36が設けられている。
分散型アプリケーションシステム10の入口に位置するウェブサーバ12にはトレース条件埋込部28が設けられている。トレース条件埋込部28は、クライアント24から要求電文を受信した際に、アプリケーション間で受け渡すリレーコードに管理サーバ20の管理コンソール38の操作で予め設定されたトレース採取条件を埋め込んで、次のアプリケーションサーバ14のアプリケーション処理部34に受け渡す。
トレース採取部30−1、30−2、30−3は、リレーコードに埋め込まれるトレース採取条件に基づきトレース採取の有無を判別し、トレース指示があれば、要求電文の受信に基づくアプリケーション処理部26、34、36のトランザクションの実行に伴うトレース情報を採取して、トレースファイル32−1、32−2、32−3に蓄積する。トレース採取の指示がなければトレース採取は行わず、即ちトレースは無視されることになる。
図4は、図3のウェブサーバ12に設けているトレース条件埋込部28の機能構成のブロック図である。図4において、トレース条件埋込部28には、トレース採取条件記憶部42、間接スイッチ処理部44、リレーID生成部45、トレース採取条件コード保持部46及びトレース採取条件コード埋込部48が設けられる。
トレース採取条件記憶部42には、図3の管理サーバ20に設けた管理コンソール38の操作によりスイッチ66、機能ID68及びリレーID70がトレース採取条件として記憶される。トレース採取条件記憶部42に記憶されたスイッチ66はトレースのオン又はオフを指示しており、この指示により図3のアプリケーション処理部26がクライアント24から要求電文を受信して処理を実行した際に、トレースを採取するか採取しないかが決められる。
図5は、図4のトレース採取条件記憶部42に管理コンソール38からの指示で設定されるトレース採取条件及び間接スイッチ情報の説明図である。図5(A)のトレース採取条件64にあっては、埋込情報として、スイッチ66、機能ID68及びリレーID70の3つを備えている。
スイッチ66はサイズが4バイト、機能ID68はサイズが同じく4バイト、更にリレーID70は可変長である。スイッチ66はトレースを採取するか採取しないかのオン、オフを指示する。スイッチ66は図3のように第1階層のアプリケーションを実行するアプリケーション処理部26を備えたウェブサーバ12に対してのみトレースのオンまたはオフを設定し、トレース採取のためにウェブサーバ12に対し一度オンしておけば、スイッチ66を含むトレース採取条件はアプリケーション間で受け渡されるリレーコードに埋め込まれて後続する第2階層以降のアプリケーションに送られる。
このため後続するアプリケーション処理部34、36においては、管理コンソール38側からスイッチ操作を行わなくても、リレーコードに埋設されたトレース採取条件64のスイッチ66の指示に基づき自動的にトレース採取が行われる。このためスイッチ66はアプリケーション間におけるトレース採取の連動スイッチとして機能することになる。
機能ID68は、特定の機能に対してのみトレースを採取するようにトレース範囲を決定する。このため要求電文の受信に伴う一連のアプリケーションのルートにおいて、特定のアプリケーションについてのみトレース採取を指定することができる。
リレーID70は、トレース情報の分析時にアプリケーションの呼出し関係を繋ぎ合わせるための情報であり、リレーID70を追いかけることで、ある要求電文がどのようなアプリケーションのルートを通過したかが分析できる。リレーID70としては、初期値としては分散型アプリケーションシステム内でユニークなID、例えばタイムスタンプにプロセスIDを加えたIDが作成され、その後はアプリケーションを通過するごとに、次に呼び出すアプリケーションの識別子を後ろに繋げていくようにする。
図6は、本発明のトレース処理におけるリレーIDの説明図であり、入口側となる第1階層にアプリケーション74が位置し、第2階層にアプリケーション75、76が位置し、第3階層にアプリケーション78、80、82が位置した場合である。第1階層のアプリケーション74に対する要求電文の受信があると、図5(A)のトレース採取条件を埋め込んだリレーコードが付加され、このときのリレーIDは分散型アプリケーションシステムにユニークなIDとして「123」を作成する。
続いて、第1階層のアプリケーション74から第2階層のアプリケーション75またはアプリケーション76に、リレーコードを付加した要求電文が引き渡されるが、アプリケーション75に受け渡す際には、最初のリレーID「123」にアプリケーション75の識別子「b1」を付加したリレーID「123.b1」とする。またアプリケーション76に受け渡す際にはアプリケーション76の識別子「b2」を付加したリレーID「123.b2」とする。
同様に第2階層のアプリケーション75から第3階層のアプリケーション78に受け渡す際にはリレーIDは「123.b1.c1」となり、第2階層のアプリケーション76から第3階層のアプリケーション80に受け渡す場合にはリレーIDは「123.b2.c2」となる。更に第2階層のアプリケーション76から第3階層のアプリケーション82に受け渡す場合にはリレーIDは「123.b2.c3」となる。
このようなリレーIDは、各階層のアプリケーションにおいてトレース採取に伴うトレースデータと共に保存されており、トレース情報を管理サーバで収集した際にリレーIDを追っていくことで、ある要求電文がどのようなルートで各アプリケーションを通過したかが分析できる。
再び図4を参照するに、間接スイッチ処理部44はトレース採取条件記憶部42に記憶されたオン状態を記憶したスイッチ66を要求電文受信カウントが得られる毎に読出し、管理コンソール38からの指示で記憶された間接スイッチ情報に基づいて、例えば「1%スイッチ」であれば、100回の要求電文受信カウントの内、1回はスイッチオンとし、残り99回はスイッチオフとしてトレース採取条件コード保持部46にスイッチ66−1として書き込む。
図5(B)は間接スイッチ処理部44に管理コンソール38により設定される間欠スイッチ情報の説明図である。間欠スイッチ情報72は、設定情報として間欠スイッチがセットされ、設定内容としては「n%スイッチ」としてnの値が指定される。間欠スイッチ情報72における「n%スイッチ」は、nの値を0〜100%の範囲で任意に設定することができる。
「n%スイッチ」は例えば「1%スイッチ」や「0.1%スイッチ」などが設定される。「1%スイッチ」の場合、要求電文の受信回数100回に対し、1回の割合でスイッチオンとしたトレース採取条件をリレーコードに埋め込んで次のアプリケーションに受け渡す。
また「0.1%スイッチ」の場合には、要求電文の受信回数1000回に1回の割合でスイッチオンとしたトレース採取条件をリレーコードに埋め込んで、次のアプリケーションに受け渡す。このような間欠スイッチ情報72の設定により、要求電文に対するトレース採取の割合を少なくして分散型アプリケーションシステムにかけるオーバヘッドを最小化し、且つ通常の運用中であっても常時、トレースを採取する運用が実現できる。
間欠スイッチ情報72における「n%スイッチ」は、nの値を0〜100%の範囲で任意に設定することができるため、「0%スイッチ」を設定した場合には、トレース採取は全く行わない運用となる。また「100%スイッチ」を設定した場合には、全ての要求電文につきトレース情報を採取する運用となり、これは間接スイッチ処理部44の機能をなくしたことに相当する。
「n%スイッチ」によるトレース採取の割合は次の2つの方法とする。
(1)等間隔トレース採取
(2)ランダムトレース採取
例えば「0.5%スイッチ」を例にとると、要求電文の受信回数1000回のうち5回につきトレーススイッチをオンとしたトレース採取を行うが、等間隔トレース採取にあっては、200回目、400回目、600回目、800回目及び1000回目にトレース採取を行う。
これに対しランダムトレース採取にあっては、要求電文の受信回数1000回に対し乱数を使用して例えば142回目、262回目、438回目、626回目及び854回目にトレース採取を行う。このランダムトレース採取によれば、等間隔トレース採取に比べ処理が複雑になるが、トレース情報の周期的な依存性を低減できる利点がある。
更に分散型アプリケーションシステムにあっては、要求電文の内容によっては異なったルートでアプリケーションを順番に実行することとなり、アプリケーションのルートが異なる場合にはルートごとに間欠スイッチ情報72を設定することになる。ルートごとの間欠スイッチ情報の設定は、要求電文の種別によりルートが決まることから、要求電文の種別を判別して、対応する間欠スイッチ情報の割合でスイッチオンとなるトレース採取条件をリレーコードに埋め込めばよい。
この結果、ルートの異なる多種多様な要求電文が混在する分散型アプリケーションシステムであっても、ルートごとにトレース採取を行う割合を間接スイッチ情報により設定し、各ルートごとのオーバヘッドを最小化した状態で、通常の運用中における常時トレース採取が可能となる。
再び図4を参照するに、リレーID生成部45はトレース採取条件記憶部42に記憶されたシステムにユニークなリレーID70に次に受け渡すアプリケーションの識別子を付加してトレース採取条件コード保持部46にリレーID70−1として書き込む。なお、トレース採取条件記憶部42に記憶された機能ID68はそのままトレース採取条件コード保持部46に書き込む。
トレース採取条件コード埋込部48は、クライアントからの要求電文を受信したアプリケーション処理部26が処理を実行して次のアプリケーションに引き渡す際に、要求電文に付加するリレーコードを入力してトレース採取条件コード保持部46に保持しているスイッチ66−1、機能ID68及びリレーID70−1で構成されたトレース採取条件コードをリレーコードに埋め込んで出力する。
再び図3を参照するに、入口のウェブサーバ12に続くアプリケーションサーバ14及びデータベースサーバ16にあっては、トレース採取部30−2、30−3とトレースファイル32−2、32−3が設けられており、トレースの採取は入口側のウェブサーバ12のトレース条件埋込部28がリレーコードに埋め込んでいるトレース採取条件を取り出し、これに基づきトレース採取を実行する。またトレース採取部30−1は、次のアプリケーションに受け渡す際に、リレーIDに次のアプリケーションの識別子を付加して送ることになる。
図7は、図3の分散型アプリケーションシステム10において、クライアント24から要求電文を受信した際のトレース処理の説明図である。
図7において、まずウェブサーバ12にはアプリケーションとしてコンポーネント52が設けられ、アプリケーションサーバ14にはアプリケーションとしてのコンポーネント54、56が設けられ、更にデータベースサーバ16にはアプリケーションとしてのコンポーネント58、60が設けられている。
分散型アプリケーションシステム10において、クライアント24から要求電文を受け取ると、各コンポーネント52、54、56、58、60でトランザクションが順次実行され、次のアプリケーションに要求電文を引き渡す際には、リレーコードをリレーコード62−1〜62−10に示すように付加して受け渡している。
このようなクライアント24からの要求電文に対し、ウェブサーバ12、アプリケーションサーバ14、データベースサーバ16を経由してデータベース18をアクセスして応答する場合のルートにおいて、コンポーネント52、54、56、58、60のそれぞれにおける通過位置がトレース採取ポイントP1〜P10となる。
複数のアプリケーションを繋げた処理において、本発明にあっては、クライアント24からの要求電文を受ける入口のウェブサーバ12のアプリケーションであるコンポーネント52に対し、管理サーバ20の管理コンソール38からの指示でトレース採取のためにスレーススイッチ50をオンしておくと、トレーススイッチ50の指示内容が次のコンポーネント54に要求電文に付加して受け渡すリレーコード62−1に埋め込まれ、これによって後続するコンポーネント54、56、58、60のトレース採取を1回のスイッチ操作で指示することができる。
なお、トレーススイッチ50の機能は、具体的には、図4のトレース採取条件記憶部42におけるスイッチ66として記憶される。また、図4のトレース採取条件記憶部42に記憶する機能ID68により、特定のコンポーネントのトレースを採取するようにトレース範囲を決定することで、トレース採取ポイントP1〜P10のルートの中の特定のコンポーネントにおいてのみ、トレース採取を行わせることもできる。
またウェブサーバ12でリレーコード62−1にスイッチオンのトレース採取条件64を埋め込む割合は、図4の間接スイッチ処理部44に管理コンソール38から図5(B)の間接スイッチ情報72を設定しておくことで実現でき、例えば「1%スイッチ」が設定されていれば、要求電文を100回受信したうちの1回だけ、スイッチオンとしたトレース採取条件64をリレーコード62−1に埋め込んで次のコンポーネント54に引き渡すようになり、要求電文の受信に対しトレース採取の割合を1%に抑えることで、分散型アプリケーションシステムのオーバーヘッドを最小化し、且つ通常の運用中においてトレース採取が実現できる。
図8は、本発明によるトレース条件埋込処理のフローチャートであり、図3のウェブサーバ12に設けているトレース条件埋込部28により実行される。図8のトレース条件埋込処理にあっては、ステップS1で管理コンソール38からの指示を受けてトレース採取スイッチをオンに記憶する。トレース採取スイッチのオンは、具体的には図4のトレース条件埋込部28のトレース採取条件記憶部42におけるスイッチ66にスイッチオンを書き込む。
次にステップS2で、トレース採取条件として間欠スイッチ条件によるトレース採取割合と機能IDによるトレース範囲条件を記憶する。この間欠スイッチ条件と機能IDも、具体的には図4のトレース条件埋込部28の間接スイッチ処理部44に対する間接スイッチ情報の書込みと、トレース採取条件記憶部42の機能ID68に対するトレース範囲条件の書込みで実現される。
続いてステップS3でクライアントからの要求電文の受信を待つ。要求電文を受信するとステップS4に進み、ステップS2で記憶した間欠スイッチ条件に基づくトレース採取か否かチェックする。例えば「0.1%スイッチ」であった場合には、カウントしている要求電文の受信回数が100回目であった場合にはトレース採取条件が成立したと判断し、ステップS5に進む。
ステップS5ではリレーコードにオン状態にセットしたスイッチを埋め込む。次にステップS6でリレーコードに機能IDとリレーIDを埋め込む。そしてステップS8で要求電文にリレーコードを付加し、ステップS9で次のアプリケーションに受け渡す。
一方、ステップS4で間欠スイッチ条件に基づくトレース採取でなかった場合には、ステップS7でリレーコードにオフ状態としたスイッチを埋め込んだ後、ステップS8で要求電文にリレーコードを付加し、ステップS9で次のアプリケーションに受け渡す。
図9は本発明によるトレース採取処理のフローチャートである。図8のトレース採取処理において、ステップS1で要求電文の受信の有無をチェックしており、要求電文を受信すると、要求電文に付加されているリレーコードの内容を確認し、リレーコードに埋め込まれているトレース採取条件の中のスイッチがオンしていれば、ステップS3に進み、トレースを採取する。
続いてステップS4でリレーIDに次のアプリケーションの識別子を付加し、ステップS6で次のアプリケーションに受け渡す。一方、リレーコードのトレース採取条件の中でスイッチがオフ状態にある場合には、ステップS5に進み、トレースを採取せず、ステップS6で次のアプリケーションに受け渡す。
なお、図3のウェブサーバ12に設けているトレース採取部30−1は、クライアント24からの要求電文を受信した際には、図9のフローチャートの処理は行わず、図4のトレース採取条件記憶部42のスイッチ66がスイッチオンであればトレースを採取し、スイッチオフであればトレースを採取しない処理を行う。またトレース採取部30−1はアプリケーションサーバ14から応答電文に付加されたリレーコードを受信した際には、図9のフローチャートに従ったトレース採取処理を行うことになる。
図10は本発明によるトレース情報の分析表示処理のフローチャートであり、図3に示した管理サーバ20の分析表示部40により実行される。図10の分析表示処理において、オペレータなどからの指示により、ステップS1でサーバ側に蓄積しているトレースファイルからトレースデータを収集する。
次にステップS2で収集データについて、例えばリレーIDによるルートに従ったトレース採取ポイントの時間順となるように収集データを整理する。続いてステップS3で、整理した収集データについて要求電文単位にルート分析を行って、ルート上の各アプリケーションの処理に要した時間や時間割合などを求め、ステップS4で分析結果を表示する。
図11は分析表示のために整理したトレース情報の一例を示した説明図である。図11のトレース情報84にあっては、時間情報86、IPアドレス88、プロセスID90、リレーID92、採取ポイント94、コンポーネント名96、コンポーネント内識別情報98及びメソッド名100の項目で整理している。
図12は図11の整理情報から得られた分析結果の表示例の説明図である。図12の分析結果の表示例にあっては、コンポーネント52、54、56、58、60、データベース18からなるルート上の通過ポイントに対し、縦軸方向に時間軸を取っており、それぞれの実行時間102、104、106、・・・122が、処理時間の長さに応じて示され、更に実行時間102〜122のそれぞれについて、測定された時間として10ms、10ms、12ms、・・・10msが表示されている。更に、下端部にはコンポーネント52、54、56、58、60、データベース18における合計実行時間が表示されている。
このような図12のトレース情報の分析結果の表示を見ることで、この要求電文の分散アプリケーションシステムによる処理のルート上で、どのコンポーネントの位置でボトルネックとなっているかが、一目で判断できる。
図13は分析表示のために整理した他のトレース情報の説明図であり、図11の場合と同様、時間情報86、IPアドレス88、プロセスID90、リレーID92、採取ポイント94、コンポーネント名96、コンポーネント内識別情報98及びメソッド名100の各項目について、時間順にソートして整理している。
図14は図13の整理情報から分析した表示例の説明図である。この図14の要求電文のルートについての分析表示にあっては、図12と対比すると、コンポーネント52、54、56、58、60、データベース18に加え、新たにコンポーネント126が通過ポイントとして加わっていることが分かる。この場合にも、横軸に示す各コンポーネント52、54、56、58、60、データベース18、コンポーネント126の通過ポイントに対し、縦軸に示す実行時間128〜156と各実行時間についての時間数値、更に下端部の実行時間の合計値が表示されることで、この要求電文の処理のためのルートのどの位置でボトルネックが生じているかを、簡単に判断することができる。
図15は図13の整理情報から得られた分析結果の表示例の他の説明図であり、この表示例にあっては、アプリケーションの実行時間をコンポーネント52のレスポンス時間、つまり全体の処理時間に対する時間割合(パーセント)で示したことを特徴とする。この実行時間の数値が時間割合のパーセントで示されても、図14の表示例の場合と同様、ルート上のどのコンポーネントの位置でボトルネックとなっているかが簡単に判断できる。なお実際のボトルネックの判断にあっては、図15のパーセント表示よりは図14の実行時間の数値表示の方が、より正確な判断ができる。
本発明は、図3のウェブサーバ12、アプリケーションサーバ14及びデータベースサーバ16におけるトレース処理のためのプログラムを提供する。これらのサーバは、コンピュータのハードウエア資源により実現される。
コンピュータのハードウェア資源にあっては、CPUのバスに、RAM、ハードディスク、通信用ボードなどが接続され、ハードディスクに本発明のトレース処理に必要なプログラムがローディングされており、コンピュータの起動時にハードディスクから必要なプログラムを読み出してRAM上に展開し、CPUにより実行することになる。
クライアント24に対する要求電文の入口側に位置するウェブサーバ12におけるトレース処理のためのプログラムとしては、図8のトレース条件埋込処理のフローチャートに従ったトレース条件埋込プログラムと、図9のトレース採取処理のフローチャートに従ったプログラムが格納されている。
一方、2段目以降のアプリケーションサーバ14及びデータベースサーバ16については、図9のトレース採取処理のフローチャートに従ったトレース採取プログラムのみが格納されて実行されることになる。更に管理サーバ20にあっては、図10の分析表示処理のフローチャートに示した分析表示プログラムがローディングされて実行されることになる。
なお本発明は、その目的と利点を損なうことのない適宜の変形を含み、更に上記の実施形態に示した数値による限定は受けない。
ここで本発明の特徴を列挙すると次の付記のようになる。
(付記)
(付記1)
クライアントの要求電文を最初に処理する第1階層のアプリケーションを備えたサーバを構成するコンピュータに、
クライアントから前記要求電文を受信した際に、トレース採取の有無を指示するスイッチ情報を含む予め設定されたトレース採取条件を前記リレーコードに埋め込んで次のアプリケーションに受け渡すトレース条件埋込ステップと、
前記リレーコードに埋め込むトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理すると共に、他のアプリケーションから前記要求電文を受信した際に、前記要求電文のリレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取ステップと、
を実行させることを特徴とするプログラム。(1)
(付記2)
クライアントの要求電文を2回目以降に処理する第2階層以降のアプリケーションを備えたサーバを構成するコンピュータに、
他のアプリケーションから前記要求電文を受信した際に、前記要求電文のリレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取ステップを実行させることを特徴とするプログラム。(2)
(付記3)
付記1又は2記載のプログラムに於いて、前記トレース条件埋込ステップは、更に、トレースを採取する範囲をアプリケーション単位に指示する機能IDと、通過したアプリケーションを記録するリレーIDを含むことを特徴とする特徴とするプログラム。(3)
(付記4)
付記3記載のプログラムに於いて、
前記トレース条件埋込ステップは、前記スイッチ情報でトレース採取有りを指示した際にユニークなリレーIDを生成し、
前記トレース採取ステップは、次に呼び出すアプリケーションの識別子を前記リレーIDの後ろに繋げていくことを特徴とするプログラム。(4)
(付記5)
付記1又は2記載のプログラムに於いて、前記トレース条件埋込ステップは、前記トレース採取条件として、更に、前記スイッチ情報によるトレース採取有りの指示状態で前記要求電文の受信回数に対しトレースを採取する割合を指示する間欠スイッチ情報を含み、前記間欠スイッチ情報の割合に従って前記リレーコードにトレース採取条件を埋め込むことを特徴とするプログラム。(5)
(付記6)
付記5記載のプログラムに於いて、前記間欠スイッチ情報は、要求電文のルートを識別し、識別したルート毎に前記要求電文の受信回数に対しトレースを採取する割合を指示することを特徴とするプログラム。(6)
(付記7)
付記1又は2記載のプログラムに於いて、前記間欠スイッチは前記要求電文の受信回数に対しトレースを採取する割合を0パーセント乃至100パーセントの範囲で指示することを特徴とするプログラム。(6)
(付記8)
階層配置された複数のサーバ上で動作する複数のアプリケーションを有し、クライアントから要求電文を受信した際に、アプリケーション間でリレーコードを順番に受け渡しながら処理を実行して応答する分散アプリケーションシステムのトレース処理方法に於いて、
前記要求電文を受信した際に、トレース採取の有無を指示するスイッチ情報を含む予め設定されたトレース採取条件を前記リレーコードに埋め込んで次のアプリケーションに受け渡すトレース条件埋込ステップと、
前記アプリケーションの各々に設けられ、前記要求電文の受信時に前記リレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取ステップと、
各アプリケーションで採取されたトレースを収集して分析表示する分析表示ステップと、
を備えたことを特徴とするトレース処理方法。(8)
(付記9)
付記8記載のトレース処理方法に於いて、前記トレース条件埋込ステップは、前記トレース採取条件として、更に、トレースを採取する範囲をアプリケーション単位に指示する機能IDと、通過したアプリケーションを記録するリレーIDを含むことを特徴とする特徴とするトレース処理方法。
(付記10)
付記8記載のトレース処理方法に於いて、
前記トレース条件埋込ステップは、前記スイッチ情報でトレース採取有りを指示した際にユニークなリレーIDを生成し、
前記トレース採取ステップは、次に呼び出すアプリケーションの識別子を前記リレーIDの後ろに繋げていくことを特徴とするトレース処理方法。
(付記11)
付記8記載のトレース処理方法に於いて、前記トレース条件埋込ステップは、前記トレース採取条件として、更に、前記スイッチ情報によるトレース採取有りの指示状態で前記要求電文の受信回数に対しトレースを採取する割合を指示する間欠スイッチ情報を含み、前記間欠スイッチ情報の割合に従って前記リレーコードにトレース採取条件を埋め込むことを特徴とするトレース処理方法。
(付記12)
付記11記載のトレース処理方法に於いて、前記間欠スイッチ情報は、要求電文のルートを識別し、識別したルート毎に前記要求電文の受信回数に対しトレースを採取する割合を指示することを特徴とするトレース処理方法。
(付記13)
付記11又は12記載のトレース処理方法に於いて、前記間欠スイッチは前記要求電文の受信回数に対しトレースを採取する割合を0パーセント乃至100パーセントの範囲で指示することを特徴とするトレース処理方法。
(付記14)
付記8記載のトレース処理方法に於いて、更に、各アプリケーションで採取されたトレースを収集して分析する分析表示ステップを備えたことを特徴とするトレース処理方法。
(付記15)
付記14記載のトレース処理方法に於いて、前記分析表示ステップは、前記トレース採取ステップにより各アプリケーションで採取されたトレース情報から、同一のリレーIDを持つトレース情報を抽出して時刻順にソートし、ソート結果に基づきルートと各アプリケーションと処理の関係を生成して表示させることを特徴とするトレース処理方法。
(付記16)
付記15記載のトレース処理方法に於いて、前記分析表示ステップは、要求電文を受信してから次に引き渡すまでの処理時間を通過ポイントとなる各アプリケーションに対応して表示させることを特徴とするトレース処理方法。
(付記17)
付記15記載のトレース処理方法に於いて、前記分析表示ステップは、入口のアプリケーションが要求電文を受信してから応答するまでの合計処理時間に対し、各アプリケーションが要求電文を受信して次に引き渡すまでの処理時間の割合を通過ポイントとなる各アプリケーションに対応して表示させることを特徴とするトレース処理方法。
表示させることを特徴とするトレース処理方法。
(付記18)
階層配置された複数のサーバ上で動作する複数のアプリケーション処理部を有し、クライアントから要求電文を受信した際に、アプリケーション処理部の間でリレーコードを順番に受け渡しながら処理を実行して応答する分散アプリケーションのトレース処理装置に於いて、
前記要求電文を受信した際に、トレース採取の有無を指示するスイッチ情報を含む予め設定されたトレース採取条件を前記リレーコードに埋め込んで次のアプリケーションに受け渡すトレース条件埋込部と、
前記アプリケーションの各々に設けられ、前記要求電文の受信時に前記リレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取部と、
各アプリケーション処理部で採取されたトレースを収集して分析表示する分析表示部と、
を備えたことを特徴とするトレース処理装置。(9)
(付記19)
付記18記載のトレース処理装置に於いて、前記トレース条件埋込部は、前記トレース採取条件として、更に、トレースを採取する範囲をアプリケーション単位に指示する機能IDと、通過したアプリケーションを記録するリレーIDを含むことを特徴とするトレース処理装置。
(付記20)
付記19記載のトレース処理装置に於いて、
前記トレース条件埋込部は、前記スイッチ情報でトレース採取有りを指示した際にユニークなリレーIDを生成し、
前記トレース採取部は、次に呼び出すアプリケーションの識別子を前記リレーIDの後ろに繋げていくことを特徴とするトレース処理装置。
(付記21)
付記18記載のトレース処理装置に於いて、前記トレース条件埋込部は、前記トレース採取条件として、更に、前記スイッチ情報によるトレース採取有りの指示状態で前記要求電文の受信回数に対しトレースを採取する割合を指示する間欠スイッチ情報を含み、前記間欠スイッチ情報の割合に従って前記リレーコードにトレース採取条件を埋め込むことを特徴とするトレース処理装置。
(付記22)
付記21記載のトレース処理装置に於いて、前記間欠スイッチ情報は、要求電文のルートを識別し、識別したルート毎に前記要求電文の受信回数に対しトレースを採取する割合を指示することを特徴とするトレース処理装置。
(付記23)
付記21又は22記載のトレース処理装置に於いて、前記間欠スイッチは前記要求電文の受信回数に対しトレースを採取する割合を0パーセント乃至100パーセントの範囲で指示することを特徴とするトレース処理装置。
(付記24)
付記17記載のトレース処理装置に於いて、更に、各アプリケーションで採取されたトレースを収集して分析する分析表示部を備えたことを特徴とするトレース処理装置。
(付記25)
付記24記載のトレース処理装置に於いて、前記分析表示部は、前記トレース採取部により各アプリケーションで採取されたトレース情報から、リレーIDに従ったルートのトレース情報を抽出して時刻順にソートし、ソート結果に基づきルートと各アプリケーションと処理の関係を生成して表示させることを特徴とするトレース処理装置。
(付記26)
付記25記載のトレース処理装置に於いて、前記分析表示部は、要求電文を受信してから次に引き渡すまでの処理時間を通過ポイントとなる各アプリケーションに対応して表示させることを特徴とするトレース処理装置。
本発明の原理説明図 本発明が適用される分散型アプリケーションシステムの説明図 本発明によるトレース処理の機能構成のブロック図 図3のウェブサーバに設けたトレース条件埋込部の機能構成のブロック図 リレーコードに埋め込むトレース採取条件及び間接スイッチ情報の説明図 本発明におけるリレーIDの説明図 要求電文にトレース採取条件を埋め込んだリレーコードを付加して受け渡す本発明によるトレース処理の説明図 本発明によるトレース条件埋込処理のフローチャート 本発明によるトレース採取処理のフローチャート 本発明によるトレース情報の分析表示処理のフローチャート 分析表示のために整理したトレース情報の説明図 図11の整理情報から得られた分析結果の表示例の説明図 分析表示のために整理した他のトレース情報の説明図 図13の整理情報から得られた分析結果の表示例の説明図 図13の整理情報から得られた分析結果の他の表示例の説明図 従来の分散型アプリケーションシステムでのトレース採取ポイントの説明図 従来のトレース処理で採取するアプリケーションの引継ぎ関係の説明図 従来の分散型アプリケーションシステムにおけるアプリケーション毎に必要とするトレースの有無を決めるスイッチ操作の説明図
符号の説明
10:分散型アプリケーションシステム
12、12−1〜12−4:ウェブサーバ
14、14−1〜14−4:アプリケーションサーバ
16、16−1、16−2:データベースサーバ
18、18−1、18−2:データベース
20:管理サーバ
22:インターネット
24:クライアント
26、34、36:アプリケーション処理部
28:トレース条件埋込部
30−1〜30−3:トレース採取部
32−1〜32−3:トレースファイル
38:管理コンソール
40:分析表示部
42:トレース採取条件記憶部
44:間接スイッチ処理部
45:リレーID生成部
46:トレース採取条件コード保持部
48:トレース採取条件コード埋込部
50:トレーススイッチ
52、54、56、58、60、126:コンポーネント
62−1〜62−10:リレーコード
64:トレース採取条件
66:スイッチ
68:機能ID
70:リレーID
72:間欠スイッチ情報
74、75、76、78、80、82:アプリケーション

Claims (9)

  1. クライアントの要求電文を最初に処理する第1階層のアプリケーションを備えたサーバを構成するコンピュータに、
    クライアントから前記要求電文を受信した際に、トレース採取の有無を指示するスイッチ情報を含む予め設定されたトレース採取条件を前記リレーコードに埋め込んで次のアプリケーションに受け渡すトレース条件埋込ステップと、
    前記リレーコードに埋め込むトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理すると共に、他のアプリケーションから前記要求電文を受信した際に、前記要求電文のリレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取ステップと、
    を実行させることを特徴とするプログラム。
  2. クライアントの要求電文を2回目以降に処理する第2階層以降のアプリケーションを備えたサーバを構成するコンピュータに、
    他のアプリケーションから前記要求電文を受信した際に、前記要求電文のリレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取ステップを実行させることを特徴とするプログラム。
  3. 請求項1又は2記載のプログラムに於いて、前記トレース条件埋込ステップは、更に、トレースを採取する範囲をアプリケーション単位に指示する機能IDと、通過したアプリケーションを記録するリレーIDを含むことを特徴とする特徴とするプログラム。
  4. 請求項2記載のプログラムに於いて、
    前記トレース条件埋込ステップは、前記スイッチ情報でトレース採取有りを指示した際にユニークなリレーIDを生成し、
    前記トレース採取ステップは、次に呼び出すアプリケーションの識別子を前記リレーIDの後ろに繋げていくことを特徴とするプログラム
  5. 請求項1又は2記載のプログラムに於いて、前記トレース条件埋込ステップは、前記トレース採取条件として、更に、前記スイッチ情報によるトレース採取有りの指示状態で前記要求電文の受信回数に対しトレースを採取する割合を指示する間欠スイッチ情報を含み、前記間欠スイッチ情報の割合に従って前記リレーコードにトレース採取条件を埋め込むことを特徴とするプログラム。
  6. 請求項5記載のプログラムに於いて、前記間欠スイッチ情報は、要求電文のルートを識別し、識別したルート毎に前記要求電文の受信回数に対しトレースを採取する割合を指示することを特徴とするプログラム。
  7. 請求項1又は21記載のプログラムに於いて、前記間欠スイッチは前記要求電文の受信回数に対しトレースを採取する割合を0パーセント乃至100パーセントの範囲で指示することを特徴とするプログラム。
  8. 階層配置された複数のサーバ上で動作する複数のアプリケーションを有し、クライアントから要求電文を受信した際に、アプリケーション間でリレーコードを順番に受け渡しながら処理を実行して応答する分散アプリケーションシステムのトレース処理方法に於いて、
    前記要求電文を受信した際に、トレース採取の有無を指示するスイッチ情報を含む予め設定されたトレース採取条件を前記リレーコードに埋め込んで次のアプリケーションに受け渡すトレース条件埋込ステップと、
    前記アプリケーションの各々に設けられ、前記要求電文の受信時に前記リレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取ステップと、
    を備えたことを特徴とするトレース処理方法。
  9. 階層配置された複数のサーバ上で動作する複数のアプリケーション処理部を有し、クライアントから要求電文を受信した際に、アプリケーション処理部の間でリレーコードを順番に受け渡しながら処理を実行して応答する分散アプリケーションのトレース処理装置に於いて、
    前記要求電文を受信した際に、トレース採取の有無を指示するスイッチ情報を含む予め設定されたトレース採取条件を前記リレーコードに埋め込んで次のアプリケーションに受け渡すトレース条件埋込部と、
    前記アプリケーションの各々に設けられ、前記要求電文の受信時に前記リレーコードに埋込まれたトレース採取条件のスイッチ情報によりトレース採取の有無を判別して処理するトレース採取部と、
    を備えたことを特徴とするトレース処理装置。
JP2004165319A 2004-06-03 2004-06-03 トレース処理プログラム、方法及び装置 Pending JP2005346414A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004165319A JP2005346414A (ja) 2004-06-03 2004-06-03 トレース処理プログラム、方法及び装置
US10/955,887 US8543988B2 (en) 2004-06-03 2004-09-30 Trace processing program, method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004165319A JP2005346414A (ja) 2004-06-03 2004-06-03 トレース処理プログラム、方法及び装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010012949A Division JP4778092B2 (ja) 2010-01-25 2010-01-25 トレース処理方法、プログラム及び装置

Publications (1)

Publication Number Publication Date
JP2005346414A true JP2005346414A (ja) 2005-12-15

Family

ID=35498729

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004165319A Pending JP2005346414A (ja) 2004-06-03 2004-06-03 トレース処理プログラム、方法及び装置

Country Status (2)

Country Link
US (1) US8543988B2 (ja)
JP (1) JP2005346414A (ja)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008158889A (ja) * 2006-12-25 2008-07-10 Fujitsu Ltd トラブル要因検出プログラム、トラブル要因検出方法およびトラブル要因検出装置
JP2008217195A (ja) * 2007-03-01 2008-09-18 Nec Corp デバッグ装置およびデバッグ方法並びにプログラム
JP2009271755A (ja) * 2008-05-08 2009-11-19 Fujitsu Ltd コンピュータ稼動状態分析支援プログラム,コンピュータ稼動状態分析支援方法及びコンピュータ稼動状態分析支援装置
JP2009277119A (ja) * 2008-05-16 2009-11-26 Fujitsu Ltd ログ記録システム
JP2010009282A (ja) * 2008-06-26 2010-01-14 Fujitsu Ltd 命令トレース生成プログラム、命令トレース生成装置および命令トレース生成方法
JP2010033543A (ja) * 2008-06-24 2010-02-12 Smg Kk ソフトウエア動作監視システム、そのクライアントコンピュータおよびサーバコンピュータ、並びに、そのプログラム
JP2010092201A (ja) * 2008-10-07 2010-04-22 Fujitsu Ltd プログラム性能測定装置、方法、プログラム、プログラム記録媒体
JP2010118072A (ja) * 2010-01-25 2010-05-27 Fujitsu Ltd トレース処理方法、プログラム及び装置
JP2010287142A (ja) * 2009-06-15 2010-12-24 Hitachi Ltd フォールトトレラントコンピュータシステムおよびフォールトトレラントコンピュータシステムにおける方法
WO2011114720A1 (ja) * 2010-03-17 2011-09-22 株式会社日立製作所 計算機システム、記録媒体及び保守支援システム
JP2012027627A (ja) * 2010-07-22 2012-02-09 Hitachi Ltd 保守改善業務支援システム
JP2012064103A (ja) * 2010-09-17 2012-03-29 Konica Minolta Business Technologies Inc 情報処理装置、ログ記録方法およびログ記録プログラム
JP2013045256A (ja) * 2011-08-23 2013-03-04 Fujitsu Ltd サーバ装置、システム、およびログ収集支援方法
US20130074050A1 (en) * 2011-09-21 2013-03-21 International Business Machines Corporation Selective trace facility
JP2014115826A (ja) * 2012-12-10 2014-06-26 Fujitsu Ltd 処理プログラム、処理方法および処理装置
JP2017511534A (ja) * 2014-03-31 2017-04-20 エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. 分散システムのメッセージフローを監視するための動的ボーダーライントレーシング

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8527958B2 (en) * 2005-05-16 2013-09-03 Texas Instruments Incorporated Profiling operating context and tracing program on a target processor
JP5205695B2 (ja) * 2006-02-15 2013-06-05 富士通株式会社 表示制御プログラム、表示制御方法、クライアント装置及びシステム
US7954011B2 (en) * 2006-09-29 2011-05-31 Sap Ag Enabling tracing operations in clusters of servers
US7979850B2 (en) * 2006-09-29 2011-07-12 Sap Ag Method and system for generating a common trace data format
US8037458B2 (en) * 2006-09-29 2011-10-11 Sap Ag Method and system for providing a common structure for trace data
US7941789B2 (en) * 2006-09-29 2011-05-10 Sap Ag Common performance trace mechanism
US8028200B2 (en) * 2006-09-29 2011-09-27 Sap Ag Tracing operations in multiple computer systems
US8910119B2 (en) * 2006-12-29 2014-12-09 Sap Ag System and method for displaying component information of a trace
US20080163177A1 (en) * 2006-12-29 2008-07-03 Sap Ag System and method for displaying trace information
US20120124558A1 (en) * 2010-11-17 2012-05-17 Microsoft Corporation Scenario testing composability across multiple components
US8954546B2 (en) 2013-01-25 2015-02-10 Concurix Corporation Tracing with a workload distributor
US9256969B2 (en) 2013-02-01 2016-02-09 Microsoft Technology Licensing, Llc Transformation function insertion for dynamically displayed tracer data
US9323863B2 (en) 2013-02-01 2016-04-26 Microsoft Technology Licensing, Llc Highlighting of time series data on force directed graph
US20130283102A1 (en) * 2013-02-12 2013-10-24 Concurix Corporation Deployment of Profile Models with a Monitoring Agent
US8997063B2 (en) 2013-02-12 2015-03-31 Concurix Corporation Periodicity optimization in an automated tracing system
US9021447B2 (en) 2013-02-12 2015-04-28 Concurix Corporation Application tracing by distributed objectives
US8843901B2 (en) 2013-02-12 2014-09-23 Concurix Corporation Cost analysis for selecting trace objectives
US20130283281A1 (en) 2013-02-12 2013-10-24 Concurix Corporation Deploying Trace Objectives using Cost Analyses
US8924941B2 (en) 2013-02-12 2014-12-30 Concurix Corporation Optimization analysis using similar frequencies
US9665474B2 (en) 2013-03-15 2017-05-30 Microsoft Technology Licensing, Llc Relationships derived from trace data
US9575874B2 (en) 2013-04-20 2017-02-21 Microsoft Technology Licensing, Llc Error list and bug report analysis for configuring an application tracer
US8990777B2 (en) 2013-05-21 2015-03-24 Concurix Corporation Interactive graph for navigating and monitoring execution of application code
US9734040B2 (en) 2013-05-21 2017-08-15 Microsoft Technology Licensing, Llc Animated highlights in a graph representing an application
US9280841B2 (en) 2013-07-24 2016-03-08 Microsoft Technology Licensing, Llc Event chain visualization of performance data
US9292415B2 (en) 2013-09-04 2016-03-22 Microsoft Technology Licensing, Llc Module specific tracing in a shared module environment
US9772927B2 (en) 2013-11-13 2017-09-26 Microsoft Technology Licensing, Llc User interface for selecting tracing origins for aggregating classes of trace data
CN105765560B (zh) 2013-11-13 2019-11-05 微软技术许可有限责任公司 基于多次跟踪执行的软件组件推荐
US10042737B2 (en) 2016-08-31 2018-08-07 Microsoft Technology Licensing, Llc Program tracing for time travel debugging and analysis
US10031834B2 (en) 2016-08-31 2018-07-24 Microsoft Technology Licensing, Llc Cache-based tracing for time travel debugging and analysis
US10489273B2 (en) 2016-10-20 2019-11-26 Microsoft Technology Licensing, Llc Reuse of a related thread's cache while recording a trace file of code execution
US10324851B2 (en) 2016-10-20 2019-06-18 Microsoft Technology Licensing, Llc Facilitating recording a trace file of code execution using way-locking in a set-associative processor cache
US10310977B2 (en) 2016-10-20 2019-06-04 Microsoft Technology Licensing, Llc Facilitating recording a trace file of code execution using a processor cache
US10540250B2 (en) 2016-11-11 2020-01-21 Microsoft Technology Licensing, Llc Reducing storage requirements for storing memory addresses and values
US10481997B2 (en) * 2016-11-27 2019-11-19 Amazon Technologies, Inc. Distributed code tracing system
US10318332B2 (en) 2017-04-01 2019-06-11 Microsoft Technology Licensing, Llc Virtual machine execution tracing
US10296442B2 (en) 2017-06-29 2019-05-21 Microsoft Technology Licensing, Llc Distributed time-travel trace recording and replay
US20230140267A1 (en) * 2021-11-04 2023-05-04 International Business Machines Corporation Code coverage measurement for test systems

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01277940A (ja) 1988-04-28 1989-11-08 Pfu Ltd 条件付トレース方式
JP2765969B2 (ja) * 1989-07-31 1998-06-18 株式会社日立製作所 図式データ駆動型プログラム開発支援装置
JPH0484234A (ja) 1990-07-26 1992-03-17 Fujitsu Ltd トレース方式
JPH05241890A (ja) 1992-03-03 1993-09-21 Nec Corp データトレース方式
US5896536A (en) * 1996-05-01 1999-04-20 International Business Machines Corp. Data triggered trace support for debugging object oriented programs
US5960199A (en) * 1996-11-12 1999-09-28 International Business Machines Corporation Model trace view for object-oriented systems
US5903559A (en) * 1996-12-20 1999-05-11 Nec Usa, Inc. Method for internet protocol switching over fast ATM cell transport
US6145121A (en) * 1997-04-17 2000-11-07 University Of Washington Trace based method for the analysis, benchmarking and tuning of object oriented databases and applications
US6807583B2 (en) * 1997-09-24 2004-10-19 Carleton University Method of determining causal connections between events recorded during process execution
US6553564B1 (en) * 1997-12-12 2003-04-22 International Business Machines Corporation Process and system for merging trace data for primarily interpreted methods
US6338159B1 (en) * 1997-12-12 2002-01-08 International Business Machines Corporation System and method for providing trace information
JP4190610B2 (ja) * 1998-02-18 2008-12-03 富士通株式会社 ロードモジュールの試験ルート決定装置
US6189141B1 (en) * 1998-05-04 2001-02-13 Hewlett-Packard Company Control path evaluating trace designator with dynamically adjustable thresholds for activation of tracing for high (hot) activity and low (cold) activity of flow control
GB2348718A (en) 1999-04-07 2000-10-11 Ibm Data processing system having a centralised trace facility with dynamic tracing
US6467052B1 (en) * 1999-06-03 2002-10-15 Microsoft Corporation Method and apparatus for analyzing performance of data processing system
US6728955B1 (en) * 1999-11-05 2004-04-27 International Business Machines Corporation Processing events during profiling of an instrumented program
JP2001142737A (ja) 1999-11-10 2001-05-25 Matsushita Electric Ind Co Ltd メモリ管理装置
US7058928B2 (en) * 1999-12-23 2006-06-06 Identify Software Ltd. System and method for conditional tracing of computer programs
US20020087949A1 (en) * 2000-03-03 2002-07-04 Valery Golender System and method for software diagnostics using a combination of visual and dynamic tracing
US6751619B1 (en) * 2000-03-15 2004-06-15 Microsoft Corporation Methods and apparatus for tuple management in data processing system
JP4767389B2 (ja) 2000-05-10 2011-09-07 株式会社富士通アドバンストエンジニアリング ロギング装置および記録媒体
US6925431B1 (en) * 2000-06-06 2005-08-02 Microsoft Corporation Method and system for predicting communication delays of detailed application workloads
US6678883B1 (en) * 2000-07-10 2004-01-13 International Business Machines Corporation Apparatus and method for creating a trace file for a trace of a computer program based on loaded module information
US7058927B2 (en) * 2000-12-21 2006-06-06 Veritas Operating Corporation Computer software run-time analysis systems and methods
US7380239B1 (en) * 2001-05-31 2008-05-27 Oracle International Corporation Method and mechanism for diagnosing computer applications using traces
US7047521B2 (en) * 2001-06-07 2006-05-16 Lynoxworks, Inc. Dynamic instrumentation event trace system and methods
DE10161140A1 (de) * 2001-12-12 2003-07-03 Siemens Ag System und Verfahren zum Verfolgen und/oder Auswerten des Informationsaustausches
US7231636B1 (en) * 2001-12-21 2007-06-12 Nortel Networks Limited System and method for tracking VoiceXML document execution in real-time
US8418145B2 (en) * 2002-11-07 2013-04-09 Ca, Inc. Simple method optimization
JP4436036B2 (ja) * 2002-12-18 2010-03-24 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理装置、トレース処理方法、プログラム及び記録媒体
US7194664B1 (en) * 2003-09-08 2007-03-20 Poon Fung Method for tracing application execution path in a distributed data processing system
US7587709B2 (en) * 2003-10-24 2009-09-08 Microsoft Corporation Adaptive instrumentation runtime monitoring and analysis
US7475386B1 (en) * 2003-11-14 2009-01-06 Sun Microsystems, Inc. Mechanism for disjoint instrumentation providers in a tracing framework
US7606893B2 (en) * 2003-12-30 2009-10-20 Sap Ag System and method for integrated logging and tracing functions in an enterprise network
US7721266B2 (en) * 2004-03-26 2010-05-18 Sap Ag Unified logging service with a logging formatter

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4504346B2 (ja) * 2006-12-25 2010-07-14 富士通株式会社 トラブル要因検出プログラム、トラブル要因検出方法およびトラブル要因検出装置
JP2008158889A (ja) * 2006-12-25 2008-07-10 Fujitsu Ltd トラブル要因検出プログラム、トラブル要因検出方法およびトラブル要因検出装置
US7894360B2 (en) 2006-12-25 2011-02-22 Fujitsu Limited Trouble-factor detecting device, trouble-factor detecting method, and computer product
JP2008217195A (ja) * 2007-03-01 2008-09-18 Nec Corp デバッグ装置およびデバッグ方法並びにプログラム
JP2009271755A (ja) * 2008-05-08 2009-11-19 Fujitsu Ltd コンピュータ稼動状態分析支援プログラム,コンピュータ稼動状態分析支援方法及びコンピュータ稼動状態分析支援装置
US8407336B2 (en) 2008-05-08 2013-03-26 Fujitsu Limited Supporting apparatus for analyzing computer operation status
JP2009277119A (ja) * 2008-05-16 2009-11-26 Fujitsu Ltd ログ記録システム
JP2010033543A (ja) * 2008-06-24 2010-02-12 Smg Kk ソフトウエア動作監視システム、そのクライアントコンピュータおよびサーバコンピュータ、並びに、そのプログラム
JP2010009282A (ja) * 2008-06-26 2010-01-14 Fujitsu Ltd 命令トレース生成プログラム、命令トレース生成装置および命令トレース生成方法
JP2010092201A (ja) * 2008-10-07 2010-04-22 Fujitsu Ltd プログラム性能測定装置、方法、プログラム、プログラム記録媒体
US8543989B2 (en) 2008-10-07 2013-09-24 Fujitsu Limited Program evaluation apparatus and program evaluation method
JP2010287142A (ja) * 2009-06-15 2010-12-24 Hitachi Ltd フォールトトレラントコンピュータシステムおよびフォールトトレラントコンピュータシステムにおける方法
JP2010118072A (ja) * 2010-01-25 2010-05-27 Fujitsu Ltd トレース処理方法、プログラム及び装置
WO2011114720A1 (ja) * 2010-03-17 2011-09-22 株式会社日立製作所 計算機システム、記録媒体及び保守支援システム
JP2012027627A (ja) * 2010-07-22 2012-02-09 Hitachi Ltd 保守改善業務支援システム
JP2012064103A (ja) * 2010-09-17 2012-03-29 Konica Minolta Business Technologies Inc 情報処理装置、ログ記録方法およびログ記録プログラム
JP2013045256A (ja) * 2011-08-23 2013-03-04 Fujitsu Ltd サーバ装置、システム、およびログ収集支援方法
US9594663B2 (en) 2011-08-23 2017-03-14 Fujitsu Limited Apparatus and method for collecting log information from a plurality of servers
US20130074050A1 (en) * 2011-09-21 2013-03-21 International Business Machines Corporation Selective trace facility
US8918764B2 (en) * 2011-09-21 2014-12-23 International Business Machines Corporation Selective trace facility
JP2014115826A (ja) * 2012-12-10 2014-06-26 Fujitsu Ltd 処理プログラム、処理方法および処理装置
US9678849B2 (en) 2012-12-10 2017-06-13 Fujitsu Limited Processing method, processing apparatus, and recording medium to determine operational state of processing element
JP2017511534A (ja) * 2014-03-31 2017-04-20 エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. 分散システムのメッセージフローを監視するための動的ボーダーライントレーシング

Also Published As

Publication number Publication date
US8543988B2 (en) 2013-09-24
US20060015612A1 (en) 2006-01-19

Similar Documents

Publication Publication Date Title
JP2005346414A (ja) トレース処理プログラム、方法及び装置
US10075509B2 (en) Capture, analysis, and visualization of concurrent system and network behavior of an application
US9356842B2 (en) Method and system for browser based, non-intrusive measuring of end-user perceived performance of individual third party resource requests
JP5134684B2 (ja) ウェブページ構造分析を通したウェブサイトの情報把握方法
US8219548B2 (en) Data processing method and data analysis apparatus
US20100063998A1 (en) Application execution managing method, application execution server computer, and repeater
US8930447B2 (en) Method, apparatus, and program for usability analysis of web applications
WO2014049804A1 (ja) 分散システムにおけるシステム動作トレース方法
US9602340B2 (en) Performance monitoring
JP4778092B2 (ja) トレース処理方法、プログラム及び装置
CN112380473A (zh) 数据采集与同步方法、装置、设备及存储介质
US7716632B2 (en) Automated software robot generator
US20070050425A1 (en) Log management program of a computer, log management method thereof, and computer system
US20030131008A1 (en) System and method for transaction recording and playback
CN113010208B (zh) 一种版本信息的生成方法、装置、设备及存储介质
CN111651489A (zh) 一种大数据处理服务器系统
JP5024453B2 (ja) 業務フロー分散処理システム及び方法
JP3139459B2 (ja) 並列分散システムのデバッグ装置及びデバッグ方法
CN107783728A (zh) 数据存储方法、装置和设备
CN110011845A (zh) 日志采集方法及系统
CN114598622A (zh) 数据监控方法及装置、存储介质、计算机设备
CN112306818B (zh) 一种流式作业处理方法及装置
US7703106B2 (en) Discovering and monitoring process executions
CN108345534A (zh) 生成和处理跟踪流的装置和方法
CN1331042C (zh) 用于机群监控系统控制台的消息服务装置及其方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060726

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090928

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100125

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100312