JP2005346317A - Application program development/execution system - Google Patents

Application program development/execution system Download PDF

Info

Publication number
JP2005346317A
JP2005346317A JP2004163985A JP2004163985A JP2005346317A JP 2005346317 A JP2005346317 A JP 2005346317A JP 2004163985 A JP2004163985 A JP 2004163985A JP 2004163985 A JP2004163985 A JP 2004163985A JP 2005346317 A JP2005346317 A JP 2005346317A
Authority
JP
Japan
Prior art keywords
stack trace
information
output
application program
stack
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
JP2004163985A
Other languages
Japanese (ja)
Inventor
Hideo Fukumori
秀雄 福盛
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004163985A priority Critical patent/JP2005346317A/en
Publication of JP2005346317A publication Critical patent/JP2005346317A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To easily detect the direct cause of occurrence of an error in tracing a stack generated when the error is caused at the time of execution. <P>SOLUTION: An application development/execution system constituted of a stack trace priority information adding part (104), package information (105) stored in an external storage device, and a stack trace output control part (107) displays an output in which high priority order is fixed to important information during tracing the stack. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明はアプリケーションプログラムを開発・実行するための方法およびそのシステムに関するものである。   The present invention relates to a method and system for developing and executing an application program.

近年のプログラミング言語およびその実行システムでは、プログラム実行時にエラーが発生した際に、そのエラー発生箇所、およびその時点でのメソッド呼び出しの履歴をスタックトレースとして表示する機能を持つのが一般的となっている。そのような機能を備えた言語およびシステムとしては、Sun Microsystems社のJava(登録商標)や、Microsoft社の.NETなどがある。   In recent programming languages and their execution systems, when an error occurs during program execution, it is common to have a function that displays the location of the error and the history of method calls as a stack trace. Yes. Examples of languages and systems having such a function include Java (registered trademark) of Sun Microsystems, and Microsoft Corporation. NET etc.

スタックトレースはエラー発生に至るまでの呼び出し履歴すべてを記録・表示するために、一般に多数の行にまたがって表示されることが多い。しかしそのほとんどはエラー発生の直接原因でない箇所、例えばアプリケーション開発者の管理下にない、システムが標準提供するクラス群における呼び出し履歴の記録である。プログラム開発途中の状況では、実行時エラーの発生箇所の特定とその解決のためにスタックトレースを参照するが、その多くは先に延べたようにエラー発生の直接原因でない、無用な情報であることから、作業効率の低下を招いている。   Since the stack trace records and displays the entire call history up to the occurrence of an error, the stack trace is generally displayed across many lines. However, most of them are records of call history in classes that are not directly caused by errors, for example, classes provided by the system that are not under the control of the application developer. While the program is being developed, the stack trace is referenced to identify the location where the runtime error has occurred and to resolve it, but most of the information is useless information that is not the direct cause of the error, as described earlier. As a result, work efficiency is reduced.

一方、プログラム実行時にトレース情報を用いてエラー発生箇所の特定と解決を行う手段に関しては、特開平8−69390号「関数呼出トレース情報採取装置」および特開平8−137717号「デバッグ方法及び装置」がある。しかしこれら既存技術は、そのトレース情報を取得する手段について主に述べたものであり、エラー発生時にスタックトレースを出力する手段を既に持つ実行システムに対し、その表示情報を制御することによって作業効率の解決を主眼とした方式については説明していない。   On the other hand, regarding means for identifying and solving an error occurrence location using trace information during program execution, Japanese Patent Application Laid-Open No. 8-69390 “Function Call Trace Information Collection Device” and Japanese Patent Application Laid-Open No. 8-137717 “Debugging Method and Device”. There is. However, these existing technologies mainly describe the means for acquiring the trace information, and it is possible to improve the work efficiency by controlling the display information for an execution system that already has a means for outputting a stack trace when an error occurs. A method that focuses on the solution is not described.

また、マイクロプロセッサやマイクロコンピュータにおいて、デバッグ上必要な情報のみをトレースメモリに記憶させる手段に関しては、特開平6−187193号「プログラムデバッグ装置およびマイクロコンピュータ」および特開2003−263340号「デバッグ装置」がある。しかし特開平6−187193号「プログラムデバッグ装置およびマイクロコンピュータ」では、プログラム中における分岐命令を、デバッグ情報か否かの判断基準としている。また特開2003−263340号「デバッグ装置」では、プロセッサ情報に基づいたトレース情報を指定する方式である。どちらの方式も上記に述べた、スタックトレース中の無用な呼び出し情報の抑止を実現するものではない。   As for means for storing only information necessary for debugging in a trace memory in a microprocessor or microcomputer, Japanese Patent Laid-Open No. 6-187193 “Program Debugging Device and Microcomputer” and Japanese Patent Laid-Open No. 2003-263340 “Debugging Device”. There is. However, Japanese Patent Laid-Open No. 6-187193 “Program Debugging Device and Microcomputer” uses a branch instruction in a program as a criterion for determining whether or not it is debug information. Japanese Patent Laid-Open No. 2003-263340, “Debugging device”, is a method of specifying trace information based on processor information. Neither method realizes the suppression of unnecessary call information in the stack trace as described above.

以上の通り、上記いずれの既存技術も、エラー発生時にスタックトレースを出力する手段を既に持つ実行システムについて、システムが提供するクラス群に関する呼び出し情報が余分な情報として表示される問題に対する解決策を提示するものではない。また、システム以外のクラス群に関する余分な呼び出し情報がある場合にも、その表示形態の変更、あるいは抑止方法を提供するものではない。   As described above, any of the above existing technologies presents solutions to the problem that call information related to classes provided by the system is displayed as extra information for execution systems that already have a means to output a stack trace when an error occurs. Not what you want. In addition, even when there is extra call information related to a class group other than the system, it does not provide a method for changing or suppressing the display form.

特開平8−69390号公報JP-A-8-69390 特開平8−137717号公報JP-A-8-137717 特開平6−187193号公報JP-A-6-187193 特開2003−263340号公報JP 2003-263340 A http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Throwable.html#printStackTrace()http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Throwable.html#printStackTrace ()

本発明が解決しようとする課題は、実行時エラーにおいて発生するスタックトレースにおいて、そのエラーが発生した直接の原因を容易に発見可能とすることである。その具体的な方法として、システムの提供するコードとユーザが提供するコードの自動判別に基づき、スタックトレースの各行の表示形態の変更、または特定の行の表示を抑止することを特徴とする。   The problem to be solved by the present invention is to make it possible to easily find the direct cause of the occurrence of the error in the stack trace generated in the runtime error. As a specific method thereof, the display form of each line of the stack trace is changed or the display of a specific line is suppressed based on automatic discrimination between the code provided by the system and the code provided by the user.

上記目的を達成するために、システムの提供するクラス群の名称を記述した、パッケージリストをあらかじめ提供し、これを用いることにより、出力されるスタックトレースの行が優先的に表示すべきものか否かを自動的に判別する機能を備える。また、アプリケーション作成者がクラス群の名称を指定することにより、システムの提供する以外のクラスについても同様にスタックトレースにて優先的に表示すべきか否かの判別をする機能を備える。さらに、判別した結果に基づき、スタックトレースの各行に付加情報を設定する機能を備える。また、付加情報の加えられたスタックトレースを入力とし、適切な書式のスタックトレースを出力する機能を備えるものである。   In order to achieve the above purpose, whether or not the stack trace line to be output should be preferentially displayed by providing a package list that describes the names of classes provided by the system in advance. It has a function to automatically determine The application creator also has a function of determining whether or not classes other than those provided by the system should be preferentially displayed in the stack trace by designating the name of the class group. Furthermore, a function for setting additional information in each line of the stack trace based on the determined result is provided. In addition, it has a function of inputting a stack trace to which additional information is added and outputting a stack trace in an appropriate format.

本発明によれば、アプリケーションプログラム・開発実行システムにおいて、実行時エラーにより出力されたスタックトレースのうち、その発生原因となったアプリケーションプログラム上の不良箇所をスタックトレースからただちに発見することが可能となる。これによりプログラム開発時の不良修正の効率化が図れることとなる。また、本発明に示す方式では、システムの提供するライブラリクラス群であるか否かの判別を自動的に行うことによって、アプリケーションプログラム開発者があらかじめ特別な設定を行わずにその機能を利用することが可能となる。また、必要に応じ、ユーザが指定するクラス群についてその機能を利用することも可能となる。さらに、スタックトレースに付加情報を加える部分と付加情報に基づき出力を制御する部分を分離することにより、多数の出力形式に対応することが可能となるという特徴を持つ。   According to the present invention, in an application program / development execution system, it is possible to immediately find out from a stack trace a defective part on an application program that has caused the occurrence of a stack trace output due to a runtime error. . As a result, the efficiency of defect correction at the time of program development can be improved. Further, in the method shown in the present invention, the application program developer can use the function without making any special settings in advance by automatically determining whether or not the library class group is provided by the system. Is possible. Further, the function can be used for a class group designated by the user as necessary. Further, by separating the part for adding additional information to the stack trace and the part for controlling the output based on the additional information, it is possible to deal with a large number of output formats.

以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明する。   The best mode for carrying out the present invention will be described below in detail with reference to the drawings.

図1は、本発明における一実施例であるアプリケーションプログラム開発・実行システムの構成(100)を示すものである。本実施例は、アプリケーションプログラム開発・実行システム(101)とスタックトレース情報表示システム(109)の二つの構成要素に大きく分けられる。アプリケーションプログラム開発・実行システム(101)は、開発対象となるアプリケーションプログラム(102)、スタックトレース優先度情報付加部(104)、外部記憶装置内に保持されているパッケージ情報(105)、スタックトレース出力制御部(107)から構成されている。アプリケーションプログラム(102)にて実行時エラーが発生した場合、スタックトレース(103)はスタックトレース優先度情報付加部(104)に渡る。スタックトレース優先度情報付加部(104)は、パッケージ情報(105)を参照し、優先度情報付きスタックトレース(106)を生成する。生成された優先度情報付きスタックトレース(106)は、スタックトレース出力制御部に渡り(107)、ここでスタックトレース情報表示システム(109)に適した表示情報付きスタックトレース(108)が生成される。スタックトレース出力制御部(107)は、開発しようとするアプリケーションプログラムの用途に応じて、さまざまな種類の実装を選択し、利用することができる。スタックトレース情報表示システム(109)は通常、既存のログブラウザや、Webブラウザを、スタックトレース表示部(110)として使用する。スタックトレース情報表示システム(109)はアプリケーションプログラム開発・実行システム(101)とは別のマシン・あるいはプロセスに存在しても、または同一のマシン・あるいはプロセスに存在しても良い。   FIG. 1 shows a configuration (100) of an application program development / execution system according to an embodiment of the present invention. This embodiment can be broadly divided into two components: an application program development / execution system (101) and a stack trace information display system (109). An application program development / execution system (101) includes an application program (102) to be developed, a stack trace priority information adding unit (104), package information (105) held in an external storage device, and a stack trace output. It is comprised from the control part (107). When a runtime error occurs in the application program (102), the stack trace (103) is passed to the stack trace priority information adding unit (104). The stack trace priority information adding unit (104) refers to the package information (105) and generates a stack trace (106) with priority information. The generated stack trace with priority information (106) is passed to the stack trace output control unit (107), where a stack trace with display information (108) suitable for the stack trace information display system (109) is generated. . The stack trace output control unit (107) can select and use various types of implementations according to the application program to be developed. The stack trace information display system (109) normally uses an existing log browser or Web browser as the stack trace display unit (110). The stack trace information display system (109) may exist in a different machine or process from the application program development / execution system (101), or may exist in the same machine or process.

図2は、スタックトレース(103)の内容について具体的に説明する図(200)とである。スタックトレース(103)は、複数の行に分かれるテーブル考えることが出来る。各行には、実行時エラーが発生したときの呼び出し履歴が、呼び出しを行ったクラス名(201)、メソッド名(202)、およびその行番号(203)が記録されている。これらの各行は、呼び出す側が下の行に、呼び出される側が上の行に配置される形式で保持されている。   FIG. 2 is a diagram (200) for specifically explaining the contents of the stack trace (103). The stack trace (103) can be considered as a table divided into a plurality of lines. In each line, the call history when an error at the time of execution is recorded, the class name (201), the method name (202), and the line number (203) that made the call are recorded. Each of these lines is held in a format in which the caller is placed in the lower line and the callee is placed in the upper line.

