JP2010182237A - スタックトレース採取システム、方法およびプログラム - Google Patents
スタックトレース採取システム、方法およびプログラム Download PDFInfo
- Publication number
- JP2010182237A JP2010182237A JP2009027271A JP2009027271A JP2010182237A JP 2010182237 A JP2010182237 A JP 2010182237A JP 2009027271 A JP2009027271 A JP 2009027271A JP 2009027271 A JP2009027271 A JP 2009027271A JP 2010182237 A JP2010182237 A JP 2010182237A
- Authority
- JP
- Japan
- Prior art keywords
- stack trace
- thread
- trace
- stack
- unit
- 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
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【解決手段】スタックトレース採取システムは、プロセスが実行単位であるスレッド毎に実行される実行部30と、トレースデータ格納部33を有する。実行部30は、実行中のスレッドが別のスレッドに切り替わる際に、該実行中のスレッドの切り替え直前における処理状態を示す第1のスタックトレース情報とスレッドの切り替え後に実行された別のスレッドの切り替え直後の処理状態を示す第2のスタックトレース情報をそれぞれ採取し、該採取した第1及び第2のスタックトレース情報をトレースデータ格納部33に格納するスタックトレース採取部31と、トレースデータ格納部33に格納された第1および第2のスタックトレース情報を外部記憶装置に出力するトレースデータ出力部32を有する。
【選択図】図9
Description
プログラムにより提供されるプロセスが実行単位であるスレッド毎に実行される実行部と、
トレースデータ格納部と、を有し、
前記実行部は、
実行中のスレッドが別のスレッドに切り替わる際に、該実行中のスレッドの切り替え直前における処理状態を示す第1のスタックトレース情報とスレッドの切り替え後に実行された前記別のスレッドの切り替え直後の処理状態を示す第2のスタックトレース情報をそれぞれ採取し、該採取した第1及び第2のスタックトレース情報を前記トレースデータ格納部に格納するスタックトレース採取部と、
前記トレースデータ格納部に格納された第1および第2のスタックトレース情報を外部記憶装置に出力するトレースデータ出力部と、を有することを特徴とする。
プログラムにより提供されるプロセスを実行単位であるスレッド毎に実行し、
前記実行中のスレッドが別のスレッドに切り替わる際に、前記実行中のスレッドの切り替え直前における処理状態を示す第1のスタックトレース情報とスレッドの切り替え後に実行された前記別のスレッドの切り替え直後の処理状態を示す第2のスタックトレース情報をそれぞれ採取し、
採取した前記第1及び第2のスタックトレース情報をトレースデータ格納部に格納し、
前記トレースデータ格納部に格納された第1および第2のスタックトレース情報を外部記憶装置に出力することを特徴とする。
プログラムにより提供されるプロセスを実行単位であるスレッド毎に実行する処理と、
前記実行中のスレッドが別のスレッドに切り替わる際に、前記実行中のスレッドの切り替え直前における処理状態を示す第1のスタックトレース情報とスレッドの切り替え後に実行された前記別のスレッドの切り替え直後の処理状態を示す第2のスタックトレース情報をそれぞれ採取する処理と、
採取した前記第1及び第2のスタックトレース情報をトレースデータ格納部に格納する処理と、
前記トレースデータ格納部に格納された第1および第2のスタックトレース情報を外部記憶装置に出力する処理と、をコンピュータに実行させることを特徴とする。
図1は、本発明の第1の実施形態であるスタックトレース採取システムの構成を示すブロック図である。図1を参照すると、スタックトレース採取システム1は、プログラムを実行するCPU(Central Processing Unit)1と、CPU1上で動作するオペレーティングシステム(OS)3と、メモリ8を有する。
図8は、本発明の第2の実施形態であるスタックトレース採取システムの構成を示すブロック図である。
図9は、本発明の他の実施形態であるスタックトレース採取システムの構成を示すブロック図である。
2 プロセス
3 オペレーティングシステム
4 スレッド
5 スタックトレース情報
6 スタックトレース監視部
7、31 スタックトレース採取部
8 メモリ
8a トレースデータ格納領域
9、32 トレースデータ出力部
10 スタックトレース出力コマンド
20 ディスク
21 入力装置
30 実行部
33 トレースデータ格納部
Claims (10)
- プログラムにより提供されるプロセスが実行単位であるスレッド毎に実行される実行部と、
トレースデータ格納部と、を有し、
前記実行部は、
実行中のスレッドが別のスレッドに切り替わる際に、該実行中のスレッドの切り替え直前における処理状態を示す第1のスタックトレース情報とスレッドの切り替え後に実行された前記別のスレッドの切り替え直後の処理状態を示す第2のスタックトレース情報をそれぞれ採取し、該採取した第1及び第2のスタックトレース情報を前記トレースデータ格納部に格納するスタックトレース採取部と、
前記トレースデータ格納部に格納された第1および第2のスタックトレース情報を外部記憶装置に出力するトレースデータ出力部と、を有する、スタックトレース採取システム。 - 前記スタックトレース採取部は、採取した前記第1または第2のスタックトレース情報を格納するための空き領域が前記トレースデータ格納部に無い場合は、前記トレースデータ出力部に対して、スタックトレース情報の出力要求を行い、
前記トレースデータ出力部は、前記スタックトレース採取部からの出力要求に従い、前記トレースデータ格納部に格納された第1および第2のスタックトレース情報を前記外部記憶装置に出力する、請求項1に記載のスタックトレース採取システム。 - 当該スタックトレース採取システムの状態を監視し、特定の状態を検出すると、前記トレースデータ出力部に対して、スタックトレース情報の出力要求を行うスタックトレース監視部をさらに有し、
前記トレースデータ出力部は、前記スタックトレース監視部からの出力要求に従い、前記トレースデータ格納部に格納された第1および第2のスタックトレース情報を前記外部記憶装置に出力する、請求項1または2に記載のスタックトレース採取システム。 - 前記スタックトレース監視部は、前記特定の状態として、外部入力装置からの所定のコマンド信号を受信する、請求項3に記載のスタックトレース採取システム。
- 前記実行部は、オペレーティングシステムを実行し、該オペレーティングシステムの機能として、前記スタックトレース採取部、トレースデータ出力部およびスタックトレース監視部が構成されている、請求項3または4に記載のスタックトレース採取システム。
- 前記実行部は、第1および第2のCPUを有し、
前記第1のCPUは、オペレーティングシステムを実行し、該オペレーティングシステムの機能として、前記スタックトレース採取部およびスタックトレース監視部が構成され、
前記トレースデータ出力部は、前記第2のCPUにより構成されている、請求項3または4に記載のスタックトレース採取システム。 - 前記プロセスは、前記オペレーティングシステムを構成する管理プログラムにより提供されるプロセスを含む、請求項5または6に記載のスタックトレース採取システム。
- 前記スタックトレース採取部は、採取した前記第1または第2のスタックトレース情報に、採取対象であるプロセスおよびスレッドの識別情報と切り替えの直前および直後を識別するための直前/直後識別情報を付与し、
前記トレースデータ出力部は、前記トレースデータ格納部に格納された第1および第2のスタックトレース情報を前記外部記憶装置に出力した場合に、前記プロセスおよびスレッドの識別情報および直前/直後識別情報を検索キーとして、過去に前記外部記憶装置へ出力したスタックトレース情報と今回出力したスタックトレース情報との間で対応するスタックトレース情報を抽出し、該抽出した対応するスタックトレース情報の内容を比較し、比較結果が不一致となった場合に、該比較したスタックトレース情報の内容を、前記プロセスおよびスレッドの識別情報および直前/直後識別情報を示す情報と一緒に、前記外部記憶装置の所定の領域へ格納する、請求項1から7のいずれか1項に記載のスタックトレース採取システム。 - プログラムにより提供されるプロセスを実行単位であるスレッド毎に実行し、
前記実行中のスレッドが別のスレッドに切り替わる際に、前記実行中のスレッドの切り替え直前における処理状態を示す第1のスタックトレース情報とスレッドの切り替え後に実行された前記別のスレッドの切り替え直後の処理状態を示す第2のスタックトレース情報をそれぞれ採取し、
採取した前記第1及び第2のスタックトレース情報をトレースデータ格納部に格納し、
前記トレースデータ格納部に格納された第1および第2のスタックトレース情報を外部記憶装置に出力する、スタックトレース採取方法。 - プログラムにより提供されるプロセスを実行単位であるスレッド毎に実行する処理と、
前記実行中のスレッドが別のスレッドに切り替わる際に、前記実行中のスレッドの切り替え直前における処理状態を示す第1のスタックトレース情報とスレッドの切り替え後に実行された前記別のスレッドの切り替え直後の処理状態を示す第2のスタックトレース情報をそれぞれ採取する処理と、
採取した前記第1及び第2のスタックトレース情報をトレースデータ格納部に格納する処理と、
前記トレースデータ格納部に格納された第1および第2のスタックトレース情報を外部記憶装置に出力する処理と、をコンピュータに実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009027271A JP5509609B2 (ja) | 2009-02-09 | 2009-02-09 | スタックトレース採取システム、方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009027271A JP5509609B2 (ja) | 2009-02-09 | 2009-02-09 | スタックトレース採取システム、方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010182237A true JP2010182237A (ja) | 2010-08-19 |
JP5509609B2 JP5509609B2 (ja) | 2014-06-04 |
Family
ID=42763782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009027271A Active JP5509609B2 (ja) | 2009-02-09 | 2009-02-09 | スタックトレース採取システム、方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5509609B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110888753A (zh) * | 2019-11-08 | 2020-03-17 | 烽火通信科技股份有限公司 | 软件故障定位方法及系统 |
JP7490038B2 (ja) | 2016-05-09 | 2024-05-24 | オラクル・インターナショナル・コーポレイション | ヒープをため込んでいるスタックトレースを特定するための、スレッド強度とヒープ使用量との相関 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0375940A (ja) * | 1989-08-18 | 1991-03-29 | Matsushita Electric Ind Co Ltd | マルチタスクコントローラ |
JPH03278135A (ja) * | 1990-03-20 | 1991-12-09 | Mitsubishi Electric Corp | スタックトレース装置 |
JPH06149615A (ja) * | 1992-11-13 | 1994-05-31 | Toshiba Corp | イベント記録方式 |
JPH07295862A (ja) * | 1994-04-28 | 1995-11-10 | Mitsubishi Electric Corp | エラートレースによるシステム制御管理方法 |
JPH09185531A (ja) * | 1995-12-28 | 1997-07-15 | Hitachi Ltd | トレース情報の欠落回避装置 |
JPH113250A (ja) * | 1997-06-13 | 1999-01-06 | Nec Corp | スレッド情報採取方法及びスレッド情報採取プログラム を記録した記録媒体 |
JP2008204011A (ja) * | 2007-02-16 | 2008-09-04 | Seiko Epson Corp | マルチスレッドシステム、スレッド動作異常検知方法 |
-
2009
- 2009-02-09 JP JP2009027271A patent/JP5509609B2/ja active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0375940A (ja) * | 1989-08-18 | 1991-03-29 | Matsushita Electric Ind Co Ltd | マルチタスクコントローラ |
JPH03278135A (ja) * | 1990-03-20 | 1991-12-09 | Mitsubishi Electric Corp | スタックトレース装置 |
JPH06149615A (ja) * | 1992-11-13 | 1994-05-31 | Toshiba Corp | イベント記録方式 |
JPH07295862A (ja) * | 1994-04-28 | 1995-11-10 | Mitsubishi Electric Corp | エラートレースによるシステム制御管理方法 |
JPH09185531A (ja) * | 1995-12-28 | 1997-07-15 | Hitachi Ltd | トレース情報の欠落回避装置 |
JPH113250A (ja) * | 1997-06-13 | 1999-01-06 | Nec Corp | スレッド情報採取方法及びスレッド情報採取プログラム を記録した記録媒体 |
JP2008204011A (ja) * | 2007-02-16 | 2008-09-04 | Seiko Epson Corp | マルチスレッドシステム、スレッド動作異常検知方法 |
Non-Patent Citations (2)
Title |
---|
CSND200600457017; 青柳龍也: 'JMXによるJVMの監視/管理機能を試す' Java WORLD 第9巻、第10号, 20051001, pp.169-178, (株)IDGジャパン * |
JPN6013008322; 青柳龍也: 'JMXによるJVMの監視/管理機能を試す' Java WORLD 第9巻、第10号, 20051001, pp.169-178, (株)IDGジャパン * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7490038B2 (ja) | 2016-05-09 | 2024-05-24 | オラクル・インターナショナル・コーポレイション | ヒープをため込んでいるスタックトレースを特定するための、スレッド強度とヒープ使用量との相関 |
CN110888753A (zh) * | 2019-11-08 | 2020-03-17 | 烽火通信科技股份有限公司 | 软件故障定位方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
JP5509609B2 (ja) | 2014-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8418149B2 (en) | Differential comparison system and method | |
KR101393992B1 (ko) | 정보 처리 장치, 정보 처리 방법, 및 프로그램을 기록한 컴퓨터 판독가능한 기록 매체 | |
US20090193298A1 (en) | System and method of fault detection, diagnosis and prevention for complex computing systems | |
US20080276129A1 (en) | Software tracing | |
US9164846B2 (en) | Restarting a software system | |
JP2010086364A (ja) | 情報処理装置、動作状態監視装置および方法 | |
US10740166B2 (en) | Thread based dynamic data collection | |
JP2013206147A (ja) | ロギング装置、ロギング方法及びプログラム | |
JP5623557B2 (ja) | 診断データを収集するためのマルチスレッド化コンピューティング環境における方法、装置、およびコンピュータ・プログラム | |
US8489938B2 (en) | Diagnostic data capture in a computing environment | |
JP5509609B2 (ja) | スタックトレース採取システム、方法およびプログラム | |
JP6880961B2 (ja) | 情報処理装置、およびログ記録方法 | |
US8271711B2 (en) | Program status detecting apparatus and method | |
US20050166089A1 (en) | Method for processing a diagnosis of a processor, information processing system and a diagnostic processing program | |
US20180173728A1 (en) | Information processing apparatus and method | |
JP2009223714A (ja) | 演算回路及び演算回路の異常解析方法 | |
WO2012137239A1 (ja) | 計算機システム | |
JP2007172414A (ja) | 組込機器向けのコンパクトコアダンププログラム及びコンパクトコアダンプを用いた方法 | |
WO2009147738A1 (ja) | 情報処理装置及びその制御方法並びにモニタプログラム | |
JP5921306B2 (ja) | 情報処理装置および情報処理方法およびプログラム | |
US8447949B2 (en) | Detection of zero address events in address formation | |
US20220237073A1 (en) | Information processing apparatus, non-transitory computer readable medium storing program, and method | |
US8614799B2 (en) | Memory paging | |
JP5832408B2 (ja) | 仮想計算機システム及びその制御方法 | |
JP5221477B2 (ja) | 組込機器向けのメモリ領域保存プログラム及びメモリ領域保存方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120112 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130213 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130226 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130425 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130910 |
|
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: 20140225 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140310 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5509609 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |