















本発明は、プロセストレースに関する。 The present invention relates to a process trace.
  従来のプロセストレース装置では、トレース対象のプロセスのID(Identifier)とそのプロセス挙動を監視することによりプロセスIDによるトレース情報の管理を行い、トレース結果の表示を行っている。
  これに対し、トレース情報に実行ユーザ名を追加することでプロセスのトレース結果の確認を容易にしようとすることが行われていた(例えば、特許文献1)。In the conventional process trace apparatus, the trace information is managed by the process ID by monitoring the ID (Identifier) of the process to be traced and its process behavior, and the trace result is displayed.
 On the other hand, it has been attempted to easily confirm the trace result of the process by adding the execution user name to the trace information (for example, Patent Document 1).
しかし、従来のプロセストレース装置では、複数プロセス実行環境下でのプロセストレースにてプロセスがどのプロセス実行環境下で実行されたものか、プロセスのIDやユーザ名だけでは判断することが難しくトレース結果の確認が容易ではないという課題があった。 However, with a conventional process trace device, it is difficult to determine in which process execution environment a process was executed in a process trace under a multiple process execution environment, using only the process ID and user name. There was a problem that confirmation was not easy.
この発明は、上記のような課題を解決することを主な目的とし、複数プロセス実行環境下におけるプロセストレースにてトレース結果の確認を容易にすることを主な目的とする。 The main object of the present invention is to solve the above-mentioned problems, and to make it easy to confirm the trace result by a process trace under a multi-process execution environment.
  本発明に係る計算機装置は、
  第1のプロセス実行環境が存在し、前記第1のプロセス実行環境内に第2のプロセス実行環境が存在する計算機装置であって、
  プロセスごとに、プロセスの挙動をトレースするトレース部と、
  プロセスごとに、プロセスが実行される実行環境が前記第1のプロセス実行環境及び前記第2のプロセス実行環境のいずれであるかを判断するプロセス実行環境判断部と、
  同一のプロセスに対する前記トレース部のトレース結果と前記プロセス実行環境判断部の判断結果とを組み合わせて、プロセスごとにトレース結果と実行環境とが記述されるトレース情報を生成するトレース情報生成部とを有することを特徴とする。The computer apparatus according to the present invention is:
 A computer apparatus in which a first process execution environment exists, and a second process execution environment exists in the first process execution environment,
 For each process, a trace part that traces the behavior of the process,
 A process execution environment determination unit that determines, for each process, whether the execution environment in which the process is executed is the first process execution environment or the second process execution environment;
 A trace information generation unit for generating trace information in which the trace result and the execution environment are described for each process by combining the trace result of the trace unit and the determination result of the process execution environment determination unit for the same process; It is characterized by that.
本発明によれば、プロセスごとにトレース結果と実行環境とが記述されるトレース情報を生成するため、複数プロセス実行環境下におけるプロセストレースにてトレース結果を容易に確認することができる。 According to the present invention, trace information in which a trace result and an execution environment are described for each process is generated. Therefore, the trace result can be easily confirmed by a process trace in a multiple process execution environment.
  実施の形態1.
  図1は、本実施の形態に係るプログラムトレースを行う計算機装置10を示す構成図である。
 FIG. 1 is a configuration diagram showing a
  図1において、計算機装置10はCPU(Central  Processing  Unit)やメモリ、HDD(Hard  Disk  Drive)、入力部などを備えたプロセス実行環境を実行するための装置である。  In FIG. 1, a
  プロセス実行環境A20は、Linux(登録商標)のOS(Operating  System)である。
  プロセス実行環境A20は、第1のプロセス実行環境の例に相当する。The process execution environment A20 is a Linux (registered trademark) OS (Operating System).
 The process execution environment A20 corresponds to an example of a first process execution environment.
プロセスAA21とプロセスAB22は、プロセス実行環境A20上で実行するアプリケーションに代表されるプロセスである。 The process AA21 and the process AB22 are processes represented by applications executed on the process execution environment A20.
  プロセス実行環境B30は、プロセス実行環境A20上で動作するプロセス実行環境A20とは分離されたプロセス実行環境である。
  プロセス実行環境B30は、第2のプロセス実行環境の例に相当する。The process execution environment B30 is a process execution environment separated from the process execution environment A20 operating on the process execution environment A20.
 The process execution environment B30 corresponds to an example of a second process execution environment.