図3は、パッケージ情報(105)の構成とその内容について説明する図(300)である。パッケージ情報は、システムパッケージリスト(301)と、ユーザパッケージリスト(302)に分けられる。システムパッケージリスト(301)は、システムが標準で用意しているクラスが属するプログラム単位(パッケージ)の一覧が列挙されたファイルであり、アプリケーションプログラム開発・実行システムがあらかじめ提供する。ユーザパッケージリスト(302)は、必要に応じユーザが新たに作成、追加するリストであり、ユーザがスタックトレースへの表示を抑止したいクラスあるいはパッケージを列挙する。パッケージリストに記述される項目は、クラス名そのものが記述されている形態と、「*」記号を含む形態の二つをとることができる。「*」記号を含む形態の場合には、その位置に任意の種類、および数の文字列を含むクラスが、スタックトレースへの表示の抑止の対象となる。例えば、「java(登録商標).*」と記述されている項目の場合、先頭に「java(登録商標).」と記述されているクラスはすべて、スタックトレースへの表示の抑止の対象となる。   FIG. 3 is a diagram (300) for explaining the configuration and contents of the package information (105). Package information is divided into a system package list (301) and a user package list (302). The system package list (301) is a file in which a list of program units (packages) to which a class prepared by the system as a standard belongs is listed, and is provided in advance by the application program development / execution system. The user package list (302) is a list newly created and added by the user as necessary, and lists the classes or packages that the user wants to suppress display on the stack trace. The items described in the package list can take two forms: the form in which the class name itself is described and the form including the “*” symbol. In the case of a form including the “*” symbol, a class including an arbitrary type and a number of character strings at the position is a target of inhibition of display on the stack trace. For example, in the case of an item described as “java (registered trademark). *”, All classes having “java (registered trademark)” at the beginning are subject to suppression of display on the stack trace. .

図4は、スタックトレース優先度情報付加部(104)の実行アルゴリズムについて説明したフローチャート(400)である。スタックトレース優先度情報付加部(104)は、スタックトレース(103)をアプリケーションプログラム(101)から受けると、まずスタックトレース(103)中の一つの行を取得し(ステップ401)その中のクラス名の項目(201)を、システムパッケージリスト(301)とユーザパッケージリスト(302)の各行と比較(ステップ402)する。比較を実行した結果(ステップ403)、トレース行のパッケージ部分に対応するものがある場合には、該当するトレース行の優先度フラグを0に設定する(ステップ404)。一方、対応するものが無い場合には、該当するトレース行の優先度フラグを1に設定する(ステップ405)。次にスタックトレースの末尾であるかの判定を行い(ステップ406)末尾である場合には実行を終了し、そうでない場合にはステップ401に移動する。   FIG. 4 is a flowchart (400) illustrating the execution algorithm of the stack trace priority information adding unit (104). When receiving the stack trace (103) from the application program (101), the stack trace priority information adding unit (104) first acquires one line in the stack trace (103) (step 401), and the class name therein The item (201) is compared with each row of the system package list (301) and the user package list (302) (step 402). If there is a result corresponding to the package part of the trace line as a result of the comparison (step 403), the priority flag of the corresponding trace line is set to 0 (step 404). On the other hand, if there is no corresponding item, the priority flag of the corresponding trace line is set to 1 (step 405). Next, it is determined whether it is the end of the stack trace (step 406). If it is the end, the execution is terminated, and if not, the process proceeds to step 401.

図5は、スタックトレース優先度情報付加部(104)により優先度フラグが付加された、優先度情報付きスタックトレース(106)の具体的な内容を示す図(500)である。クラス名(501)、メソッド名(502)、行番号(503)は、図2に示すスタックトレースの内容(200)中の、クラス名(201)、メソッド名(202)、行番号(203)と同じものが格納される。優先度情報付きスタックトレース(106)では、これらに加え、優先度フラグ(504)が、フローチャート400に示すアルゴリズムによって、各行に追加されている。各行において、優先度フラグ(504)が1と設定されているものは最終的に表示対象となり、優先度フラグが0と設定されているものは非表示対象となる。   FIG. 5 is a diagram (500) showing specific contents of the stack trace with priority information (106) to which the priority flag is added by the stack trace priority information adding unit (104). The class name (501), method name (502), and line number (503) are the class name (201), method name (202), and line number (203) in the contents (200) of the stack trace shown in FIG. The same thing is stored. In the stack trace (106) with priority information, in addition to these, a priority flag (504) is added to each line by the algorithm shown in the flowchart 400. In each row, those for which the priority flag (504) is set to 1 are finally displayed, and those for which the priority flag is set to 0 are not to be displayed.

