JP2011238232A - 特定のトランザクションコンテキストにおけるソフトウェアによる条件付き動的計測 - Google Patents
特定のトランザクションコンテキストにおけるソフトウェアによる条件付き動的計測 Download PDFInfo
- Publication number
- JP2011238232A JP2011238232A JP2011104685A JP2011104685A JP2011238232A JP 2011238232 A JP2011238232 A JP 2011238232A JP 2011104685 A JP2011104685 A JP 2011104685A JP 2011104685 A JP2011104685 A JP 2011104685A JP 2011238232 A JP2011238232 A JP 2011238232A
- Authority
- JP
- Japan
- Prior art keywords
- instrumentation
- conditional
- callable
- application
- instrumented
- 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.)
- Granted
Links
- 238000005259 measurement Methods 0.000 title claims abstract description 74
- 239000000523 sample Substances 0.000 claims abstract description 16
- 238000000034 method Methods 0.000 claims description 414
- 230000004044 response Effects 0.000 claims description 11
- 238000004458 analytical method Methods 0.000 claims description 9
- 230000003936 working memory Effects 0.000 claims description 2
- 230000003213 activating effect Effects 0.000 claims 1
- 230000001960 triggered effect Effects 0.000 claims 1
- 230000003068 static effect Effects 0.000 abstract description 19
- 238000012544 monitoring process Methods 0.000 abstract description 2
- 239000003795 chemical substances by application Substances 0.000 description 42
- 238000013459 approach Methods 0.000 description 25
- 230000015654 memory Effects 0.000 description 23
- 230000008569 process Effects 0.000 description 15
- 238000012545 processing Methods 0.000 description 12
- 230000001143 conditioned effect Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000003745 diagnosis Methods 0.000 description 6
- 239000000700 radioactive tracer Substances 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 238000013024 troubleshooting Methods 0.000 description 2
- 238000012951 Remeasurement Methods 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3644—Software debugging by instrumenting at runtime
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/37—Compiler construction; Parser generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
【解決手段】管理対象アプリケーション内に存在する既存のインスツルメンテーション(計測)から流入するパフォーマンスデータを監視するパフォーマンスモニタ1012は、閾値に基づいて、実行に時間がかかっているコンポーネントを発見する。ユーザインタフェース1008は、発見されたコンポーネント1006の中から計測対象とするコンポーネントを選択することができ、また静的リスト1010を変更することもできる。クラスローダ1002が、発見されたコンポーネントおよび静的リストを用いて計測対象のコンポーネントのバイトコードをロードし、トランスフォーマ/プローブビルダ1000がプローブを挿入する。
【選択図】図10
Description
Claims (25)
- アプリケーションを計測するためにコンピュータに実装される方法であり、該コンピュータに実装された以下のステップ:
計測されるメソッド(C1−C7)を含んでいる計測されるコンポーネントのベースラインの規定により該アプリケーションのコードを構成すること、該アプリケーションの該コードは未計測のメソッド(C4A)も含む;
コンピュータシステムにおいて該アプリケーションの該コードを実行している最中に、該計測されるメソッドからパフォーマンスデータを取得すること;
該パフォーマンスデータに基づいて、さらに詳細に解析するために該計測されるメソッド(C4A)の少なくとも一つを選択すること;
該選択に基づいて、該少なくとも一つの選択されて計測されるメソッドによって呼び出され得る未計測の少なくとも一つの呼び出し可能なメソッド(C5)を決定すること;および
該決定に対応して、該少なくとも一つの呼び出し可能なメソッドのための該アプリケーションの該コードを、条件付き計測を伴うように構成すること、該少なくとも一つの呼び出し可能なメソッドが呼び出される場合に条件付き計測が起動される予定のコンテキストを該条件付き計測が特定すること、該コンテキストは、少なくとも一つの選択されて計測されるメソッドによって呼び出される該少なくとも一つの呼び出し可能なメソッドを含むこと;および
該コンピュータシステムにおいて該条件付き計測を伴う該アプリケーションの該コードを実行している最中に、該少なくとも一つの呼び出し可能なメソッドが呼び出される場合、該少なくとも一つの呼び出し可能なメソッドが該コンテキスト内で呼び出されるかどうかを決定し、該少なくとも一つの呼び出し可能なメソッドが該コンテキスト内で呼び出される場合、該少なくとも一つの呼び出し可能なメソッドからパフォーマンスデータを取得するために該条件付き計測を起動すること;
を有する方法。 - 該少なくとも一つの呼び出し可能なメソッドが呼び出されるが該コンテキスト内では呼び出されない場合に、該条件付き計測を起動しないこと、をさらに有する請求項1に記載のコンピュータに実装される方法。
- スレッドローカルキャッシュが該アプリケーションの一つまたはそれ以上の実行しているメソッドを特定することができるように、該少なくとも一つの選択されて計測されるメソッドが実行を開始および停止する場合、該少なくとも一つの選択されて計測されるメソッドがスレッドローカルキャッシュに報告するために該少なくとも一つの選択されて計測されるメソッドの計測を変更すること、をさらに有する請求項2に記載のコンピュータに実装される方法。
- 該条件付き計測は、該コンテキストを満たして実行されるために必要となる該少なくとも一つの選択されて計測されるメソッドを含む、一つまたはそれ以上のメソッドを特定し、
該少なくとも一つの呼び出し可能なメソッドがコンテキスト内で呼び出されるか否かを決定することは、該一つまたはそれ以上のメソッドが実行中か否かを判断するためにスレッドローカルキャッシュにアクセスする該条件付き計測を含む請求項3に記載のコンピュータに実装される方法。 - 該条件付き計測は、該コンテキストを満たして実行をするように要求されるメソッドのシーケンスを特定し、該メソッドのシーケンスは、少なくとも一つの選択されて計測されるメソッドおよび該少なくとも一つの選択されて計測されるメソッドの親メソッドを含み、
該少なくとも一つの呼び出し可能なメソッドがコンテキスト内で呼び出されるか否かを決定することは、該メソッドのシーケンスが実行中か否かを判断するためにスレッドローカルキャッシュにアクセスする該条件付き計測を含む請求項4に記載のコンピュータに実装される方法。 - 条件付き計測を伴う該アプリケーションの該コードは、ユーザに対するトランザクションを行うように実行され、該条件付き計測は、該コンテキストを満たすように要求される特定のトランザクションデータであって、発注する商品の種類、商品の製造元の特定、購入するユーザのクラス、該アプリケーションが特定のポータルサイトを介してアクセスしたか否か、該ユーザの地理的ロケーション、支払い方法、および商品出荷方法、のうちの少なくとも一つを含むものを特定する、請求項5に記載のコンピュータに実装される方法。
- 該特定されたトランザクションデータは、内部コンポーネントのメッセージのヘッダーにデータオブジェクトの特定値を含む、請求項6に記載のコンピュータに実装される方法。
- 該メソッドのシーケンスの長さをユーザが特定することを許容するユーザインタフェースディスプレィ(250,500)を提供すること、をさらに有する、請求項5から7のいずれか1項に記載のコンピュータに実装される方法。
- (a)該少なくとも一つの呼び出し可能なメソッドの条件付き計測を提供すること、および、(b)該少なくとも一つの呼び出し可能なメソッドの条件付き計測を削除すること、のうちの少なくとも一つのコマンドをユーザに提供することを許容するユーザインタフェースディスプレィを提供すること、をさらに有する請求項1から8のいずれか1項に記載のコンピュータに実装される方法。
- 該計測されるコンポーネントの該ベースラインの規定により該アプリケーションのコードを設定することは、仮想マシンに該アプリケーションの該コードをロードすることと、該アプリケーションの該コードにプローブを追加すること、を有し、
該少なくとも一つの呼び出し可能なメソッドの条件付き計測により該アプリケーションの該コードを設定することは、該仮想マシンに該少なくとも一つの呼び出し可能なメソッドの該アプリケーションの該コードをリロードすることと、該少なくとも一つの呼び出し可能なメソッドの該アプリケーションの該コードにプローブを追加すること、を有する請求項1から9のいずれか1項に記載のコンピュータに実装される方法。 - 該仮想マシンは、オペレーティングシステム上に構築されている実行環境の一部であり、該オペレーティングシステムがハードウェア上で構築されている、請求項10のいずれか1項に記載のコンピュータに実装される方法。
- 該少なくとも一つの呼び出し可能なメソッドの条件付き計測により該アプリケーションの該コードを設定することは、条件付き計測を含むための該少なくとも一つの呼び出し可能なメソッドの一つまたはそれ以上のクラスを再定義することと、該仮想マシンに一つまたはそれ以上の再定義されたクラスをロードすること、を有する請求項1から11のいずれか1項に記載の方法。
- 該計測されるメソッドの該パフォーマンスデータは、該計測されるメソッドの開始および停止の回数を含み、
該少なくとも一つの呼び出し可能なメソッドからのパフォーマンスデータは、少なくとも一つの呼び出し可能なメソッドの開始および停止の回数を含む、請求項1から12のいずれか1項に記載のコンピュータに実装される方法。 - 少なくとも一つの選択されて計測されるメソッドおよび少なくとも一つの呼び出し可能なメソッドのパフォーマンスデータを図示するユーザインタフェースディスプレィを提供すること、をさらに有する請求項1から13のいずれか1項に記載のコンピュータに実装される方法。
- さらに詳細に解析するために該少なくとも一つのメソッドを選択することが自動的に行われる、請求項1からの14のいずれか1項に記載のコンピュータに実装される方法。
- さらに詳細に解析するために該少なくとも一つのメソッドを選択することは、ユーザインタフェース(250,500)を介するユーザコマンドに基づいて行われる、請求項1から15のいずれか1項に記載のコンピュータに実装される方法。
- 該条件付き計測は、該アプリケーションの実行中に、該少なくとも一つの呼び出し可能なメソッドに対して動的に提供される、請求項1から16のいずれか1項に記載のコンピュータに実装される方法。
- 少なくとも一つのプロセッサがアプリケーションの計測をするための方法を実行するようにプログラムするために具現化されたコンピュータで読み取り可能なソフトウェアを有しているコンピュータで読み取り可能な有体の記憶装置であり、該方法は、
計測されるメソッド(C1−C7)を含んでいる計測されるコンポーネントのベースラインの規定により該アプリケーションのコードを構成すること、該アプリケーションの該コードは未計測のメソッド(C4A)も含む;
コンピュータシステムにおいて該アプリケーションの該コードを実行している最中に、該計測されるメソッドからパフォーマンスデータを取得すること;
該パフォーマンスデータに基づいて、さらに詳細に解析するために該計測されるメソッド(C4A)の少なくとも一つを選択すること;
該選択に基づいて、該少なくとも一つの選択されて計測されるメソッドによって呼び出され得る未計測の少なくとも一つの呼び出し可能なメソッド(C5)を決定すること;
該決定に対応して、該少なくとも一つの呼び出し可能なメソッドのための該アプリケーションの該コードを条件付き計測を伴うように構成すること、該少なくとも一つの呼び出し可能なメソッドが呼び出される場合、該条件付き計測が起動にされる予定のコンテキストを該条件付き計測が特定し、該コンテキストは少なくとも一つの選択されて計測されるメソッドによって呼び出される該少なくとも一つの呼び出し可能なメソッドを含むこと;および
該コンピュータシステムにおいて該条件付き計測を伴う該アプリケーションの該コードを実行している最中に、該少なくとも一つの呼び出し可能なメソッドが呼び出される場合、該少なくとも一つの呼び出し可能なメソッドが該コンテキスト内で呼び出されるかどうかを決定し、該少なくとも一つの呼び出し可能なメソッドが該コンテキスト内で呼び出される場合、少なくとも一つの呼び出し可能なメソッドからパフォーマンスデータを取得するために該条件付き計測を起動すること、
を含むことを特徴とする記憶装置。 - 該条件付き計測は、該コンテキストを満たして実行をするように要求されるメソッドのシーケンスを特定し、該メソッドのシーケンスは、少なくとも一つの選択されて計測されるメソッドおよび該少なくとも一つの選択されて計測されるメソッドの親メソッドを含み、
該少なくとも一つの呼び出し可能なメソッドがコンテキスト内で呼び出されるか否かを決定することは、該メソッドのシーケンスが実行中か否かを判断するためにスレッドローカルキャッシュにアクセスする該条件付き計測を含む、請求項18に記載のコンピュータで読み取り可能な有体の記憶装置。 - 該メソッドのシーケンスの長さをユーザが特定することを許容するユーザインタフェースディスプレィ(250,500)を提供すること、をさらに有する、請求項19に記載のコンピュータで読み取り可能な有体の記憶装置。
- 条件付計測を伴う該アプリケーションの該コードは、ユーザに対するトランザクションを行うように実行され、該条件付き計測は、該コンテキストを満たすように要求される特定のトランザクションデータであって、発注する商品の種類、商品の製造元の特定、購入するユーザのクラス、該アプリケーションが特定のポータルサイトを介してアクセスしたか否か、該ユーザの地理的ロケーション、支払い方法、および商品出荷方法、のうちの少なくとも一つを含むものを特定する、請求項18から20のいずれか1項に記載のコンピュータで読み取り可能な有体の記憶装置。
- ソフトウェアの命令を格納する記憶装置と、
作業メモリであって、該ソフトウェアの命令が該記憶装置からロードされている作業メモリと、
該ソフトウェアの命令を実行するプロセッサと、を備えており、該ソフトウエアの命令が、
計測されるメソッド(C1−C7)を含んでいる計測されるコンポーネントのベースラインの規定によりアプリケーションのコードを設定すること、該アプリケーションの該コードは計測されていないメソッド(C4A)も含む;
該コンピュータシステムにおいて該アプリケーションの該コードを実行している最中に、該計測されるメソッドからパフォーマンスデータを取得すること;
該パフォーマンスデータに基づいて、さらに詳細に解析するために少なくとも一つの該計測されるメソッド(C4A)を選択すること;
該選択に基づいて、該少なくとも一つの選択されたメソッドによって呼び出され得る未計測の少なくとも一つの呼び出し可能なメソッド(C5)を決定すること;
該決定に対応して、該少なくとも一つの呼び出し可能なメソッドのための該アプリケーションの該コードを、条件付き計測を伴うように構成すること、その中で、該少なくとも一つの呼び出し可能なメソッドが呼び出される場合、該条件付き計測が起動される予定のコンテキストを該条件付き計測が特定し、該コンテキストは少なくとも一つの選択されて計測されるメソッドによって呼び出される該少なくとも一つの呼び出し可能なメソッドを含むこと、;および
該コンピュータシステムにおいて該条件付き計測を伴う該アプリケーションの該コードが実行される最中に、該少なくとも一つの呼び出し可能なメソッドが呼び出される場合、該少なくとも一つの呼び出し可能なメソッドが該コンテキスト内で呼び出されるかどうかを決定し、該少なくとも一つの呼び出し可能なメソッドが該コンテキスト内で呼び出される場合、少なくとも一つの呼び出し可能なメソッドからパフォーマンスデータを取得するために該条件付き計測を起動すること、
を含むことを特徴とするコンピュータシステム。 - 該条件付き計測は、該コンテキストを満たして実行をするように要求されるメソッドのシーケンスを特定し、該メソッドのシーケンスは、少なくとも一つの選択されて計測されるメソッドおよび該少なくとも一つの選択されて計測されるメソッドの親メソッドを含み、
該少なくとも一つの呼び出し可能なメソッドがコンテキスト内で呼び出されるか否かを決定することは、該メソッドのシーケンスが実行中か否かを判断するためにスレッドローカルキャッシュにアクセスする該条件付き計測を含む、請求項22に記載のコンピュータシステム。 - 前記ソフトウエアの命令が、
該メソッドのシーケンスの長さをユーザが特定することを許容するユーザインタフェースディスプレィ(250,500)を提供すること、をさらに含む、請求項23のコンピュータシステム。 - 条件付計測を伴う該アプリケーションの該コードは、ユーザに対するトランザクションを行うように実行され、該条件付き計測は、該コンテキストを満たすように要求される特定のトランザクションデータであって、発注する商品の種類、商品の製造元の特定、購入するユーザのクラス、該アプリケーションが特定のポータルサイトを介してアクセスしたか否か、該ユーザの地理的ロケーション、支払い方法、および商品出荷方法、のうちの少なくとも一つを含むものを特定する、請求項22から24のいずれか1項に記載のコンピュータシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/777490 | 2010-05-11 | ||
US12/777,490 US8473925B2 (en) | 2010-05-11 | 2010-05-11 | Conditional dynamic instrumentation of software in a specified transaction context |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011238232A true JP2011238232A (ja) | 2011-11-24 |
JP5723207B2 JP5723207B2 (ja) | 2015-05-27 |
Family
ID=44454043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011104685A Active JP5723207B2 (ja) | 2010-05-11 | 2011-05-09 | 特定のトランザクションコンテキストにおけるソフトウェアによる条件付き動的計測 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8473925B2 (ja) |
EP (1) | EP2386956B1 (ja) |
JP (1) | JP5723207B2 (ja) |
KR (1) | KR101669630B1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015075964A (ja) * | 2013-10-09 | 2015-04-20 | 富士通株式会社 | ログ出力条件設定プログラム、装置、および方法 |
JP2016533570A (ja) * | 2013-10-14 | 2016-10-27 | エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. | 全ソフトウェアレイヤの透過的なパフォーマンス推測およびコンテキスト依存のパフォーマンスデバッギング |
JP2022505341A (ja) * | 2018-10-18 | 2022-01-14 | 株式会社デンソー | パフォーマンス特性に従って選択的にプログラムを計装するためのシステム及び方法 |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080104022A1 (en) | 2006-10-31 | 2008-05-01 | Bank Of America Corporation | Document indexing and delivery system |
US8978018B2 (en) * | 2010-12-02 | 2015-03-10 | International Business Machines Corporation | Reversibly instrumenting a computer software application |
US8745598B2 (en) * | 2010-12-14 | 2014-06-03 | Bmc Software, Inc. | Running injected code prior to execution of an application |
US8726225B2 (en) * | 2011-08-01 | 2014-05-13 | Vmware, Inc. | Testing of a software system using instrumentation at a logging module |
US9430238B2 (en) | 2012-03-16 | 2016-08-30 | International Business Machines Corporation | Run-time-instrumentation controls emit instruction |
US9471315B2 (en) | 2012-03-16 | 2016-10-18 | International Business Machines Corporation | Run-time instrumentation reporting |
US9367316B2 (en) | 2012-03-16 | 2016-06-14 | International Business Machines Corporation | Run-time instrumentation indirect sampling by instruction operation code |
US9442824B2 (en) | 2012-03-16 | 2016-09-13 | International Business Machines Corporation | Transformation of a program-event-recording event into a run-time instrumentation event |
US9250902B2 (en) | 2012-03-16 | 2016-02-02 | International Business Machines Corporation | Determining the status of run-time-instrumentation controls |
US9158660B2 (en) | 2012-03-16 | 2015-10-13 | International Business Machines Corporation | Controlling operation of a run-time instrumentation facility |
US9454462B2 (en) | 2012-03-16 | 2016-09-27 | International Business Machines Corporation | Run-time instrumentation monitoring for processor characteristic changes |
US9483268B2 (en) | 2012-03-16 | 2016-11-01 | International Business Machines Corporation | Hardware based run-time instrumentation facility for managed run-times |
US9465716B2 (en) | 2012-03-16 | 2016-10-11 | International Business Machines Corporation | Run-time instrumentation directed sampling |
US9411591B2 (en) | 2012-03-16 | 2016-08-09 | International Business Machines Corporation | Run-time instrumentation sampling in transactional-execution mode |
US9405541B2 (en) | 2012-03-16 | 2016-08-02 | International Business Machines Corporation | Run-time instrumentation indirect sampling by address |
US9280447B2 (en) | 2012-03-16 | 2016-03-08 | International Business Machines Corporation | Modifying run-time-instrumentation controls from a lesser-privileged state |
US8656380B1 (en) * | 2012-05-10 | 2014-02-18 | Google Inc. | Profiling an executable |
GB2504496A (en) * | 2012-07-31 | 2014-02-05 | Ibm | Removing code instrumentation based on the comparison between collected performance data and a threshold |
US9274772B2 (en) * | 2012-08-13 | 2016-03-01 | Microsoft Technology Licensing, Llc. | Compact type layouts |
US8954546B2 (en) * | 2013-01-25 | 2015-02-10 | Concurix Corporation | Tracing with a workload distributor |
US9207969B2 (en) | 2013-01-25 | 2015-12-08 | Microsoft Technology Licensing, Llc | Parallel tracing for performance and detail |
US9021262B2 (en) | 2013-01-25 | 2015-04-28 | Concurix Corporation | Obfuscating trace data |
US8924941B2 (en) * | 2013-02-12 | 2014-12-30 | Concurix Corporation | Optimization analysis using similar frequencies |
US8997063B2 (en) | 2013-02-12 | 2015-03-31 | Concurix Corporation | Periodicity optimization in an automated tracing system |
US20130283281A1 (en) | 2013-02-12 | 2013-10-24 | Concurix Corporation | Deploying Trace Objectives using Cost Analyses |
US8843901B2 (en) * | 2013-02-12 | 2014-09-23 | Concurix Corporation | Cost analysis for selecting trace objectives |
US9223681B2 (en) * | 2013-02-15 | 2015-12-29 | International Business Machines Corporation | Automated debug trace specification |
US9003355B2 (en) * | 2013-02-20 | 2015-04-07 | Bank Of America Corporation | Decentralized workflow management system |
US9021448B1 (en) | 2013-02-28 | 2015-04-28 | Ca, Inc. | Automated pattern detection in software for optimal instrumentation |
US20140282415A1 (en) * | 2013-03-14 | 2014-09-18 | Cadence Design Systems, Inc. | Method and system for debugging a program |
US8954935B2 (en) | 2013-03-14 | 2015-02-10 | Pivotal Software, Inc. | Method and system that filters byte-code instrumentation at the instrumentation level |
US20130219372A1 (en) | 2013-03-15 | 2013-08-22 | Concurix Corporation | Runtime Settings Derived from Relationships Identified in Tracer Data |
US9575874B2 (en) | 2013-04-20 | 2017-02-21 | Microsoft Technology Licensing, Llc | Error list and bug report analysis for configuring an application tracer |
US9292415B2 (en) | 2013-09-04 | 2016-03-22 | Microsoft Technology Licensing, Llc | Module specific tracing in a shared module environment |
EP3069241B1 (en) | 2013-11-13 | 2018-08-15 | Microsoft Technology Licensing, LLC | Application execution path tracing with configurable origin definition |
US9442818B1 (en) | 2014-01-21 | 2016-09-13 | Dell Software Inc. | System and method for dynamic data collection |
US9384019B2 (en) | 2014-03-25 | 2016-07-05 | International Business Machines Corporation | Dynamic code injection |
US20150378756A1 (en) * | 2014-06-25 | 2015-12-31 | SmartBear Software, Inc. | Systems and methods for mobile application tracing instrumentation |
US9740588B2 (en) * | 2015-05-26 | 2017-08-22 | International Business Machines Corporation | Performance enhancement mode selection tool |
US9519505B1 (en) | 2015-07-06 | 2016-12-13 | Bank Of America Corporation | Enhanced configuration and property management system |
US10042735B2 (en) * | 2015-07-10 | 2018-08-07 | Ca, Inc. | Selecting application wrapper logic components for wrapping a mobile application based on wrapper performance feedback from user electronic devices |
US10095599B2 (en) | 2016-03-31 | 2018-10-09 | International Business Machines Corporation | Optimization for application runtime monitoring |
US11151604B2 (en) * | 2016-06-10 | 2021-10-19 | International Business Machines Corporation | Revenue management using dynamic customer selection |
US10334079B2 (en) | 2016-06-27 | 2019-06-25 | Microsoft Technology Licensing, Llc | Orchestrating operations at applications |
US20180060217A1 (en) * | 2016-08-31 | 2018-03-01 | Hewlett Packard Enterprise Development Lp | Performing stack trace sampling for method instrumentation |
US10437704B2 (en) * | 2016-11-22 | 2019-10-08 | Ca, Inc. | Identifying back-end components based on stack traces |
US10761965B2 (en) * | 2018-09-28 | 2020-09-01 | Atlassian Pty Ltd. | Detecting method calls based on stack trace data |
US20200394329A1 (en) * | 2019-06-15 | 2020-12-17 | Cisco Technology, Inc. | Automatic application data collection for potentially insightful business values |
KR102309667B1 (ko) * | 2019-11-27 | 2021-10-08 | 주식회사 티맥스 소프트 | 대량 거래 상황을 효율적으로 엔드 투 엔드 모니터링 하기 위한 방법 및 이를 이용한 트레이스 정보 고속 입력 장치 |
US11416273B2 (en) | 2020-01-16 | 2022-08-16 | Red Hat, Inc. | Adaptive and secure bitecode injection based on comparison with previously stored bytecode |
CN112559306B (zh) * | 2020-11-17 | 2022-11-15 | 贝壳技术有限公司 | 用户行为轨迹获取方法、装置与电子设备 |
US11539521B2 (en) | 2020-12-15 | 2022-12-27 | International Business Machines Corporation | Context based secure communication |
CN113064801B (zh) * | 2021-03-10 | 2022-03-29 | 深圳依时货拉拉科技有限公司 | 数据埋点的方法、装置、可读存储介质及计算机设备 |
US20220300352A1 (en) | 2021-03-19 | 2022-09-22 | Oracle International Corporation | Determining a resolution state of an anchor constant associated with an application programming interface (api) point |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7293260B1 (en) * | 2003-09-26 | 2007-11-06 | Sun Microsystems, Inc. | Configuring methods that are likely to be executed for instrument-based profiling at application run-time |
JP2008217721A (ja) * | 2007-03-07 | 2008-09-18 | Ntt Data Corp | プログラムプロファイリング装置、プログラムプロファイリング方法、及びプログラム |
Family Cites Families (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5515536A (en) | 1992-11-13 | 1996-05-07 | Microsoft Corporation | Method and system for invoking methods of an object through a dispatching interface |
US6314558B1 (en) | 1996-08-27 | 2001-11-06 | Compuware Corporation | Byte code instrumentation |
CA2255042C (en) | 1998-11-30 | 2004-04-13 | Leonard W. Theivendra | Class loader |
US7577834B1 (en) | 2000-05-09 | 2009-08-18 | Sun Microsystems, Inc. | Message authentication using message gates in a distributed computing environment |
US6954747B1 (en) | 2000-11-14 | 2005-10-11 | Microsoft Corporation | Methods for comparing versions of a program |
US7047521B2 (en) | 2001-06-07 | 2006-05-16 | Lynoxworks, Inc. | Dynamic instrumentation event trace system and methods |
US6993760B2 (en) | 2001-12-05 | 2006-01-31 | Microsoft Corporation | Installing software on a mobile computing device using the rollback and security features of a configuration manager |
US7103878B2 (en) | 2001-12-13 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | Method and system to instrument virtual function calls |
US6985909B2 (en) | 2001-12-28 | 2006-01-10 | Sap Ag | Modified class loaders and methods of use |
US7281242B2 (en) | 2002-01-18 | 2007-10-09 | Bea Systems, Inc. | Flexible and extensible Java bytecode instrumentation system |
US20030163608A1 (en) | 2002-02-21 | 2003-08-28 | Ashutosh Tiwary | Instrumentation and workload recording for a system for performance testing of N-tiered computer systems using recording and playback of workloads |
US7058957B1 (en) | 2002-07-12 | 2006-06-06 | 3Pardata, Inc. | Cluster event notification system |
US7870431B2 (en) | 2002-10-18 | 2011-01-11 | Computer Associates Think, Inc. | Transaction tracer |
US8418145B2 (en) | 2002-11-07 | 2013-04-09 | Ca, Inc. | Simple method optimization |
US7206807B2 (en) | 2003-01-21 | 2007-04-17 | Bea Systems, Inc. | Asynchronous invoking a remote web service on a server by a client who passes on a received invoke request from application code residing on the client |
US7114150B2 (en) | 2003-02-13 | 2006-09-26 | International Business Machines Corporation | Apparatus and method for dynamic instrumenting of code to minimize system perturbation |
US7496903B2 (en) | 2003-08-12 | 2009-02-24 | Hewlett-Packard Development Company, L.P. | Synthesizing application response measurement (ARM) instrumentation |
US7469262B2 (en) | 2003-12-29 | 2008-12-23 | Oracle International Corporation | Customizable metadata merging framework |
US7359831B2 (en) | 2004-05-21 | 2008-04-15 | Bea Systems, Inc. | Diagnostic context |
US7395458B2 (en) | 2004-05-21 | 2008-07-01 | Bea Systems, Inc. | Diagnostic instrumentation |
US7562341B2 (en) | 2004-05-24 | 2009-07-14 | Sap Ag | Deploy callback system with bidirectional containers |
US7546593B2 (en) | 2004-05-28 | 2009-06-09 | Sap Ag | Common class loaders |
US7614045B2 (en) | 2004-09-24 | 2009-11-03 | Sap (Ag) | Sharing classes and class loaders |
US20060174226A1 (en) | 2005-02-03 | 2006-08-03 | Sytex, Inc. | Methods, Test Systems And Computer-Readable Medium For Dynamically Modifying Flow Of Executable Code |
US7926042B2 (en) | 2005-10-31 | 2011-04-12 | Hewlett-Packard Development Company, L.P. | System and method for dynamic instrumentation |
US20070107057A1 (en) | 2005-11-10 | 2007-05-10 | Docomo Communications Laboratories Usa, Inc. | Method and apparatus for detecting and preventing unsafe behavior of javascript programs |
US7483927B2 (en) | 2005-12-01 | 2009-01-27 | International Business Machines Corporation | Method for merging metadata on files in a backup storage |
US20070150870A1 (en) | 2005-12-22 | 2007-06-28 | International Business Machines Corporation | Method and apparatus for context oriented computer program tracing and visualization |
US20070234307A1 (en) * | 2006-03-06 | 2007-10-04 | Chi-Keung Luk | Methods and apparatus to inline conditional software instrumentation |
WO2007113542A1 (en) | 2006-03-31 | 2007-10-11 | British Telecommunications Public Limited Company | Server computer component |
US20080034352A1 (en) | 2006-06-29 | 2008-02-07 | Mckinney Howard M | System and method for determining unimportant probe locations by examination of byte code to identify method by name pattern |
US8151277B2 (en) | 2007-05-15 | 2012-04-03 | Dynatrace Software Gmbh | Method and system for dynamic remote injection of in-process agents into virtual machine based applications |
US7957934B2 (en) | 2007-05-15 | 2011-06-07 | Dynatrace Software Gmbh | Method and system for processing application performance data ouside of monitored applications to limit overhead caused by monitoring |
US8464225B2 (en) | 2007-05-06 | 2013-06-11 | Dynatrace Software Gmbh | Method and system for adaptive, generic code instrumentation using run-time or load-time generated inheritance information for diagnosis and monitoring application performance and failure |
US20080148242A1 (en) | 2006-12-18 | 2008-06-19 | Computer Associates Think, Inc. | Optimizing an interaction model for an application |
US8079020B2 (en) | 2007-03-05 | 2011-12-13 | Microsoft Corporation | Preferential path profiling |
US20090112667A1 (en) | 2007-10-31 | 2009-04-30 | Ken Blackwell | Automated Business Process Model Discovery |
US8464270B2 (en) | 2007-11-29 | 2013-06-11 | Red Hat, Inc. | Dependency management with atomic decay |
WO2009095741A1 (en) | 2008-02-01 | 2009-08-06 | The Mathworks, Inc | Selective code instrumentation for software verification |
US8141056B2 (en) * | 2008-04-03 | 2012-03-20 | International Business Machines Corporation | Just-in-time dynamic instrumentation |
-
2010
- 2010-05-11 US US12/777,490 patent/US8473925B2/en active Active
-
2011
- 2011-05-09 JP JP2011104685A patent/JP5723207B2/ja active Active
- 2011-05-11 KR KR1020110044253A patent/KR101669630B1/ko active IP Right Grant
- 2011-05-11 EP EP11250522A patent/EP2386956B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7293260B1 (en) * | 2003-09-26 | 2007-11-06 | Sun Microsystems, Inc. | Configuring methods that are likely to be executed for instrument-based profiling at application run-time |
JP2008217721A (ja) * | 2007-03-07 | 2008-09-18 | Ntt Data Corp | プログラムプロファイリング装置、プログラムプロファイリング方法、及びプログラム |
Non-Patent Citations (2)
Title |
---|
CSNG200200029008; 大島 明浩: '仮想計算機によるOSデバッグ支援機能の開発' コンピュータシステム・シンポジウム論文集 第2000巻, 第13号, 20001115, p.61-68, 社団法人情報処理学会 * |
JPN6014045307; 大島 明浩: '仮想計算機によるOSデバッグ支援機能の開発' コンピュータシステム・シンポジウム論文集 第2000巻, 第13号, 20001115, p.61-68, 社団法人情報処理学会 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015075964A (ja) * | 2013-10-09 | 2015-04-20 | 富士通株式会社 | ログ出力条件設定プログラム、装置、および方法 |
US9804908B2 (en) | 2013-10-09 | 2017-10-31 | Fujitsu Limited | Log output condition setting method and apparatus |
JP2016533570A (ja) * | 2013-10-14 | 2016-10-27 | エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. | 全ソフトウェアレイヤの透過的なパフォーマンス推測およびコンテキスト依存のパフォーマンスデバッギング |
JP2022505341A (ja) * | 2018-10-18 | 2022-01-14 | 株式会社デンソー | パフォーマンス特性に従って選択的にプログラムを計装するためのシステム及び方法 |
JP7188580B2 (ja) | 2018-10-18 | 2022-12-13 | 株式会社デンソー | パフォーマンス特性に従って選択的にプログラムを計装するためのシステム及び方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2386956A1 (en) | 2011-11-16 |
KR20110124732A (ko) | 2011-11-17 |
US8473925B2 (en) | 2013-06-25 |
KR101669630B1 (ko) | 2016-10-26 |
US20110283263A1 (en) | 2011-11-17 |
JP5723207B2 (ja) | 2015-05-27 |
EP2386956B1 (en) | 2013-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5723207B2 (ja) | 特定のトランザクションコンテキストにおけるソフトウェアによる条件付き動的計測 | |
JP5798372B2 (ja) | 動的計測を介してのカスタムコードの診断を効率化するためのメソッド呼び出しの検出 | |
JP5705084B2 (ja) | 2パス自動アプリケーション計測 | |
JP5723208B2 (ja) | コールバックを用いたソフトウェアの動的計測のためのフェイルセーフメカニズム | |
US8423973B2 (en) | Instrumenting an application with flexible tracers to provide correlation data and metrics | |
JP5431430B2 (ja) | 依存データからの依存マップの生成 | |
US8327377B2 (en) | Detecting, logging and tracking component dependencies in web service transactions | |
US8627150B2 (en) | System and method for using dependency in a dynamic model to relate performance problems in a complex middleware environment | |
US20130152064A1 (en) | Classloader/Instrumentation Approach For Invoking Non-Bound Libraries | |
US7877640B2 (en) | Method and system for providing enhanced exception messages for exceptions thrown by virtual machines | |
US9679245B2 (en) | Predicting the impact of change on events detected in application logic | |
Barbie | Reporting of performance tests in a continuous integration environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20120920 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20120920 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121120 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140304 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140917 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141028 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150122 |
|
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: 20150303 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150327 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5723207 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |