JP2013167929A - 情報処理装置および情報処理プログラム - Google Patents
情報処理装置および情報処理プログラム Download PDFInfo
- Publication number
- JP2013167929A JP2013167929A JP2012029271A JP2012029271A JP2013167929A JP 2013167929 A JP2013167929 A JP 2013167929A JP 2012029271 A JP2012029271 A JP 2012029271A JP 2012029271 A JP2012029271 A JP 2012029271A JP 2013167929 A JP2013167929 A JP 2013167929A
- Authority
- JP
- Japan
- Prior art keywords
- data
- processing
- log
- log acquisition
- instruction
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】通常処理に負担をかけずに、処理時間を計測する。
【解決手段】実施形態に係る情報処理装置は、データ入力手段と、ログ取得フラグ更新手段と、データ処理手段と、データ出力手段とを備える。データ入力手段は、処理データを記憶装置に記憶する。ログ取得フラグ更新手段は、処理データがテスト系の処理データの場合、記憶装置に記憶されるログ取得フラグデータを、真に更新する。データ処理手段は、ログ取得フラグデータが真の場合、処理データを処理する命令を実行して結果データを生成するとともに、ログを取得する命令を実行して、当該ログを取得する命令を実行した時刻と、当該ログを取得する命令の識別子とを対応づけて一時記憶装置に記憶し、ログデータを生成する。データ出力手段は、ログ取得フラグデータが真でない場合、結果データを出力し、ログ取得フラグデータが真の場合、ログデータを出力する。
【選択図】 図1
【解決手段】実施形態に係る情報処理装置は、データ入力手段と、ログ取得フラグ更新手段と、データ処理手段と、データ出力手段とを備える。データ入力手段は、処理データを記憶装置に記憶する。ログ取得フラグ更新手段は、処理データがテスト系の処理データの場合、記憶装置に記憶されるログ取得フラグデータを、真に更新する。データ処理手段は、ログ取得フラグデータが真の場合、処理データを処理する命令を実行して結果データを生成するとともに、ログを取得する命令を実行して、当該ログを取得する命令を実行した時刻と、当該ログを取得する命令の識別子とを対応づけて一時記憶装置に記憶し、ログデータを生成する。データ出力手段は、ログ取得フラグデータが真でない場合、結果データを出力し、ログ取得フラグデータが真の場合、ログデータを出力する。
【選択図】 図1
Description
本発明の実施形態は、情報処理装置および情報処理プログラムに関する。
一般的な情報処理プログラムの開発において、コンピュータにおける情報処理プログラムの処理時間が、予め定められた要求を満たしていることが重要になる。この処理時間は、コンピュータの性能ももちろん、単位時間あたりに処理するべきデータ量などによっても異なる。
そこで、所定のデータの処理において、処理時間を計測することが重要である。処理時間を計測するために、ログを取得することが有効である。
しかしながら、情報処理プログラムを実行する際、通常処理において常にログを取得することは、処理遅延にもつながり実用的ではない。
従って本発明の目的は、通常処理に負担をかけずに、処理時間を計測可能な情報処理装置および情報処理プログラムを提供することである。
上記課題を解決するために、本発明の実施形態に係る情報処理装置は、データ入力手段と、ログ取得フラグ更新手段と、データ処理手段と、データ出力手段とを備える。データ入力手段は、処理データを記憶装置に記憶する。ログ取得フラグ更新手段は、処理データがテスト系の処理データの場合、記憶装置に記憶されるログ取得フラグデータを、真に更新する。データ処理手段は、ログ取得フラグデータが真でない場合、処理データを処理する命令を実行して結果データを生成する。またデータ処理手段は、ログ取得フラグデータが真の場合、処理データを処理する命令を実行して結果データを生成するとともに、ログを取得する命令を実行して、当該ログを取得する命令を実行した時刻と、当該ログを取得する命令の識別子とを対応づけて一時記憶装置に記憶し、ログデータを生成する。データ出力手段は、ログ取得フラグデータが真でない場合、結果データを出力し、ログ取得フラグデータが真の場合、ログデータを出力する。
次に、図面を参照して、実施の形態を説明する。以下の図面の記載において、同一または類似の部分には同一または類似の符号を付している。
(実施の形態)
実施の形態に係る情報処理装置1は、図1に示すように、記憶装置10、一時記憶装置20、演算処理制御装置30などを備える一般的なコンピュータである。情報処理装置1は、所定の手順を実行させるための情報処理プログラムを記憶する。一般的なコンピュータに情報処理プログラムがインストールされ、一般的なコンピュータがこの情報処理プログラムに従って所定の手順を実行することにより、コンピュータは、図1に示す各手段として機能する。
実施の形態に係る情報処理装置1は、図1に示すように、記憶装置10、一時記憶装置20、演算処理制御装置30などを備える一般的なコンピュータである。情報処理装置1は、所定の手順を実行させるための情報処理プログラムを記憶する。一般的なコンピュータに情報処理プログラムがインストールされ、一般的なコンピュータがこの情報処理プログラムに従って所定の手順を実行することにより、コンピュータは、図1に示す各手段として機能する。
ここで、記憶装置10はハードディスクなどであって、一時記憶装置20は、RAMなどである。一時記憶装置20は、記憶装置10と比較して、より高速の読み書きを実現する記憶媒体である。
実施の形態に係る情報処理プログラムは、処理データ11を処理して結果データ13を出力するためのデータ処理命令(処理データを処理する命令)と、ログを取得してログデータ21を生成するためのログ取得命令(ログを取得する命令)を含む。処理データ11は、複数の処理手段による処理を経て処理される。ログ取得命令は、複数の処理手段のいずれかに属する。情報処理装置1は、ログ取得命令を実行したタイミングで、ログにイベントを書き出す。
情報処理プログラムは、入力されるデータによって、異なる手順を情報処理装置1に実行させる。具体的には、情報処理装置1は、処理データ11が本番系の場合と、テスト系の場合とで、情報処理プログラムに基づいて異なる手順を実行する。本番系の処理データ11を処理する場合、情報処理装置1は、情報処理プログラムに含まれるデータ処理命令に基づいて、処理データ11を処理して結果データ13を出力する。テスト系の処理データ11を処理する際、情報処理装置1は、情報処理プログラムに含まれるデータ処理命令に基づいて、処理データ11を処理して結果データ13を出力するとともに、所定のタイミングでログ取得命令を実行する。ログ取得命令を実行すると、情報処理装置1は、実行した時刻を取得し、一時記憶装置20に記憶する。
図1を参照して、実施の形態に係る情報処理装置1を詳述する。
記憶装置10は、処理データ11、ログ取得フラグデータ12および結果データ13を記憶する。また一時記憶装置20は、ログデータ21を記憶する。演算処理制御装置30の各手段が、処理データ11、結果データ13およびログデータ21を記憶装置10に記憶する。ログ取得フラグデータ12は、予め初期処理などで、デフォルトで「偽」に設定され、演算処理制御装置30によって所定の条件で「真」に設定されるデータである。
演算処理制御装置30は、データ入力手段31、ログ取得フラグ更新手段32、データ処理手段33およびデータ出力手段34を備える。
データ入力手段31は、処理データ11を記憶装置10に記憶する。データ入力手段31は、例えば、CD−ROMやUSBメモリなどの外部記憶装置に記憶された処理データを、オペレータの操作によって記憶装置10に記憶しても良い。また、例えば、予め記憶装置10に記憶されたデータから、オペレータが処理データを特定することによって、データ入力手段31が、処理データを取得しても良い。
実施の形態において処理データ11は、本番系のデータと、テスト系のデータのいずれかである。例えば、処理データ11は、処理データ11の特定の場所に、本番系のデータであるか、テスト系のデータであるかを示すフラグを有する。この特定の場所以外は、本番系のデータもテスト系のデータも同様である。処理データが生成される際、情報処理プログラムを本番系で稼働させたい場合、処理データ11の特定の場所に本番系のデータを示すフラグを設定する。一方、情報処理プログラムをテスト系で稼働させたい場合、処理データ11の特定の場所にテスト系のデータを示すフラグを設定する。
ログ取得フラグ更新手段32は、処理データ11がテスト系の処理データの場合、記憶装置10に記憶されるログ取得フラグデータ12を、真に更新する。ログ取得フラグ更新手段32は、処理データ入力手段31が処理データ11を入力すると、記憶装置10から処理データ11を読み出す。ログ取得フラグ更新手段32は、例えば、処理データ11の特定の場所のフラグを読み出して、この処理データ11が本番系のデータか、テスト系のデータであるかを判定する。処理データ11がテスト系のデータの場合、ログ取得フラグ更新手段32は、ログ取得フラグデータ12を「真」に更新する。なお、このログ取得フラグは、デフォルトで「偽」に設定される。
データ処理手段33は、処理データ11を処理する命令を実行する。データ処理手段33は、複数の処理手段33a、33b、33c…を備える。この各処理手段は、例えば、情報処理プログラムの実現する各種機能や各モジュールに対応するものである。
データ処理手段33は、ログ取得フラグデータ12が「真」でない場合、処理データ11を処理するデータ処理命令を実行して結果データ13を生成する。一方ログ取得フラグデータ12が「真」の場合、データ処理手段33は、処理データ11を処理するデータ処理命令を実行して結果データ13を生成する。さらにデータ処理手段33は、ログ取得命令を実行して、当該ログ取得命令を実行した時刻と、当該ログ取得命令の識別子とを対応づけて一時記憶装置20に記憶し、ログデータ21を生成する。ここで、ログ取得命令の識別子は、情報処理プログラムにおいて、ログ取得命令が設けられた位置を特定する情報である。
一般的には、情報処理プログラムに、複数のログ取得命令を含む。各ログ取得命令は、複数の処理手段33a、33b、33c…のいずれかに属する。この場合データ処理手段33は、ログ取得命令を実行する際、実行した時刻と、当該ログ取得命令の属する処理手段の識別子とを対応づけて一時記憶装置20に記憶する。この場合データ処理手段33は、例えば、「第1の処理手段」など、処理手段の識別子と、ログ取得命令を実行した時間と対応づけてログデータ21を更新する。また、データ処理手段33が、複数のテスト系の処理データ11を処理する場合、処理データ11の識別子をさらに対応づけて、ログデータ21を生成しても良い。
またデータ処理手段33は、複数の処理手段33a、33b、…がそれぞれ実行する処理の開始時または終了時に、ログ取得命令を実行することが好ましい。この場合データ処理手段33は、例えば、「第1の処理手段の開始時」など、処理手段と開始時または終了時を含む識別子を、ログ取得命令を実行した時間と対応づけてログデータ21を更新する。また、ログ取得命令を実行するタイミングは、各処理手段の開始時または終了時に限らない。各処理手段33a、33b、33c…が、開始時と終了時の間でさらに1回ログ取得命令を実行するなど、一つの処理手段で3回以上、ログ取得命令を実行しても良い。
このように、情報処理装置1は、ログデータ21により、情報処理プログラムにおいて、ログ取得命令を実行したタイミングを計測することができる。このログ取得命令を実行したタイミングをチェックポイントとして分析することにより、情報処理プログラムにおける各処理において、遅延が生じる処理を特定し、この処理を改善することにより、処理時間を効率的に短縮することができる。
各処理手段による処理の開始時と終了時にログ取得命令を実行する場合、各処理手段ごとに処理に要した時間を特定することができる。これにより例えば、処理が所定時間内に終了しない場合でも、時間を要した処理を特定することにより、その処理を中心に改善することができる。
ここで、データ処理手段33が処理する結果データ13は、入力である処理データ11に対して、データ処理手段33が処理した結果、出力するデータである。実施の形態において結果データ13は、データ処理命令に基づいて処理されたデータである。一方、ログデータ21は、ログ取得命令に基づいて処理されたデータである。
複数の処理データ11を断続的に入力し、データ処理手段33に各処理データを順次処理させる場合も考えられる。これにより、各処理データについて、各処理手段の処理時間の漸増や待ち行列の状態を把握することができる。この場合、データ処理手段33は、入力された処理データ11の識別子も対応づけて一時記憶装置20に記憶する。
結果データ13は、記憶装置10に記憶され、ログデータ21は、一時記憶装置20に記憶される。一時記憶装置20のデータの読み書きは高速である。ログデータ21を一時記憶装置20に記憶することにより、データ処理命令による処理時間に影響を与えることなく、ログデータ21への書き出しによる時間ロスやCPUの負荷を、最小限に抑えることができる。
データ出力手段34は、ログ取得フラグデータ12が「真」でない場合、結果データ13を出力する。一方、ログ取得フラグデータ12が「真」の場合、データ出力手段34は、少なくともログデータ21を出力する。データ出力手段34は、テスト系の処理データ11を処理した結果データ13も出力しても良い。テスト系の処理データ11を処理した結果データ13も出力することにより、テスト系の処理データ11に対する処理結果が正しいか否かも評価することができる。
図2を参照して、実施の形態に係る情報処理装置1が、ログを取得する処理の概要を説明する。データ入力手段31は、処理データ11をログ取得フラグ更新手段32に入力する。ログ取得フラグ更新手段32は、処理データ11の特定の位置を参照して、この処理データが本番系かテスト系かを判定する。テスト系の場合、ログ取得フラグデータ12を「真」に更新する。
その後、データ処理手段33が、処理データ11を処理する。図2に示す例においてデータ処理手段33は、デシリアライズ処理、復号化処理、伸張処理、計算処理、圧縮処理、暗号化処理およびシリアライズ処理の各処理を実行するための各処理手段を備える。ここで、デシリアライズ処理、復号化処理および伸張処理は、処理データ11を計算するための前処理である。圧縮処理、暗号化処理およびシリアライズ処理は、処理データ11の計算結果を出力するための後処理である。
デシリアライズ処理は、処理データ11がオブジェクトの場合、この処理データ11をバイト列やXMLフォーマットに変換する。復号化処理は、デシリアライズ処理の後のデータが暗号化されている場合、このデータを復号化する。伸張処理は、復号化処理の後のデータが圧縮されている場合、このデータを伸張する。
計算処理は、伸張処理の後のデータを、所定の計算ロジックに従って、算出する。圧縮処理は、計算処理の後のデータを圧縮する。暗号化処理は、圧縮処理後のデータを暗号化する。シリアライズ処理は、暗号化処理後のデータをシリアライズしてオブジェクトを生成する。このオブジェクトが、結果データ13となる。
ここで、図2のデータ処理手段33に示す各処理は、ログ取得命令を含む。ログ取得フラグデータ12が「真」の場合、このログ取得命令を実行するタイミングで、データ処理手段33は、ログデータ21を更新する。
このログ取得命令が、各処理の開始時および終了時に実行される場合を説明する。データ処理手段33は、ログデータ21に、デシリアライズ処理の開始時および終了時の各時刻を記憶する。その後、データ処理手段33は、ログデータ21に、復号化処理の開始時および終了時の各時刻を記憶する。さらにデータ処理手段33は、ログデータ21に、伸張処理の開始時および終了時の各時刻を記憶する。さらにデータ処理手段33は、ログデータ21に、計算処理の開始時および終了時の各時刻を記憶する。さらにデータ処理手段33は、ログデータ21に、圧縮処理の開始時および終了時の各時刻を記憶する。さらにデータ処理手段33は、ログデータ21に、暗号化処理の開始時および終了時の各時刻を記憶する。さらにデータ処理手段33は、ログデータ21に、シリアライズ処理の開始時および終了時の各時刻を記憶する。図2に示すデータ処理手段33の各処理の開始時および終了時にログ取得命令を実行する場合、ログデータ21は、7つの処理について、それぞれ2つの時刻を記憶する。
データ出力手段34は、本番系の場合、データ処理手段33が出力する結果データ13を出力する。また、テスト系の場合、データ出力手段34は、一時記憶装置20に記憶されたログデータ21を出力するとともに、任意で結果データ13も出力する。
図3を参照して、実施の形態に係る情報処理装置1による情報処理方法を説明する。
まずステップS1において情報処理装置1は、処理データ11を入力する。ここで、情報処理装置1は、データ処理手段33の処理対象である処理データ11を特定する。次に、情報処理装置1は、処理データ11がログ取得対象であるか否かを判定する。処理データ11が本番系データでログ取得対象でない場合、ステップS4に進む。
一方、処理データ11がテスト系データでログ取得対象の場合、ステップS3に進む。ステップS3において情報処理装置1は、ログ取得フラグデータ12を「真」に設定する。ステップS4において情報処理装置1は、処理データ11を処理する。ここで、ログ取得フラグデータ12が「真」の場合、情報処理プログラムにおけるログ取得命令が有効となり、ログを出力する。
処理データ11の処理が完了すると、ステップS5において情報処理装置1は、ログ取得フラグデータ12が「真」であるか否かで処理を振り分ける。「真」でない場合、情報処理装置1は処理を終了する。
一方、ログ取得フラグデータ12が「真」の場合、ステップS6において、ステップS4におけるデータ処理で書き出されたログデータを出力する。さらに、ステップS7においてログ取得フラグデータ12を、デフォルトの「偽」に設定する。さらに、ステップS4で記憶されたログを消去し、一時記憶装置20の記憶領域を初期化する。
図3のステップS4のデータ処理について、図4を参照して詳述する。データ処理において、ログ取得フラグデータ12が「真」であるか否かで、処理が振り分けられる。
ログ取得フラグデータ12が「真」の場合、情報処理装置1は、情報処理プログラムの各コマンドについて、ステップS52ないしステップS54の処理を繰り返すループを開始する。具体的には、ステップS52においてコマンドが、ログ取得命令でない場合、ステップS53において情報処理装置1は、その命令を実行して、処理データ11を処理する。一方、ログ取得命令の場合、ステップS54において情報処理装置1は、情報処理装置1は、このログ取得命令を識別する識別子と、この命令を実行した時刻とを対応づけたログを、一時記憶装置20に保存する。
一方、ログ取得フラグデータ12が「真」でない場合、情報処理装置1は、情報処理プログラムの各コマンドを実行するために、ステップS55の処理を繰り返すループを開始する。ステップS55において情報処理装置1は、各コマンドを実行して、処理データ11を処理する。この場合、情報処理装置1は、ログを書き出すことはない。
図5ないし図7を参照して、実施の形態に係る情報処理装置1におけるログ取得命令と、ログデータ21の具体例を説明する。図3に示す例は、データ処理手段33が順次実行する命令を模式的に示したものである。具体的には、情報処理装置1は、第1の処理手段33aによる処理、第2の処理手段33bによる処理、第3の処理手段33cによる処理および第4の処理手段33dによる処理を、順次実行する。
図5においては、第1の処理手段33a、第2の処理手段33b、第3の処理手段33cおよび第4の処理手段33が、各コマンドを順次実行する。ここで、第1の処理手段33aの開始時に実行する命令が第1のログ取得命令で、終了時に実行する命令が第2のログ取得命令である。このように、第1の処理手段33aの開始時および終了時に、それぞれログ取得命令を実行することにより、第1の処理手段33aにおける処理に要した時刻を算出することができる。
同様に、第2の処理手段33bの開始時に実行する命令が第3のログ取得命令で、終了時に実行する命令が第4のログ取得命令である。第3の処理手段33cの開始時に実行する命令が第5のログ取得命令で、終了時に実行する命令が第6のログ取得命令である。第4の処理手段33dの開始時に実行する命令が第7のログ取得命令で、終了時に実行する命令が第8のログ取得命令である。
データ処理手段33は、処理データ11が入力される度に、入力された処理データ11を処理する。従ってデータ処理手段33は、テスト系の処理データ11が入力される度に、第1のログ取得命令ないし第8のログ取得命令を実行し、各実行時間を対応づけたログデータ21を生成する。
具体的にはログデータ21は、図6に示すデータである。図6に示す例では、第1の処理データ11aに、第1のログ取得命令ないし第8のログ取得命令の識別子と、各実行時間とを対応づける。第1の処理データ11がテスト系データであって、データ処理手段33が、第1の処理データ11aを処理する際、第1のログ取得命令ないし第8のログ取得命令を実行した時間を対応づけることにより図6に示すデータを生成する。第1のログ取得命令の時間と第2のログ取得命令の時間との差分を算出することにより、第1の処理手段33aによる処理時間がわかる。同様に、第2の処理手段33b、第3の処理手段33cおよび第4の処理手段33dのそれぞれの処理時間がわかる。
さらに、データ処理手段33が、テスト系の第2の処理データ11b、第3の処理データ11cおよび第4の処理データ11dを処理する際、各処理データの処理について第1のログ取得命令ないし第8のログ取得命令を実行する。これにより、ログデータ21は、第1の処理データないし第4の処理データのそれぞれについて、第1のログ取得命令ないし第8のログ取得命令を実行した時間を記憶するので、32のレコードを有する。
図6に示すログデータ21の項目の他に、処理結果の項目欄を備えても良い。また、ログデータ21は、図6に示すように、人間が読めるテキスト形式のデータでなくとも良い。例えば、圧縮した形式で一時記憶装置20に記憶しても良い。最終的に、ログデータ21の解析結果を人間が把握できれば良い。
このようなログデータ21から、図7に示すような分析をすることができる。図7に示す例において、横軸は処理データを入力した時間で、縦軸は、ログ取得時間を取る。図7に示す例の一番左の棒は、第1の処理データ11aについて、ログを取得した時間を示す。具体的には、第1の処理手段33aないし第4の処理手段33dにおける処理時間を積み上げた棒グラフである。図7は、同様に、第2の処理データ11b、第3の処理データ11cおよび第4の処理データ11dについても同様に、各処理手段における処理時間を積み上げた棒グラフを表示する。
ここで、第1の処理データ11aないし第4の処理データ11dに関する処理時間が、全て要求仕様で定められる時間内に納まっている場合は、何ら問題は生じない。しかしながら、要求仕様で定められる時間以上を要する処理データがある場合、情報処理プログラムを改良する必要がある。そこで、各処理手段による各処理データの処理時間を詳細に分析し、改善するべきポイントを絞ることができる。
例えば、第2の処理手段33bによる処理の終了後、すぐに第3の処理手段33cにおける処理が開始した場合は、第1の処理データ11aについて示すように、空白は生じない。しかしながら、第2の処理データ11bにおいて、第2の処理手段33bと第3の処理手段33cとの間に、空白がある。これは、第2の処理手段33bの終了時の第4のログ取得命令を実行した時刻と、第3の処理手段33cの開始時の第5のログ取得命令を実行した時刻との間に、時間差が生じていることを示す。これは、例えば、第2の処理手段33bを開始するための待ち行列で、処理待ちによる遅延が発生していることを示す。この場合、第2の処理手段33bの待ち行列が少なくなるように改善することで、仕様要求を満たす可能性がある。
また、第3の処理手段33cの処理時間について、第1の処理データ11aを処理した際の処理時間より、その後第3の処理データ11cを処理した際の処理時間のほうが大きくなっている。これは、第3の処理手段33cによる処理に遅延が生じていることを示す。この場合、第3の処理手段33cの処理時間が少なくなるように情報処理プログラムを改善することで、仕様要求を満たす可能性がある。
このように、各処理手段による処理時間を計測することにより、情報処理プログラムの処理時間が、仕様要求を満たすか否かを判定することができる。特に、各処理手段による処理の開始時と終了時に時刻を計測することにより、情報処理プログラムの一連の処理の流れにおいて、ボトルネックとなる処理を特定することができる。
また、情報処理プログラムによって、テスト系の処理データ11を、10分後、1時間後などの所定のタイミングで処理することにより、処理時間が漸増しているか否かを把握することができる。情報処理プログラムは、テスト系の処理データを処理する場合のみ、ログを取得するので、本番系のデータの通常処理における処理速度に影響を与えず、ログによって処理時間を計測することができる。
(変形例)
実施の形態においては、処理データの入力から、その結果の出力まで、情報処理装置1内で完結する場合を説明した。これに対し変形例では、監視装置2が処理データを入力し結果を出力する場合を説明する。監視装置2と変形例に係る情報処理装置1とは、通信ネットワーク3を介して相互に通信可能に接続される。監視装置2は、記憶装置、演算処理制御装置などを備える一般的なコンピュータである。
実施の形態においては、処理データの入力から、その結果の出力まで、情報処理装置1内で完結する場合を説明した。これに対し変形例では、監視装置2が処理データを入力し結果を出力する場合を説明する。監視装置2と変形例に係る情報処理装置1とは、通信ネットワーク3を介して相互に通信可能に接続される。監視装置2は、記憶装置、演算処理制御装置などを備える一般的なコンピュータである。
図8に示す変形例に係る情報処理装置1aは、監視装置2から処理データ11をパケットとして受信し、結果データ13やログデータ21をパケットに変換して監視装置2に送信する。変形例に係る情報処理装置1aは、パケット受信手段31a、パケット送信手段34aおよび通信制御装置40を備える。情報処理装置1aのそのほかのデータや手段は、図1を参照して説明した実施の形態と同様である。
通信制御装置40は、情報処理装置1aを通信ネットワーク3に接続するインタフェースである。
パケット受信手段31aは、図1に示すデータ入力手段31に対応する。パケット受信手段31aは、監視装置2からパケットを受信し、その受信したパケットから処理データ11を取り出して、記憶装置10に記憶する。
パケット送信手段34aは、図1に示すデータ出力手段34に対応する。パケット送信手段34aは、結果データ13やログデータ21からパケットを生成して、監視装置2に送信する。
監視装置2は、パケット送信手段201、パケット受信手段202およびログデータ解析手段203を備える。
パケット送信手段201は、処理データを含むパケットを情報処理装置1aに送信する。例えば、情報処理装置1aにおける処理時間を計測したい場合、オペレータは、特定の位置にテスト系データであることを示すデータを設定した処理データを生成する。パケット送信手段201は、この処理データを含むパケットを生成し、情報処理装置1aに送信する。
パケット受信手段202は、情報処理装置1aからパケットを受信する。受信したパケットにログデータが含まれている場合、このログデータを抽出する。また、テスト系の処理データを含む複数のパケットを送信した場合、パケット受信手段202は、各処理データに対応するログデータを取得する。パケット受信手段202は、図6に示すように処理データの識別子と、各命令の実行時間とを対応づけてログデータを生成する。
ログデータ解析手段203は、例えば図7に示すように、ログデータを分析してオペレータに表示する。
このように、通信ネットワーク3を介して情報処理装置1aに処理データを送信することにより、遠隔地でも、情報処理装置1a内の処理時間を取得することができる。
以上説明した少なくとも一つの実施の形態に係る情報処理装置は、通常処理に負担をかけずに、処理時間を計測することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 情報処理装置
2 監視装置
3 通信ネットワーク
10 記憶装置
11 処理データ
12 ログ取得フラグデータ
13 結果データ
20 一時記憶装置
21 ログデータ
30 演算処理制御装置
31 データ入力手段
32 ログ取得フラグ更新手段
33 データ処理手段
34 データ出力手段
2 監視装置
3 通信ネットワーク
10 記憶装置
11 処理データ
12 ログ取得フラグデータ
13 結果データ
20 一時記憶装置
21 ログデータ
30 演算処理制御装置
31 データ入力手段
32 ログ取得フラグ更新手段
33 データ処理手段
34 データ出力手段
Claims (5)
- 処理データを記憶装置に記憶するデータ入力手段と、
前記処理データがテスト系の処理データの場合、前記記憶装置に記憶されるログ取得フラグデータを、真に更新するログ取得フラグ更新手段と、
前記ログ取得フラグデータが真でない場合、前記処理データを処理する命令を実行して結果データを生成し、
前記ログ取得フラグデータが真の場合、前記処理データを処理する命令を実行して結果データを生成するとともに、ログを取得する命令を実行して、当該ログを取得する命令を実行した時刻と、当該ログを取得する命令の識別子とを対応づけて一時記憶装置に記憶し、ログデータを生成するデータ処理手段と、
前記ログ取得フラグデータが真でない場合、前記結果データを出力し、
前記ログ取得フラグデータが真の場合、前記ログデータを出力するデータ出力手段
を備えることを特徴とする情報処理装置。 - 前記情報処理装置は、通信ネットワークを介して監視装置に接続し、
前記データ入力手段は、前記監視装置から入力された処理データを、前記記憶装置に記憶し、
前記データ出力手段は、前記結果データまたは前記ログデータを前記監視装置に送信する
ことを特徴とする請求項1に記載の情報処理装置。 - 前記データ処理手段は、複数の処理手段を備え、
前記ログを取得する命令は、前記複数の処理手段のいずれかに属し、
前記データ処理手段は、
前記ログを取得する命令を実行する際、実行した時刻と、当該ログを取得する命令の属する処理手段の識別子とを対応づけて一時記憶装置に記憶する
ことを特徴とする請求項1または2に記載の情報処理装置。 - 前記データ処理手段は、前記複数の処理手段がそれぞれ実行する処理の開始時または終了時に、前記ログを取得する命令を実行する
ことを特徴とする請求項3に記載の情報処理装置。 - コンピュータに、
処理データを記憶装置に記憶する手順と、
前記処理データがテスト系の処理データの場合、前記記憶装置に記憶されるログ取得フラグデータを、真に更新する手順と、
前記ログ取得フラグデータが真でない場合、前記処理データを処理する命令を実行して結果データを生成する手順と、
前記ログ取得フラグデータが真でない場合、前記結果データを出力する手順と、
前記ログ取得フラグデータが真の場合、前記処理データを処理する命令を実行して結果データを生成するとともに、ログを取得する命令を実行して、当該ログを取得する命令を実行した時刻と、当該ログを取得する命令の識別子とを対応づけて一時記憶装置に記憶し、ログデータを生成する手順と、
前記ログ取得フラグデータが真の場合、前記ログデータを出力する手順
を実行させるための情報処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012029271A JP2013167929A (ja) | 2012-02-14 | 2012-02-14 | 情報処理装置および情報処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012029271A JP2013167929A (ja) | 2012-02-14 | 2012-02-14 | 情報処理装置および情報処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013167929A true JP2013167929A (ja) | 2013-08-29 |
Family
ID=49178301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012029271A Pending JP2013167929A (ja) | 2012-02-14 | 2012-02-14 | 情報処理装置および情報処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013167929A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183625A (zh) * | 2015-08-31 | 2015-12-23 | 北京奇虎科技有限公司 | 一种日志数据处理方法和装置 |
-
2012
- 2012-02-14 JP JP2012029271A patent/JP2013167929A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183625A (zh) * | 2015-08-31 | 2015-12-23 | 北京奇虎科技有限公司 | 一种日志数据处理方法和装置 |
CN105183625B (zh) * | 2015-08-31 | 2018-04-13 | 北京奇虎科技有限公司 | 一种日志数据处理方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9507688B2 (en) | Execution history tracing method | |
TWI416316B (zh) | 用於產生資料處理設備之追蹤串流的技術 | |
US10713144B2 (en) | Virtual processor enabling real-time in situ disassembly and debugging in SoC environment | |
CN109871312A (zh) | 一种接口测试方法、装置、设备及可读存储介质 | |
CN106293687B (zh) | 一种打包流程的控制方法,及装置 | |
JP5456715B2 (ja) | データ特定装置、データ特定方法及びデータ特定プログラム | |
JP2013167929A (ja) | 情報処理装置および情報処理プログラム | |
JP6272429B1 (ja) | データ収集システム、収集装置、情報収集プログラム、サーバ装置およびサーバプログラム | |
US20120166887A1 (en) | Monitoring multiple data transfers | |
JP7028133B2 (ja) | 制御システムおよび制御方法 | |
JP7116562B2 (ja) | 追跡データ表現 | |
JP7131015B2 (ja) | 情報取得装置、ゲートウェイ装置、プログラム、記録媒体、および方法 | |
JP6666216B2 (ja) | 電子制御装置、解析システム | |
US9678852B2 (en) | Tracing the operations of a data processing apparatus using trace data source identifiers to respond to flush requests | |
US11036616B2 (en) | Tracing the data processing activities of a data processing apparatus | |
KR101968501B1 (ko) | 데이터 처리 장치 및 데이터 처리 장치의 메모리에 기록된 데이터의 확인 방법 | |
US20120221126A1 (en) | Extraction of a foundation fieldbus device information for enhanced device selection and data validation | |
US9942112B2 (en) | Information collection system, server apparatus, edge apparatus, control method, and program | |
JP2012113502A (ja) | 半導体集積回路の検証装置 | |
CN112925484B (zh) | 存储装置哈希生成 | |
CN112286578A (zh) | 由计算设备执行的方法、装置、设备和计算机可读存储介质 | |
CN115861511B (zh) | 绘制命令的处理方法、装置、系统和计算机设备 | |
JP2017058923A (ja) | ログ記録システム | |
US20080228731A1 (en) | Debugging system and debugging method | |
WO2020065960A1 (ja) | 情報処理装置、制御方法、及びプログラム |