図6は、スタックトレース出力制御部(107)の詳細な内容について説明した図(600)である。スタックトレース出力制御部(107)は、複数の出力フォーマットを出力可能とするために、内部に具体的な出力形式に応じた複数の制御部を保持する。本図においては、ログ出力用制御部(601)と、HTML出力用制御部(603)がそれに当たる。ログ出力用制御部(601)は、アプリケーションプログラム開発・実行環境(101)が提供するログ出力用ライブラリ(602)を使用してログファイル形式の表示情報付きスタックトレース(605)を出力する。また、HTML出力用制御部(603)は、同じくアプリケーションプログラム開発・実行環境(101)が提供するHTML出力用ライブラリ(604)を使用してHTML形式の表示情報付きスタックトレース(606)を出力する。これらは最終的にスタックトレース情報表示システム(109)に送られる。スタックトレース出力制御部(107)は、ログ出力用制御部(601)とHTML出力用制御部(603)を両者とも有効とし、二種類の表示情報付きスタックトレースを同時に出力することも、あるいはいずれかだけを有効とし、一種類の表示情報付きスタックトレースを出力することもできる。また、新たな出力形式が必要となった場合にはスタックトレース出力制御部(107)内に、新たな出力制御部を追加し、これを有効にすることで対応することが可能となる。   FIG. 6 is a diagram (600) illustrating the detailed contents of the stack trace output control unit (107). The stack trace output control unit (107) holds a plurality of control units corresponding to specific output formats therein so that a plurality of output formats can be output. In this figure, the log output control unit (601) and the HTML output control unit (603) correspond to this. The log output control unit (601) outputs a stack trace (605) with display information in a log file format using the log output library (602) provided by the application program development / execution environment (101). Also, the HTML output control unit (603) outputs a stack trace (606) with display information in the HTML format using the HTML output library (604) provided by the application program development / execution environment (101). . These are finally sent to the stack trace information display system (109). The stack trace output control unit (107) enables both the log output control unit (601) and the HTML output control unit (603) to output two types of stack traces with display information at the same time. It is possible to output only one type of stack trace with display information. Further, when a new output format is required, a new output control unit can be added to the stack trace output control unit (107) and enabled to cope with it.

図7は、ログ出力用制御部(601)の実行アルゴリズムについて説明したフローチャート(700)である。ログ出力用制御部は、優先度情報付きスタックトレース(106)を受け取ると、その先頭行から1行を読み込む(ステップ701)。次に読み込んだ行における優先度フラグ(504)が1であるかを判定し(ステップ702)、もし1である場合には、ログ出力レベルを「ERROR」とし、ログ出力用ライブラリ(602)に対し、スタックトレースの1行を出力する(ステップ703)。もし0である場合には、ログ出力レベルを「INFO」とし、ログ出力用ライブラリ(602)に対し、スタックトレースの1行を出力する(ステップ704)。その後、現在の行が優先度情報付きスタックトレース(106)の末尾であるかを判定し(ステップ705)、もしそうである場合には終了する。もしそうでない場合にはステップ701に移動し、処理を継続する。   FIG. 7 is a flowchart (700) illustrating an execution algorithm of the log output control unit (601). When the log output control unit receives the stack trace with priority information (106), it reads one line from the first line (step 701). Next, it is determined whether or not the priority flag (504) in the read line is 1 (step 702). If it is 1, the log output level is set to “ERROR” and the log output library (602) is set. On the other hand, one line of the stack trace is output (step 703). If it is 0, the log output level is set to “INFO”, and one line of the stack trace is output to the log output library (602) (step 704). Thereafter, it is determined whether or not the current line is the end of the stack trace (106) with priority information (step 705), and if so, the process ends. If not, the process moves to step 701 and the processing is continued.

図8は、ログ出力用制御部(601)を経由して出力されたログ形式のスタックトレースの一例を示す図(800)である。まず801に示すログ形式のスタックトレースでは、時刻、ログ出力レベル、具体的な表示内容の順に記述されたログの一部としてスタックトレースが出力されている。この図においては、「ERROR」レベルの方が「INFO」レベルよりも重要度が高い情報であるものとする。これを一般的なログ閲覧に使用される、ログブラウザと呼ばれるプログラムにて、優先度の低い出力、(本例では「INFO」レベル)を自動的に抑止するよう設定を行うと、802に示すように、スタックトレース中にて優先度の高い行だけが表示され、そうでない行の表示は抑止される。   FIG. 8 is a diagram (800) illustrating an example of a log format stack trace output via the log output control unit (601). First, in the log format stack trace 801, the stack trace is output as a part of the log described in the order of time, log output level, and specific display contents. In this figure, it is assumed that the “ERROR” level has higher importance than the “INFO” level. When a program called a log browser, which is used for general log browsing, is set to automatically suppress low-priority output (in this example, “INFO” level), it is shown in 802. As described above, only the high priority line is displayed in the stack trace, and the display of the other lines is suppressed.