プロセスBA31とプロセスBB32は、プロセス実行環境B30上で実行するアプリケーションに代表されるプロセスである。 The process BA31 and the process BB32 are processes represented by applications executed on the process execution environment B30.
  トレース部40は、プロセスAA21、プロセスAB22、プロセスBA31、プロセスBB32の挙動をトレースするプロセス実行環境A20上で動作する。
  トレース部40は、トレース情報生成部の例でもある。The
 The
  トレース記憶部41は、トレース部40にてトレースした挙動情報を記憶する。  The
  プロセス管理部42は、プロセス実行環境B30上で動作する各プロセスを含むプロセス実行環境A20上で動作する各プロセスの起動終了等を管理する。  The
  プロセス実行環境判断部43は、プロセス管理部42の情報を解析し、トレース情報に付加するためのプロセス実行環境情報を算出する。  The process execution
  プロセス実行環境管理テーブル44は、プロセス実行環境判断部43にて処理した情報を管理するテーブルである。  The process execution environment management table 44 is a table for managing information processed by the process execution
図2は、図1のプロセス実行環境A20についてレイヤ構造を示したものである。 FIG. 2 shows a layer structure for the process execution environment A20 of FIG.
  図2において、計算機装置10からプロセスAB22までは図1と同一である。
  プロセス実行環境A20は、カーネル24とユーザランドA23を用いてプロセスAA21及びプロセスAB22を制御する。
  プロセス実行環境B30は、プロセス実行環境A20内のカーネル24を共用し、ユーザランドA23の一部機能とユーザランドB33を用いてプロセスBA31及びプロセスBB32を制御する。
  この構成はLinux(登録商標)ではコンテナと呼ばれるものである。In FIG. 2, the
 The process execution environment A20 controls the process AA21 and the process AB22 using the
 The process execution environment B30 shares the
 This configuration is called a container in Linux (registered trademark).
図3はプロセス実行環境管理テーブル44の例である。 FIG. 3 is an example of the process execution environment management table 44.
  図3において、プロセスID101は、プロセス管理部42で管理している各プロセスに一意に決定されるプロセス番号を格納している。
  タイムスタンプ102は、当該レコードをプロセス実行環境管理テーブル44に登録した時間を格納している。
  プロセス名103は、プロセス管理部42で管理している各プロセスの実行名を格納している。
  実行環境名104は、プロセス管理部42の情報を取得しプロセス実行環境判断部43にてプロセス実行環境を解析した結果を格納している。In FIG. 3, the
 The time stamp 102 stores the time when the record is registered in the process execution environment management table 44.
 The
 The
  図4はプロセス実行環境判断部43の処理フローである。  FIG. 4 is a process flow of the process execution
  図4において処理201のトレース終了判断を行うまで、プロセス実行環境判断部43はプロセス実行環境A20にて実行されているプロセスIDの確認とプロセス実行環境管理テーブル44への登録を継続する。  In FIG. 4, the process execution
  処理202にて、プロセス実行環境判断部43は、プロセス実行環境管理テーブル44未登録プロセスの有無を確認し、未登録プロセスが存在した場合は処理203にて未登録プロセスのプロセス名とIDを取得する処理を実施する。
  処理204にて、プロセス実行環境判断部43は、プロセス名がinitかどうかの判定を行い、initであれば処理205にてプロセスIDが1か否かを確認し、1であれば処理206にてプロセス実行環境管理テーブル44に実行環境Aのプロセス(プロセス名init)として登録する。
  プロセスIDが1でなければ処理207にて、プロセス実行環境判断部43は、プロセス実行環境管理テーブル44に実行環境Bのプロセス(プロセス名init)として登録する。
  なお、プロセス名がinitのプロセスは、最初に起動され、他のプロセスを起動する始点プロセスである。In
 In
 If the process ID is not 1, the process execution
 Note that the process whose process name is init is a start process that is started first and starts another process.
  処理204にてプロセスがinitプロセスでは無いと判断した場合は、プロセス実行環境判断部43は、処理208にてプロセスの親プロセスを確認する。
  確認の結果処理209にて親プロセスが実行環境Aのinitプロセスの場合は、プロセス実行環境判断部43は、処理210にてプロセス実行環境管理テーブル44に実行環境Aのプロセス(プロセス名:モジュール名)を登録し、処理211にて親プロセスが実行環境Bのinitプロセスの場合は処理212にてプロセス実行環境管理テーブル44に実行環境Bのプロセス(プロセス名:モジュール名)を登録する。
  処理209及び処理211にて親プロセスが実行環境Aのinitプロセス、実行環境Bのinitプロセスで無かった場合は、プロセス実行環境判断部43は、処理208にて確認した親プロセスについて更に処理208から処理213を実施してどちらのinitプロセスの属性なのかの調査を実施し、結果をプロセス実行環境管理テーブル44に登録する。If it is determined in
 If the parent process is the init process of the execution environment A in the
 When the parent process is not the init process of the execution environment A and the init process of the execution environment B in the
  図5は、トレース記憶部41にて記憶されるトレース結果の例である。  FIG. 5 is an example of a trace result stored in the
  図5において、ID301はトレース結果のシーケンス番号、タイムスタンプ302はトレースした時間、プロセスID303はトレースしたプロセスID、イベント304はトレースしたプロセスIDが実行したイベントである。  In FIG. 5,
  図6は、トレース記憶部41にて記憶されるトレース結果の例である。  FIG. 6 is an example of a trace result stored in the
  図6において、ID401はトレース結果のシーケンス番号、タイムスタンプ402はトレースした時間、プロセスID403はトレースしたプロセスID、イベント404はトレースしたプロセスIDが実行したイベント、実行環境405は図3に示すプロセス実行環境管理テーブル44を用いて確認可能なプロセスID403が動作している実行環境である。
  図6に示すトレース結果は、トレース情報の例に相当する。6,
 The trace result shown in FIG. 6 corresponds to an example of trace information.
  図7はトレース部40の処理フローである。  FIG. 7 is a processing flow of the
  図7において処理開始時、トレース部40は、処理501にて、プロセス実行環境判断部43を実行し、図4に示した処理をプロセス実行環境判断部43にて行う。
  処理502にて、トレース部40は、ftraceやstrace等のLinux(登録商標)で使用する任意のトレースプログラムを実行する。
  これらのトレースプログラムは少なくとも図5で示す情報を持っている。
  処理503でトレースを終了するまで、プロセス実行環境判断部43とトレースプログラムは動作し、終了操作が行われると処理504にてftrace等の任意のトレースプログラムを終了し、処理505にてプロセス実行環境判断部43を終了する。
  その後、トレース部40は、処理506にてプロセス実行環境管理テーブル44とトレース結果300をマージし、図6に示したトレース結果を出力する。In FIG. 7, at the start of processing, the
 In
 These trace programs have at least the information shown in FIG.
 The process execution
 Thereafter, the