また、アプリケーション実行環境にて、優先度の低いログ出力を実施しないよう、ログ出力用ライブラリを設定することもある。その場合も、802に示すような結果が得られることとなる。   Also, a log output library may be set so that low priority log output is not performed in the application execution environment. In such a case as well, a result as shown in 802 is obtained.

図9は、HTML出力用制御部(603)の実行アルゴリズムについて説明したフローチャート(900)である。HTML出力用制御部(603)は、優先度情報付きスタックトレース(106)を受け取ると、その先頭行から1行を読み込む(ステップ901)。次に読み込んだ行における優先度フラグ(504)が1であるかを判定し(ステップ902)、もし1である場合には、HTML出力ライブラリ(604)に対し、その行を強調するようなHTML指示文を付加したスタックトレースの1行を出力する(ステップ903)。強調の方法としては、その行のフォントサイズを拡大する、太字表示をさせる、赤などの目立つ色を使用するなどの方式が適用される。読み込んだ行における優先度フラグが0である場合には、HTML出力ライブラリ(604)に対し、その行を目立たなくするようなHTML指示文を付加したスタックトレースの1行を出力する(ステップ904)。目立たなくさせるために具体的な方法としては、その行のフォントサイズを縮小する、灰色などの目立たない色を使用するなどの方式が適用される。その後、現在の行が優先度情報付きスタックトレース(106)の末尾であるかを判定し(ステップ905)、もしそうである場合には終了する。もしそうでない場合にはステップ901に移動し、処理を継続する。   FIG. 9 is a flowchart (900) illustrating an execution algorithm of the HTML output control unit (603). When receiving the stack trace with priority information (106), the HTML output control unit (603) reads one line from the first line (step 901). Next, it is determined whether or not the priority flag (504) in the read line is 1 (step 902). If it is 1, HTML that emphasizes the line to the HTML output library (604). One line of the stack trace to which the directive is added is output (step 903). As an emphasis method, a method of enlarging the font size of the line, displaying bold, or using a prominent color such as red is applied. If the priority flag in the read line is 0, one line of the stack trace to which an HTML directive that makes the line inconspicuous is output to the HTML output library (604) (step 904). . As a specific method for making it inconspicuous, a method of reducing the font size of the line or using an inconspicuous color such as gray is applied. Thereafter, it is determined whether or not the current line is the end of the stack trace (106) with priority information (step 905), and if so, the process ends. If not, the process moves to step 901 and the process is continued.

図10は、HTML出力用制御部(603)から出力された、HTML形式の表示情報付きスタックトレース(606)を、Webブラウザ(1001)にて表示した様子を示した図(1000)である。HTML出力用制御部(603)にて設定されたHTML指示文に従い、Webブラウザ(1001)はスタックトレース中優先度の高い部分を強調表示し、そうでない部分を目立たないように表示している。   FIG. 10 is a diagram (1000) illustrating a state in which a stack trace (606) with display information in HTML format output from the HTML output control unit (603) is displayed on the Web browser (1001). In accordance with the HTML directive set by the HTML output control unit (603), the Web browser (1001) highlights the high-priority portion in the stack trace and displays the other portions inconspicuously.

本発明における一実施例であるアプリケーションプログラム開発・実行システム(100)の構成を示すものである。1 shows a configuration of an application program development / execution system (100) according to an embodiment of the present invention. スタックトレース(103)の内容について具体的に説明する図である。It is a figure explaining the content of a stack trace (103) concretely. パッケージ情報(105)の構成とその内容について説明する図である。It is a figure explaining the structure and the content of package information (105). スタックトレース優先度情報付加部(104)の実行アルゴリズムについて説明したフローチャートである。It is the flowchart explaining the execution algorithm of the stack trace priority information addition part (104). スタックトレース優先度情報付加部(104)により優先度フラグが付加された、優先度情報付きスタックトレース(106)の具体的な内容を示す図である。It is a figure which shows the specific content of the stack trace with priority information (106) to which the priority flag was added by the stack trace priority information addition part (104). スタックトレース出力制御部(107)の詳細な内容について説明した図である。It is a figure explaining the detailed content of the stack trace output control part (107). ログ出力用制御部(601)の実行アルゴリズムについて説明したフローチャートである。It is the flowchart explaining the execution algorithm of the control part for log output (601). ログ出力用制御部(601)を経由して出力されたログ形式のスタックトレースの一例を示す図である。It is a figure which shows an example of the stack trace of the log format output via the control part for log output (601). HTML出力用制御部(603)の実行アルゴリズムについて説明したフローチャートである。It is the flowchart explaining the execution algorithm of the control part for HTML output (603). HTML出力用制御部(603)から出力された表示情報付きスタックトレース(606)を、Webブラウザ(1001)にて表示した様子を示した図である。It is the figure which showed a mode that the stack trace (606) with a display information output from the control part for HTML output (603) was displayed on the web browser (1001).

符号の説明Explanation of symbols

100…本発明における一実施例であるアプリケーションプログラム開発・実行システムの構成、101…アプリケーションプログラム開発・実行システム、102…アプリケーションプログラム、103…スタックトレース、104…スタックトレース優先度情報付加部、105…パッケージ情報、106…優先度情報付きスタックトレース、107…スタックトレース出力制御部、108…表示情報付きスタックトレース、109…スタックトレース情報表示システム、110…スタックトレース表示部、200…スタックトレースの内容の具体的説明図、201…スタックトレースの「クラス名」欄、202…スタックトレースの「メソッド名」欄、203…スタックトレースの「行番号」欄、300…パッケージ情報(105)の構成とその内容の説明図、301…システムパッケージリスト、302…ユーザパッケージリスト、500…優先度情報付きスタックトレースの内容の具体的説明図、501…優先度情報付きスタックトレースの「クラス名」欄、502…優先度情報付きスタックトレースの「メソッド名」欄、503…優先度情報付きスタックトレースの「行番号」欄、504…優先度情報付きスタックトレースの「優先度フラグ」欄、600…スタックトレース出力制御部の詳細な内容の説明図、601…ログ出力用制御部、602…ログ出力用ライブラリ、603…HTML出力用制御部、604…HTML出力用ライブラリ、605…ログファイル形式の表示情報付きスタックトレース、606…HTML形式の表示情報付きスタックトレース、800…ログ出力用制御部を経由して出力されたログ形式のスタックトレースの一例、801…ログ出力レベルが付加されたログ形式スタックトレース、802…ログブラウザあるいはアプリケーション実行環境にて優先度の低い出力を抑止した場合のログ形式スタックトレース、1000…HTML形式の表示情報付きスタックトレースを、Webブラウザにて表示した様子、1001…Webブラウザ。
DESCRIPTION OF SYMBOLS 100 ... Configuration of application program development / execution system according to one embodiment of the present invention, 101 ... Application program development / execution system, 102 ... Application program, 103 ... Stack trace, 104 ... Stack trace priority information addition unit, 105 ... Package information, 106 ... Stack trace with priority information, 107 ... Stack trace output control unit, 108 ... Stack trace with display information, 109 ... Stack trace information display system, 110 ... Stack trace display unit, 200 ... Content of stack trace Specific description diagram 201: Stack trace "class name" field 202: Stack trace "method name" field 203: Stack trace "line number" field 300: Package information (105) And a description diagram of the contents, 301... System package list, 302... User package list, 500... Specific explanation diagram of the contents of the stack trace with priority information, 501. 502 ... "Method name" field of stack trace with priority information, 503 ... "Line number" field of stack trace with priority information, 504 ... "Priority flag" field of stack trace with priority information, 600 ... Stack trace Description diagram of detailed contents of the output control unit, 601... Log output control unit, 602... Log output library, 603... HTML output control unit, 604 .. HTML output library, 605. Stack trace, 606... Stack trace with display information in HTML format, 800 An example of a log format stack trace output via the log output control unit, 801... Log format stack trace with a log output level added, 802... Low priority output in the log browser or application execution environment Log format stack trace when suppressed, 1000 ... Stack trace with display information in HTML format displayed on a Web browser, 1001 ... Web browser.