次に動作について説明する。 Next, the operation will be described.
  計算機装置10はLinux(登録商標)が動作しており、Linux(登録商標)のコンテナ機能によりプロセス実行環境A20上でプロセス実行環境B30が動作している。
  図2ではプロセス実行環境A上でプロセスAA21とプロセスAB22が、プロセス実行環境BでプロセスBA31とプロセスBB32が動作していることを示しているが、これは動作を説明するための例であり、プロセス数は2に限定しない。
  操作者がトレースを開始した際、図7に示す処理が実行され、処理501にてプロセス実行環境判断部43を実行し図4に示した処理がプロセス実行環境判断部43にて開始される。
  プロセス実行環境AのinitプロセスのプロセスIDは1であるため、先ずに実行環境Aのinitプロセスがプロセス実行環境管理テーブル44に登録され、引き続き、プロセス実行環境A20の起動時に生成されたプロセスがプロセス実行環境管理テーブル44に登録される。
  続いて、プロセス実行環境B30のinitが登録される。
  プロセス実行環境B30のinitのプロセスIDは、プロセス実行環境A20から参照すると1ではないため、プロセス実行環境A20のinitプロセスとプロセス実行環境B30のinitプロセスが区別できることになる。
  引き続き、プロセス実行環境A20またはプロセス実行環境B30上のプロセスがプロセス実行環境管理テーブル44に登録される。
  次に、処理502にてftraceやstrace等のLinux(登録商標)で使用する任意のトレースプログラムを実行する。
  ftraceやstrace等のLinux(登録商標)で使用する任意のトレースプログラムは既知のものであり、詳細の動作について説明は省略するが、少なくとも、図5に示すID301、タイムスタンプ302、プロセスID303、イベント304を出力する。The
 FIG. 2 shows that the process AA21 and the process AB22 are operating in the process execution environment A, and the process BA31 and the process BB32 are operating in the process execution environment B. This is an example for explaining the operation. The number of processes is not limited to two.
 When the operator starts tracing, the process shown in FIG. 7 is executed, the process execution
 Since the process ID of the init process of the process execution environment A is 1, first, the init process of the execution environment A is first registered in the process execution environment management table 44, and subsequently, the process generated when the process execution environment A20 is started is a process. It is registered in the execution environment management table 44.
 Subsequently, init of the process execution environment B30 is registered.
 Since the init process ID of the process execution environment B30 is not 1 when referred to from the process execution environment A20, the init process of the process execution environment A20 and the init process of the process execution environment B30 can be distinguished.
 Subsequently, the processes on the process execution environment A20 or the process execution environment B30 are registered in the process execution environment management table 44.
 Next, in a
 Arbitrary trace programs used in Linux (registered trademark) such as ftrace and trace are already known, and detailed description thereof is omitted, but at
  トレース終了後は処理504にて先ず任意のトレースプログラムを終了し、処理505にてプロセス実行環境判断部43を終了する。
  次に処理506にてプロセス実行環境管理テーブル44とトレース結果300を用いてマージする。
  マージする際、プロセス実行環境管理テーブル44のレコードにあるプロセスID101の番号とトレース結果300のレコードにあるプロセスID303の情報だけではなく、プロセス実行環境管理テーブル44のレコードにあるタイムスタンプ102の時間情報とトレース結果300のレコードにあるタイムスタンプ402の時間情報の情報を用い、プロセス実行環境管理テーブル44のプロセスIDが一致し、なおかつ、時間情報の差分が最小となるレコードに存在する実行環境名104をマージする。
  これは、プロセスIDは再利用される場合があり、なおかつ、図8に示すとおりトレースログ記録の時間情報とプロセス実行環境管理テーブルの時間情報が前後する可能性を考慮するためである。After the trace is completed, an arbitrary trace program is first terminated in
 In
 When merging, not only the
 This is because the process ID may be reused, and the possibility that the time information of the trace log recording and the time information of the process execution environment management table may be mixed as shown in FIG.
  以上より、図6に示す既に説明した実行環境を含めたトレース結果を得ることができる。
  従来の構成では図9に示す実行環境が考慮されないプロセスの動作状況のみが確認可能であったが、本実施の形態では、図6のトレース結果を用いることにより、図9のみならず、図10や図11に示すようにプロセス実行環境を考慮したプロセスの動作状況を確認することができる。
  このため、各実行環境の動作状況が他の実行環境に影響されているかどうかの確認や、実行環境を跨った処理についての問題点把握が非常に容易となる効果が得られる。From the above, it is possible to obtain a trace result including the already described execution environment shown in FIG.
 In the conventional configuration, only the operation state of the process in which the execution environment illustrated in FIG. 9 is not considered can be confirmed. However, in the present embodiment, not only FIG. 9 but also FIG. As shown in FIG. 11, it is possible to confirm the operation status of the process considering the process execution environment.
 For this reason, it is possible to confirm whether or not the operation status of each execution environment is affected by other execution environments and to grasp the problem about processing across the execution environments.
  実施の形態2.
  以上の実施の形態1では、図6に示すトレース結果をトレース後にマージすることにより実現可能とするようにしたものであるが、次に図6に示すトレース結果を都度マージする場合の実施形態を示す。
  図12はこのような場合のトレース部40の処理フローである。
 In the first embodiment described above, the trace result shown in FIG. 6 can be realized by merging after the trace. Next, the embodiment in which the trace result shown in FIG. Show.
 FIG. 12 is a processing flow of the
  図12において処理開始時、処理601にてプロセス実行環境判断部43を実行し、図4に示した処理をプロセス実行環境判断部43にて行う。
  次に、処理602にてftraceやstrace等のLinux(登録商標)で使用する任意のトレースプログラムを実行する。
  これらのトレースプログラムは少なくとも図5で示す情報を持っている。
  処理603でトレース結果300のレコードにトレース結果400に存在しないレコードを検出した場合は、処理604にて該当レコードのプロセスIDがプロセス実行環境管理テーブルに登録されているかを確認し、登録がある場合は処理605にて当該レコードをマージしてトレース結果400のレコードに登録を行う。
  処理604は、図8に示すとおりトレースログ記録の時間情報とプロセス実行環境管理テーブルの時間情報が前後する可能性を考慮したものである。In FIG. 12, at the start of processing, the process execution
 Next, in
 These trace programs have at least the information shown in FIG.
 When a record that does not exist in the
 The
  以上より、図6に示す既に説明した実行環境を含めたトレース結果を得ることができる。
  従来の構成では図9に示す実行環境が考慮されないプロセスの動作状況のみが確認可能であったが、本実施の形態では、図6のトレース結果を用いることにより、図9のみならず、図10や図11に示すようにプロセス実行環境を考慮したプロセスの動作状況をリアルタイムで確認することができる。
  このため、各実行環境の動作状況が他の実行環境に影響されているかどうかの確認や、実行環境を跨った処理についての問題点把握がリアルタイムで容易となる効果が得られる。From the above, it is possible to obtain a trace result including the already described execution environment shown in FIG.
 In the conventional configuration, only the operation state of the process in which the execution environment illustrated in FIG. 9 is not considered can be confirmed. However, in the present embodiment, not only FIG. 9 but also FIG. As shown in FIG. 11, the operation status of the process considering the process execution environment can be confirmed in real time.
 For this reason, it is possible to confirm whether the operation status of each execution environment is influenced by other execution environments and to grasp the problems of processing across the execution environments in real time.
  実施の形態3.
  以上の実施の形態1では、プロセス実行環境判断部をポーリングにより動作させるものであるが、次に図13に示すプロセス実行環境判断部をイベントにより動作させる場合について説明する。
  図13は、本実施の形態に係るプログラムトレースを行う計算機装置710を示す構成図である。
 In the first embodiment described above, the process execution environment determination unit is operated by polling. Next, a case where the process execution environment determination unit shown in FIG. 13 is operated by an event will be described.
 FIG. 13 is a configuration diagram showing a
  図13において、計算機装置710はCPUやメモリ、HDD、入力部などを備えたプロセス実行環境を実行するための装置である。  In FIG. 13, a
  プロセス実行環境A720は、Linux(登録商標)のOS(Operating  System)である。
  プロセス実行環境A720は、第1のプロセス実行環境の例に相当する。The process
 The process execution environment A720 corresponds to an example of a first process execution environment.
  プロセスAA721とプロセスAB722は、プロセス実行環境A720上で実行するアプリケーションに代表されるプロセスである。  The
  プロセス実行環境B730は、プロセス実行環境A720上で動作するプロセス実行環境A720とは分離されたプロセス実行環境である。
  プロセス実行環境B730は、第2のプロセス実行環境の例に相当する。The process execution environment B730 is a process execution environment separated from the process execution environment A720 operating on the process execution environment A720.
 The process execution environment B730 corresponds to an example of a second process execution environment.
  プロセスBA731とプロセスBB732は、プロセス実行環境B730上で実行するアプリケーションに代表されるプロセスである。  The
  トレース部740は、プロセスAA721、プロセスAB722、プロセスBA731、プロセスBB732の挙動をトレースするプロセス実行環境A720上で動作する。
  トレース部740は、トレース情報生成部の例でもある。The
 The
  トレース記憶部741は、トレース部740にてトレースした挙動情報を記憶する。  The
  プロセス管理部742は、プロセス実行環境B730上で動作する各プロセスを含むプロセス実行環境A720上で動作する各プロセスの起動終了等を管理する。  The
  プロセス実行環境判断部743は、プロセス管理部742の情報を解析し、トレース情報に付加するためのプロセス実行環境情報を算出する。  The process execution
  プロセス実行環境管理テーブル744は、プロセス実行環境判断部743にて処理した情報を管理するテーブルである。  The process execution environment management table 744 is a table for managing information processed by the process execution