Claims (4)

プログラム実行時にエラーが発生した際に、そのエラーが発生した時点におけるメソッド呼び出しの履歴をスタックトレースとして表示することが出来るシステムにおいて、そのコードが属するクラスの種類の違いに応じ、スタックトレースの各行の表示形態を変更、あるいはスタックトレースの特定の行の表示を抑止することを特徴とするアプリケーションプログラム開発・実行システム。   When an error occurs during program execution, the system call history at the time the error occurred can be displayed as a stack trace. Depending on the type of class to which the code belongs, An application program development / execution system characterized by changing a display form or suppressing display of a specific line of a stack trace. 請求項1のアプリケーションプログラム開発・実行システムにおいて、システムコードに属するクラス群のリストをあらかじめ提供することにより、アプリケーション開発者による事前の設定を必要とすることなく、スタックトレース表示における優先度に関する情報を設定する方法。   In the application program development / execution system according to claim 1, by providing a list of classes belonging to the system code in advance, information relating to the priority in the stack trace display can be obtained without requiring any prior setting by the application developer. How to set. 請求項1のアプリケーションプログラム開発・実行システムにおいて、アプリケーション開発者が、スタックトレースへの表示を抑止したいクラス群がある場合に、その抑止対象となるクラス群のリストを作成することにより、スタックトレース表示における優先度に関する情報を設定する方法。   2. The application program development / execution system according to claim 1, wherein when there is a class group that the application developer wants to suppress display to the stack trace, a stack trace display is made by creating a list of classes to be suppressed. How to set information about priority in. 請求項1のアプリケーションプログラム開発・実行システムにおいて、請求項2および請求項3に示す方法により付加情報がつけられたスタックトレースを用いて、複数の出力形式によるスタックトレースの出力を実施する方法。
4. A method for implementing stack trace output in a plurality of output formats using the stack trace to which additional information is attached by the method shown in claim 2 and claim 3 in the application program development / execution system of claim 1.
JP2004163985A 2004-06-02 2004-06-02 Application program development/execution system Pending JP2005346317A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004163985A JP2005346317A (en) 2004-06-02 2004-06-02 Application program development/execution system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004163985A JP2005346317A (en) 2004-06-02 2004-06-02 Application program development/execution system

Publications (1)

Publication Number Publication Date
JP2005346317A true JP2005346317A (en) 2005-12-15

Family

ID=35498645

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004163985A Pending JP2005346317A (en) 2004-06-02 2004-06-02 Application program development/execution system

Country Status (1)

Country Link
JP (1) JP2005346317A (en)

Similar Documents

Publication Publication Date Title
US8136093B2 (en) System for adding code commentary to source code during software debugging
US20080127060A1 (en) Dynamic mating of a modified user interface with pre-modified user interface code library
JP4056477B2 (en) A system for displaying display data copied to the clipboard
CN108984328B (en) Stack backtracking method and device
JP2010097426A (en) Computer program, and device and method for receiving input of source program
US20040230890A1 (en) Information processing system, control method, control program, and recording medium
CN111381920A (en) Display method and device of pop-up window assembly and electronic terminal
CN108959200A (en) A kind of method and system for extracting the picture in PPT document
CN112307509A (en) Desensitization processing method, equipment, medium and electronic equipment
US8732661B2 (en) User experience customization framework
JP2006196002A (en) Software tool including modeling of asynchronous program flow
JP4983142B2 (en) Program monitoring method, computer, and abnormality monitoring program
US9165007B2 (en) Log message optimization to ignore or identify redundant log messages
JP2005346317A (en) Application program development/execution system
CN113190235B (en) Code analysis method and device, electronic terminal and storage medium
JP2007034825A (en) Debugging device
CN106844192A (en) A kind of detection method of program&#39;s source code, device and electronic equipment
JP5702265B2 (en) Program automatic generation apparatus and program automatic generation method
JP2008020972A (en) Software analysis system
JP2010079343A (en) Device, program and method for trace information acquisition
JP2009042951A (en) Data extraction method and device from program
US7281166B1 (en) User-customizable input error handling
CN117687641A (en) Method and system for realizing quick packaging of visual selection installation files under Linux
JP2669387B2 (en) Database driven automatic program generation system
JP2008071007A (en) Aspect analyzing method and device, and computer program

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060424