図14は、図1のプロセス実行環境A720についてレイヤ構造を示したものである。 FIG. 14 shows a layer structure for the process execution environment A720 of FIG.
  図14において、計算機装置710からプロセスAB722までは図1と同一である。
  プロセス実行環境A720は、カーネル724とユーザランドA723を用いてプロセスAA721及びプロセスAB722を制御する。
  プロセス実行環境B730は、プロセス実行環境A720内のカーネル724を共用し、ユーザランドA723の一部機能とユーザランドB733を用いてプロセスBA731及びプロセスBB732を制御する。
  この構成はLinux(登録商標)ではコンテナと呼ばれるものである。In FIG. 14, the
 The process execution environment A720 controls the process AA721 and the process AB722 using the
 The process execution environment B730 shares the
 This configuration is called a container in Linux (registered trademark).
  図15はプロセス実行環境判断部743の処理フローである。  FIG. 15 is a process flow of the process execution
  図15において処理801のトレース終了判断を行うまで、プロセス実行環境判断部743はプロセス実行環境A720にて実行されているプロセスIDの確認とプロセス実行環境管理テーブル744への登録を継続する。  In FIG. 15, the process execution
  処理802にて、プロセス管理部742よりプロセス起動を通知するメッセージを受けた場合に、プロセス実行環境判断部743は、処理803にて起動プロセスのプロセス名とIDを取得する処理を実施する。
  処理804にて、プロセス実行環境判断部743は、プロセス名がinitかどうかの判定をおこない、initであれば処理805にてプロセスIDが1か否かを確認し、1であれば処理806にてプロセス実行環境管理テーブル744に実行環境Aのプロセス(プロセス名init)として登録する。
  プロセスIDが1でなければ処理807にて、プロセス実行環境判断部743は、プロセス実行環境管理テーブル744に実行環境Bのプロセス(プロセス名init)として登録する。
  なお、プロセス名がinitのプロセスは、最初に起動され、他のプロセスを起動する始点プロセスである。In
 In
 If the process ID is not 1, the process execution
 Note that the process whose process name is init is a start process that is started first and starts another process.
  処理804にてプロセスがinitプロセスでは無いと判断した場合は、プロセス実行環境判断部743は、処理808にてプロセスの親プロセスを確認する。
  確認の結果処理809にて親プロセスが実行環境Aのinitプロセスの場合は、プロセス実行環境判断部743は、処理810にてプロセス実行環境管理テーブル744に実行環境Aのプロセス(プロセス名:モジュール名)を登録し、処理811にて親プロセスが実行環境Bのinitプロセスの場合は処理812にてプロセス実行環境管理テーブル744に実行環境Bのプロセス(プロセス名:モジュール名)を登録する。
  処理809及び処理811にて親プロセスが実行環境Aのinitプロセス、実行環境Bのinitプロセスで無かった場合は、プロセス実行環境判断部743は、処理808にて確認した親プロセスについて更に処理808から処理813を実施してどちらのinitプロセスの属性なのかの調査を実施し、結果をプロセス実行環境管理テーブル744に登録する。If it is determined in
 If the parent process is the init process of the execution environment A in the
 If the parent process is not the init process of the execution environment A and the init process of the execution environment B in the
  以降は実施の形態1で説明した処理を行うことにより、実施の形態1で説明した図6に示す既に説明した実行環境を含めたトレース結果を得ることができ、なおかつ、ポーリングと比較しイベント待ちの場合は計算機装置710のCPUリソース負荷減少の効果が得られる。
  従来の構成では図9に示す実行環境が考慮されないプロセスの動作状況のみが確認可能であったが、本実施の形態では、図6のトレース結果を用いることにより、図9のみならず、図10や図11に示すようにプロセス実行環境を考慮したプロセスの動作状況を確認することができる。
  このため、各実行環境の動作状況が他の実行環境に影響されているかどうかの確認や、実行環境を跨った処理についての問題点把握が非常に容易となる効果が得られる。Thereafter, by performing the processing described in the first embodiment, it is possible to obtain a trace result including the execution environment already described in FIG. 6 described in the first embodiment and wait for an event compared with polling. In this case, the effect of reducing the CPU resource load of the
 In the conventional configuration, only the operation state of the process in which the execution environment illustrated in FIG. 9 is not considered can be confirmed. However, in the present embodiment, not only FIG. 9 but also FIG. As shown in FIG. 11, it is possible to confirm the operation status of the process considering the process execution environment.
 For this reason, it is possible to confirm whether or not the operation status of each execution environment is affected by other execution environments and to grasp the problem about processing across the execution environments.
  実施の形態4.
  以上の実施の形態3では、トレース中のCPU負荷を減少させ図6に示すトレース結果をトレース後にマージすることにより実現可能ものであるが、次に図6に示すトレース結果を都度マージする場合の実施形態を示す。
 In the third embodiment described above, it is possible to reduce the CPU load during tracing and merge the trace results shown in FIG. 6 after the trace. Next, in the case of merging the trace results shown in FIG. An embodiment is shown.
図12はこのような場合のトレース部の処理フローである。 FIG. 12 is a processing flow of the trace unit in such a case.
  図12において処理開始時、処理601にてプロセス実行環境判断部743を実行し図15に示した処理をプロセス実行環境判断部743にて行う。
  次に、処理602にてftraceやstrace等のLinux(登録商標)で使用する任意のトレースプログラムを実行する。
  これらのトレースプログラムは少なくとも図5で示す情報を持っている。
  処理603でトレース結果300のレコードにトレース結果400に存在しないレコードを検出した場合は、処理604にて該当レコードのプロセスIDがプロセス実行環境管理テーブルに登録されているかを確認し、登録がある場合は処理605にて当該レコードをマージしてトレース結果400のレコードに登録を行う。
  処理604は、図8に示すとおりトレースログ記録の時間情報とプロセス実行環境管理テーブルの時間情報が前後する可能性を考慮したものである。In FIG. 12, at the start of processing, the process execution
 Next, in
 These trace programs have at least the information shown in FIG.
 When a record that does not exist in the
 The
  以上より、図6に示す既に説明した実行環境を含めたトレース結果を得ることができる。
  従来の構成では図9に示す実行環境が考慮されないプロセスの動作状況のみが確認可能であったが、本実施の形態では、図6のトレース結果を用いることにより、図9のみならず、図10や図11に示すようにプロセス実行環境を考慮したプロセスの動作状況をリアルタイムで確認することができる。
  このため、各実行環境の動作状況が他の実行環境に影響されているかどうかの確認や、実行環境を跨った処理についての問題点把握がリアルタイムで容易となる効果が得られる。From the above, it is possible to obtain a trace result including the already described execution environment shown in FIG.
 In the conventional configuration, only the operation state of the process in which the execution environment illustrated in FIG. 9 is not considered can be confirmed. However, in the present embodiment, not only FIG. 9 but also FIG. As shown in FIG. 11, the operation status of the process considering the process execution environment can be confirmed in real time.
 For this reason, it is possible to confirm whether the operation status of each execution environment is influenced by other execution environments and to grasp the problems of processing across the execution environments in real time.
  最後に、実施の形態1〜4に示した計算機装置10、710のハードウェア構成例を図16を参照して説明する。
  計算機装置10、710はコンピュータであり、計算機装置10、710の各要素をプログラムで実現することができる。
  計算機装置10、710のハードウェア構成としては、バスに、演算装置901、外部記憶装置902、主記憶装置903、通信装置904、入出力装置905が接続されている。Finally, a hardware configuration example of the
 The
 As a hardware configuration of the
  演算装置901は、プログラムを実行するCPUである。
  外部記憶装置902は、例えばROM(Read  Only  Memory)やフラッシュメモリ、ハードディスク装置である。
  主記憶装置903は、RAM(Random  Access  Memory)である。
  通信装置904は、例えば、NIC(Network  Interface  Card)である。
  入出力装置905は、例えばマウス、キーボード、ディスプレイ装置等である。The
 The
 The
 The
 The input /
  プログラムは、通常は外部記憶装置902に記憶されており、主記憶装置903にロードされた状態で、順次演算装置901に読み込まれ、実行される。
  プログラムは、図1及び図13に示す「〜部」(トレース記憶部41、741を除く、以下も同様)として説明している機能を実現するプログラムである。
  更に、外部記憶装置902にはオペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶装置903にロードされ、演算装置901はOSを実行しながら、図1及び図13に示す「〜部」の機能を実現するプログラムを実行する。
  また、実施の形態1〜4の説明において、「〜の判断」、「〜の判定」、「〜の確認」、「〜の抽出」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の生成」、「〜の入力」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置903にファイルとして記憶されている。The program is normally stored in the
 The program is a program that realizes the function described as “˜unit” (excluding the
 Further, an operating system (OS) is also stored in the
 In the description of the first to fourth embodiments, “determination of”, “determination of”, “confirmation of”, “extraction of”, “setting of”, “registration of”, “ Information, data, signal values, and variable values indicating the results of the processing described as “selection”, “generation of”, “input of”, “output of”, and the like are stored in the
  なお、図16の構成は、あくまでも計算機装置10、710のハードウェア構成の一例を示すものであり、計算機装置10、710のハードウェア構成は図16に記載の構成に限らず、他の構成であってもよい。  Note that the configuration in FIG. 16 is merely an example of the hardware configuration of the
また、実施の形態1〜4に示す手順により、本発明に係るプロセス解析方法を実現可能である。 Further, the process analysis method according to the present invention can be realized by the procedure shown in the first to fourth embodiments.
  以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、2つ以上を組み合わせて実施しても構わない。
  あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。
  あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
  なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。As mentioned above, although embodiment of this invention was described, you may implement in combination of 2 or more among these embodiment.
 Alternatively, one of these embodiments may be partially implemented.
 Alternatively, two or more of these embodiments may be partially combined.
 In addition, this invention is not limited to these embodiment, A various change is possible as needed.
  10  計算機装置、20  プロセス実行環境A、21  プロセスAA、22  プロセスAB、30  プロセス実行環境B、31  プロセスBA、32  プロセスBB、40  トレース部、41  トレース記憶部、42  プロセス管理部、43  プロセス実行環境判断部、44  プロセス実行環境管理テーブル、710  計算機装置、720  プロセス実行環境A、721  プロセスAA、722  プロセスAB、730  プロセス実行環境B、731  プロセスBA、732  プロセスBB、740  トレース部、741  トレース記憶部、742  プロセス管理部、743  プロセス実行環境判断部、744  プロセス実行環境管理テーブル。  DESCRIPTION OF
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| JP2014043890AJP6272088B2 (en) | 2014-03-06 | 2014-03-06 | Computer apparatus, process analysis method, and program | 
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| JP2014043890AJP6272088B2 (en) | 2014-03-06 | 2014-03-06 | Computer apparatus, process analysis method, and program | 
| Publication Number | Publication Date | 
|---|---|
| JP2015170084A JP2015170084A (en) | 2015-09-28 | 
| JP6272088B2true JP6272088B2 (en) | 2018-01-31 | 
| Application Number | Title | Priority Date | Filing Date | 
|---|---|---|---|
| JP2014043890AExpired - Fee RelatedJP6272088B2 (en) | 2014-03-06 | 2014-03-06 | Computer apparatus, process analysis method, and program | 
| Country | Link | 
|---|---|
| JP (1) | JP6272088B2 (en) | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| JP4859546B2 (en)* | 2006-06-08 | 2012-01-25 | 三菱電機株式会社 | Computer system, computer system trace data storage method, and trace data storage program | 
| US8381231B2 (en)* | 2008-09-09 | 2013-02-19 | Dell Products L.P. | Deployment and management of virtual containers | 
| Publication number | Publication date | 
|---|---|
| JP2015170084A (en) | 2015-09-28 | 
| Publication | Publication Date | Title | 
|---|---|---|
| US10348747B2 (en) | Non-transitory computer-readable recording medium storing cyber attack analysis support program, cyber attack analysis support method, and cyber attack analysis support device | |
| US9386079B2 (en) | Method and system of virtual desktop infrastructure deployment studio | |
| KR102301946B1 (en) | Visual tools for failure analysis in distributed systems | |
| US8365196B2 (en) | Method and device for log events processing | |
| US11048799B2 (en) | Dynamic malware analysis based on shared library call information | |
| US9396233B2 (en) | Alert management | |
| US9727394B2 (en) | Establishing causality order of computer trace records | |
| US20220374528A1 (en) | Evaluation apparatus, evaluation system, evaluation method, and program | |
| JP6238221B2 (en) | Apparatus, method and program for monitoring execution of software | |
| JP7031735B2 (en) | Information processing equipment, control methods, and programs | |
| US9959133B2 (en) | Identification and removal of zombie virtual machines | |
| JP2010003224A (en) | Test information management server, test information management method and program | |
| US8589894B2 (en) | Self-monitoring object-oriented applications | |
| JP5441043B2 (en) | Program, information processing apparatus, and information processing method | |
| JP6505849B2 (en) | Generation of element identifier | |
| CN113641628B (en) | Data quality detection method, device, equipment and storage medium | |
| JP2018508865A (en) | Application event tracking | |
| CN104461741B (en) | Graphics device interface based computing device optimizing method and device | |
| JP6536680B2 (en) | INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND PROGRAM | |
| JP6272088B2 (en) | Computer apparatus, process analysis method, and program | |
| CN110958243A (en) | Network vulnerability submitting method and device, storage medium and electronic equipment | |
| US20140172369A1 (en) | Computer-readable recording medium, abnormality cause estimating apparatus, and abnormality cause estimating method | |
| JP2009266031A (en) | Computer system and computer | |
| CN107295074A (en) | It is a kind of to realize the method and apparatus that cloud resource is shown | |
| JP6972735B2 (en) | Display control program, display control method and display control device | 
| Date | Code | Title | Description | 
|---|---|---|---|
| A621 | Written request for application examination | Free format text:JAPANESE INTERMEDIATE CODE: A621 Effective date:20161128 | |
| A977 | Report on retrieval | Free format text:JAPANESE INTERMEDIATE CODE: A971007 Effective date:20170921 | |
| A131 | Notification of reasons for refusal | Free format text:JAPANESE INTERMEDIATE CODE: A131 Effective date:20171010 | |
| A521 | Written amendment | Free format text:JAPANESE INTERMEDIATE CODE: A523 Effective date:20171122 | |
| 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:20171205 | |
| A61 | First payment of annual fees (during grant procedure) | Free format text:JAPANESE INTERMEDIATE CODE: A61 Effective date:20171228 | |
| R150 | Certificate of patent or registration of utility model | Ref document number:6272088 Country of ref document:JP Free format text:JAPANESE INTERMEDIATE CODE: R150 | |
| LAPS | Cancellation because of no payment of annual fees |