JP2015135562A - 情報処理装置及び情報処理方法及びプログラム - Google Patents
情報処理装置及び情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP2015135562A JP2015135562A JP2014006048A JP2014006048A JP2015135562A JP 2015135562 A JP2015135562 A JP 2015135562A JP 2014006048 A JP2014006048 A JP 2014006048A JP 2014006048 A JP2014006048 A JP 2014006048A JP 2015135562 A JP2015135562 A JP 2015135562A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- processes
- history information
- comparison pattern
- counting
- 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
【課題】処理単体の内容ではなく、S/Wを実際に実行することで得られる「処理の流れ」を解析し、そのパターンを評価することでユーザに冗長なログ取得パターンか否かの判断指標を提示する。【解決手段】記録入力部104は、プロセッサ102により実行された複数の処理の実行履歴が記述されているS/W処理履歴103を取得する。処理解析部105は、S/W処理履歴103から、連続して記述されているn(n≧1)個の処理を処理ブロックとして抽出し、当該処理ブロックの1番目の処理とn番目の処理との組合せを比較パターンとして抽出し、S/W処理履歴103においてn個の処理ごとに前記比較パターンとの比較を行い、1番目の処理とn番目の処理が前記比較パターンと一致するn個の処理が出現する回数を計数する。表示部107は、処理解析部105により計数された回数を処理ブロックごとに表示する。【選択図】図1
Description
本発明は、ソフトウェア(S/W)処理記録の方法に関するものであり、特に、記録方法における無駄の検出方法に関する。
S/Wの処理内容を把握する手段として、実施を確認したいS/W内の処理について実際にその処理が行われた際に、その旨を記録・出力し、後から確認できるようにするトレースログという技術がある。
S/Wの処理に問題が発生した場合、トレースログを用いて問題発生時の状況を確認することが一般的に行われている。
しかし、ログはユーザがあらかじめ設定したS/W内のログ出力位置においてのみ出力されるというトレースログの特徴により、問題発生の原因にかかるログが必ずしも記録・出力されていない可能性がある。
しかし、ログはユーザがあらかじめ設定したS/W内のログ出力位置においてのみ出力されるというトレースログの特徴により、問題発生の原因にかかるログが必ずしも記録・出力されていない可能性がある。
トレースログによって全てのS/W内部処理記録を残せていることが、S/W処理内容の問題確認という目的においては確実な方法である。
また、これはデバッガを使用し、全てのシステムコールや関数コールを記録するという方法にて実現できる。
また、これはデバッガを使用し、全てのシステムコールや関数コールを記録するという方法にて実現できる。
しかし、前記の方法をとった場合、実際にはログの内容が過剰に詳細になってしまい、記憶媒体の容量を必要以上に使用してしまう。
また、記録の頻度が高すぎるために、記録処理そのものの負荷がS/Wの処理全体に対して無視できない影響を与えてしまい、動作不良を起こす可能性もある。
また、記録の頻度が高すぎるために、記録処理そのものの負荷がS/Wの処理全体に対して無視できない影響を与えてしまい、動作不良を起こす可能性もある。
つまり、S/Wに発生した問題を解析する目的上は可能な限り詳細なログが取れていることが好ましいが、実際にはH/W上の制約に収まるよう記録するログを制限する必要がある。
特許文献1は、有限の記録媒体により効率的にS/W内部処理記録を残す方法として、動的な内部処理記録の詳細度管理を開示している。
S/W処理に問題が起きていない場合には記録・出力する内部処理記録の詳細度を下げ、問題の発生が検知された瞬間から後においては内部処理記録の詳細度を上げるという手法をとっている。
S/W処理に問題が起きていない場合には記録・出力する内部処理記録の詳細度を下げ、問題の発生が検知された瞬間から後においては内部処理記録の詳細度を上げるという手法をとっている。
特許文献2は、問題の発生原因をより確実に残す方法としてS/W内部処理記録に重み付けをし、内部処理記録の記録量が記録装置の容量を超えた場合には重要度の高い内部処理記録によって重要度の低い内部処理記録を上書きする方法を開示している。
特許文献3、特許文献4は、出力する各ログのパラメータを分析し、同一、または類似するパラメータを記号化して記録領域の使用量を低減する方法を開示している。
特許文献5は、各ログの記録内容とその頻度を解析し、ある閾値以上の出力頻度の記録内容を持つログを出力させないことで、記録領域使用量を低減する方法を開示している。
特許文献6は、各ログの記録内容を解析し、ログの重要度を提案することで、記録するログとしないログの選択について、指針を得る方法を提案している。
ログを記録する上でより効率的な記録の残し方は様々提案されているが、そもそもどのログが必要なのかという点について言及したものは少なく、S/W開発の現場では記録するログの選定に苦慮している。
特許文献5、6において各ログの出力に関する判断基準を提案しているが、いずれも各ログを別個に評価したものをまとめた情報である。
つまり、それぞれのログがどのような順番で出力されていくか、という点についての評価はできていない。
そのため、あるログAが出力されているのならばログBの出力も確定している、といった場合にログA、Bの双方を出力する無駄については評価できない。
つまり、それぞれのログがどのような順番で出力されていくか、という点についての評価はできていない。
そのため、あるログAが出力されているのならばログBの出力も確定している、といった場合にログA、Bの双方を出力する無駄については評価できない。
本発明は、上記のような事情を勘案したものであり、処理単体の内容ではなく、S/Wを実際に実行することで得られる「処理の流れ」を解析し、そのパターンを評価することでユーザに冗長なログ取得パターンか否かの判断指標を提示することを主な目的とする。
本発明に係る情報処理装置は、
プロセッサにより実行された複数の処理の実行履歴が記述されている処理履歴情報を取得する情報取得部と、
前記処理履歴情報から、連続して記述されているn(n≧1)個の処理を処理ブロックとして抽出し、当該処理ブロックの1番目の処理とn番目の処理との組合せを比較パターンとして抽出し、前記処理履歴情報においてn個の処理ごとに前記比較パターンとの比較を行い、1番目の処理とn番目の処理が前記比較パターンの処理の組合せと一致するn個の処理が出現する回数を計数する出現回数計数部と、
前記出現回数計数部により計数された回数を処理ブロックごとに表示する表示部とを有することを特徴とする。
プロセッサにより実行された複数の処理の実行履歴が記述されている処理履歴情報を取得する情報取得部と、
前記処理履歴情報から、連続して記述されているn(n≧1)個の処理を処理ブロックとして抽出し、当該処理ブロックの1番目の処理とn番目の処理との組合せを比較パターンとして抽出し、前記処理履歴情報においてn個の処理ごとに前記比較パターンとの比較を行い、1番目の処理とn番目の処理が前記比較パターンの処理の組合せと一致するn個の処理が出現する回数を計数する出現回数計数部と、
前記出現回数計数部により計数された回数を処理ブロックごとに表示する表示部とを有することを特徴とする。
本発明によれば、処理の出現順序が類似するパターンを含め処理ブロックごとに出現回数をユーザに提示するため、ユーザは「処理の流れ」を解析することができ、処理の出現パターン及びその出現回数を評価することで記録すべきログを効率的に選定することができる。
以下、本発明の実施の形態について図面を参照して詳細に説明する。
なお、この実施の形態により本発明が限定されるものではない。
なお、この実施の形態により本発明が限定されるものではない。
実施の形態1.
本実施の形態では、内部処理を出力させたいと考えるS/W内の処理全てに、その処理を実施した旨を出力させる設定を行った後、処理単体の内容ではなく、S/Wを実際に処理させることで得られる「処理の流れ」を解析し、そのパターンを評価することでユーザに冗長なログ取得パターンか否かの判断指標を提示する構成を説明する。
本実施の形態では、内部処理を出力させたいと考えるS/W内の処理全てに、その処理を実施した旨を出力させる設定を行った後、処理単体の内容ではなく、S/Wを実際に処理させることで得られる「処理の流れ」を解析し、そのパターンを評価することでユーザに冗長なログ取得パターンか否かの判断指標を提示する構成を説明する。
図1は、本実施の形態に係る情報処理装置100の構成例を示すブロック図である。
情報処理装置100は、プロセッサ102が含まれ、プロセッサ102によりS/W101が実行されるデータ機器110からS/W処理履歴103を取得する。
データ機器110は、プロセッサ102が実行するS/W101の処理のうち、ユーザが記録を要求する処理の全てを記録してS/W処理履歴103として出力する
S/W処理履歴103は、プロセッサ102により実行された複数の処理の実行履歴(ログ)が記述されており、処理履歴情報の例に相当する。
情報処理装置100は、S/W処理履歴103から処理の「流れ」を抽出し、処理の「流れ」をユーザへ提示する。
ユーザは、処理の「流れ」を評価し、データ機器110で記録すべき処理を記録項目操作部109を用いて選定する。
データ機器110は、プロセッサ102が実行するS/W101の処理のうち、ユーザが記録を要求する処理の全てを記録してS/W処理履歴103として出力する
S/W処理履歴103は、プロセッサ102により実行された複数の処理の実行履歴(ログ)が記述されており、処理履歴情報の例に相当する。
情報処理装置100は、S/W処理履歴103から処理の「流れ」を抽出し、処理の「流れ」をユーザへ提示する。
ユーザは、処理の「流れ」を評価し、データ機器110で記録すべき処理を記録項目操作部109を用いて選定する。
情報処理装置100において、記録入力部104は、S/W処理履歴103を取得する。
記録入力部104は、情報取得部の例に相当する。
処理解析部105は、S/W処理履歴103を解析する。
処理解析部105は、出現回数計数部の例に相当する。
解析結果記録部106は、処理解析部105による解析結果を保存する。
表示部107は、解析結果記録部106に記録された解析結果をユーザに示す。
入力部108は、表示部107の表示項目の操作指示をユーザから受け付ける。
記録入力部104は、情報取得部の例に相当する。
処理解析部105は、S/W処理履歴103を解析する。
処理解析部105は、出現回数計数部の例に相当する。
解析結果記録部106は、処理解析部105による解析結果を保存する。
表示部107は、解析結果記録部106に記録された解析結果をユーザに示す。
入力部108は、表示部107の表示項目の操作指示をユーザから受け付ける。
また、記録項目操作部109は、表示部107の表示項目を元に、ユーザがS/W101を編集するために操作する。
次に、本実施の形態にかかる情報処理装置100の動作について、図2に示すフローチャートを参照して説明する。
手順S201において、ユーザはデータ機器110内のプロセッサ102にS/W101を実行させ、データ機器110にS/W処理履歴103を生成させる。
このS/W処理履歴103は、S/W101内の任意の処理が実行される度に処理が実行された旨を記録したログ情報である。
なお、情報処理装置100は、必ずしもデータ機器110と常時接続された状態である必要はない。
S/W処理履歴103を取得する際にのみ情報処理装置100がデータ機器110に接続されるようにしてもよい。
例えば、S/W処理履歴103では、データ機器110で実行された順に実行された処理の識別子が列挙される。
このS/W処理履歴103は、S/W101内の任意の処理が実行される度に処理が実行された旨を記録したログ情報である。
なお、情報処理装置100は、必ずしもデータ機器110と常時接続された状態である必要はない。
S/W処理履歴103を取得する際にのみ情報処理装置100がデータ機器110に接続されるようにしてもよい。
例えば、S/W処理履歴103では、データ機器110で実行された順に実行された処理の識別子が列挙される。
なお、S/W処理履歴103は、手順S201の段階では、過剰に詳細なログとなっている。
次に、手順S202において、記録入力部104が、手順S201で生成されたS/W処理履歴103を入力する。
次に、手順S203において、記録入力部104が入力したS/W処理履歴103を処理解析部105が解析し、類似処理を検出する。
処理解析部105による類似処理の検出は、図3に示すフローチャートを参照して説明する。
処理解析部105による類似処理の検出は、図3に示すフローチャートを参照して説明する。
まず、手順S301にて、処理解析部105は、S/W処理履歴103における「処理ブロック」の検索開始位置mを初期化し(m=1を設定し)、また、「処理ブロック」の長さnを初期化する(n=1を設定する)。
処理ブロックは、S/W処理履歴103において連続して記述されているn(n≧1)個の処理である。
処理ブロックは、S/W処理履歴103において連続して記述されているn(n≧1)個の処理である。
手順S302では、処理解析部105は、S/W処理履歴103から手順S301で設定したmとnに合致するn個の処理を処理ブロックとして取得し、更に、処理ブロックから比較パターンを抽出する。
例えば、m=1、n=1であれば、処理解析部105は、S/W処理履歴103の先頭の1行分の処理を処理ブロックとして取得する。
また、m=2、n=4であれば、処理解析部105は、S/W処理履歴103の2行目〜5行目の4行分の処理を処理ブロックとして取得する。
また、比較パターンは、処理ブロックのn個の処理と順序の一部が異なっているn個の処理を抽出するためのパターンである。
例えば、比較パターンは、S/W処理履歴103内のmステップ目の処理と(m+n−1)ステップ目の処理の組合せである。
図4(a)は、比較パターンの例を示している。
図4(a)の例では、n=4であり、1ステップ目(mステップ目)である処理Aと4ステップ目(m+n−1ステップ目)である処理Cとの組み合わせが比較パターンとして抽出されている例を示している。
例えば、m=1、n=1であれば、処理解析部105は、S/W処理履歴103の先頭の1行分の処理を処理ブロックとして取得する。
また、m=2、n=4であれば、処理解析部105は、S/W処理履歴103の2行目〜5行目の4行分の処理を処理ブロックとして取得する。
また、比較パターンは、処理ブロックのn個の処理と順序の一部が異なっているn個の処理を抽出するためのパターンである。
例えば、比較パターンは、S/W処理履歴103内のmステップ目の処理と(m+n−1)ステップ目の処理の組合せである。
図4(a)は、比較パターンの例を示している。
図4(a)の例では、n=4であり、1ステップ目(mステップ目)である処理Aと4ステップ目(m+n−1ステップ目)である処理Cとの組み合わせが比較パターンとして抽出されている例を示している。
手順S303では、処理解析部105は、手順S302にて設定した「比較パターン」と同じ処理パターンを検出し、検出回数を測定する。
つまり、処理解析部105は、S/W処理履歴103を先頭から順にn個の処理ごとに比較パターンとの比較を行い、1番目の処理とn番目の処理が比較パターンと一致するn個の処理が出現する回数を計数する。
つまり、処理解析部105は、S/W処理履歴103を先頭から順にn個の処理ごとに比較パターンとの比較を行い、1番目の処理とn番目の処理が比較パターンと一致するn個の処理が出現する回数を計数する。
次に、手順S304では、処理解析部105は、手順S303にて検出した処理パターンそれぞれについて「比較パターン」と何ステップの差異があるかを判定する。
次に、手順S305では、処理解析部105は、手順S302にて設定した「処理ブロック」の内容と検出回数、および手順S304にて判定した差異のステップ数を解析結果記録部106に記録する。
手順S306では、処理解析部105は、「処理ブロック」の定義位置がS/W処理履歴103の終端まで到達し、S/W処理履歴103内にて新たな処理ブロックを定義できないかを確認する。
つまり、処理解析部105は、S/W処理履歴103の末尾の処理を含む処理ブロックに対する計数が完了したか否かを判定する。
つまり、処理解析部105は、S/W処理履歴103の末尾の処理を含む処理ブロックに対する計数が完了したか否かを判定する。
手順S306における判定結果がNOの場合、手順S307へ進み、処理解析部105は「処理ブロック」の定義位置をひとつ進め(mの値をインクリメントする)、手順S302の処理を再び実施する。
一方、手順S306における判定結果がYESの場合、手順S308へ進む。
手順S308では、処理解析部105は、定義する処理ブロックの長さ(nの値)がS/W処理履歴103の総ステップ数の半分を超えているか判定する。
手順S308における判定結果がNOの場合、定義する「処理ブロック」の長さを1ステップ長くし(nの値をインクリメントする)、「処理ブロック」の定義位置をS/W処理履歴103の最初のステップに設定する(m=1にする)。
一方、手順S308における判定結果がNOの場合、処理解析部105は動作を完了する。
一方、手順S308における判定結果がNOの場合、処理解析部105は動作を完了する。
例えば、図4(b)に示すように、S/W処理履歴103に処理の実行履歴が、処理A、処理B、処理D、処理C、処理F、処理A、処理B、処理E、処理Cの順で記述されている例を想定する。
m=1、n=1の場合は、先頭の処理Aが処理ブロックとして抽出され、比較パターンは処理Aとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
次に、m=2となり、処理Bが処理ブロックとして抽出され、比較パターンは処理Bとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
同様にして、処理解析部105はmの値をインクリメントしながら、処理D、処理C、処理F、処理A、処理B、処理E、処理Cの順で比較パターンの抽出及び出現回数の計数を繰り返す。
m=1、n=1の場合は、先頭の処理Aが処理ブロックとして抽出され、比較パターンは処理Aとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
次に、m=2となり、処理Bが処理ブロックとして抽出され、比較パターンは処理Bとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
同様にして、処理解析部105はmの値をインクリメントしながら、処理D、処理C、処理F、処理A、処理B、処理E、処理Cの順で比較パターンの抽出及び出現回数の計数を繰り返す。
次に、処理解析部105は、nの値をインクリメントし、n=2とし、また、m=1とし、処理Aと処理Bが処理ブロックとしてとして抽出され、比較パターンは処理Aと処理Bの組合せとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
次に、m=2となり、処理Bと処理Dが処理ブロックとして抽出され、比較パターンは処理Bと処理Dの組合せとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
同様にして、処理解析部105はmの値をインクリメントしながら、処理Dと処理C、処理Cと処理F、処理Fと処理A、処理Aと処理B、処理Bと処理E、処理Eと処理Cの順で比較パターンの抽出及び出現回数の計数を繰り返す。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
次に、m=2となり、処理Bと処理Dが処理ブロックとして抽出され、比較パターンは処理Bと処理Dの組合せとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
同様にして、処理解析部105はmの値をインクリメントしながら、処理Dと処理C、処理Cと処理F、処理Fと処理A、処理Aと処理B、処理Bと処理E、処理Eと処理Cの順で比較パターンの抽出及び出現回数の計数を繰り返す。
次に、処理解析部105は、nの値をインクリメントし、n=3とし、また、m=1とし、処理Aと処理Bと処理Dが処理ブロックとしてとして抽出され、比較パターンは処理Aと処理Dの組合せとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
次に、m=2となり、処理Bと処理Dと処理Cが処理ブロックとして抽出され、比較パターンは処理Bと処理Cの組合せとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
同様にして、処理解析部105はmの値をインクリメントしながら、処理Dと処理Cと処理F、処理Cと処理Fと処理A、処理Fと処理Aと処理B、処理Aと処理Bと処理E、処理Bと処理Eと処理Cの順で比較パターンの抽出及び出現回数の計数を繰り返す。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
次に、m=2となり、処理Bと処理Dと処理Cが処理ブロックとして抽出され、比較パターンは処理Bと処理Cの組合せとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
同様にして、処理解析部105はmの値をインクリメントしながら、処理Dと処理Cと処理F、処理Cと処理Fと処理A、処理Fと処理Aと処理B、処理Aと処理Bと処理E、処理Bと処理Eと処理Cの順で比較パターンの抽出及び出現回数の計数を繰り返す。
次に、処理解析部105は、nの値をインクリメントし、n=4とし、また、m=1とし、処理Aと処理Bと処理Dと処理Cが処理ブロックとしてとして抽出され、比較パターンは処理Aと処理Cの組合せとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
次に、m=2となり、処理Bと処理Dと処理Cと処理Fが処理ブロックとして抽出され、比較パターンは処理Bと処理Fの組合せとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
同様にして、処理解析部105はmの値をインクリメントしながら、処理Dと処理Cと処理Fと処理A、処理Cと処理Fと処理Aと処理B、処理Fと処理Aと処理Bと処理E、処理Aと処理Bと処理Eと処理Cの順で比較パターンの抽出及び出現回数の計数を繰り返す。
なお、図4(b)の例では、この時点でn=4であり、nの値をインクリメントしてn=5となると、S/W処理履歴103の総ステップ数:9の1/2を超えるので、処理解析部105は動作を終了する。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
次に、m=2となり、処理Bと処理Dと処理Cと処理Fが処理ブロックとして抽出され、比較パターンは処理Bと処理Fの組合せとなる。
そして、処理解析部105は、S/W処理履歴103の先頭から順に比較パターンと一致する処理の出現回数を計数する。
同様にして、処理解析部105はmの値をインクリメントしながら、処理Dと処理Cと処理Fと処理A、処理Cと処理Fと処理Aと処理B、処理Fと処理Aと処理Bと処理E、処理Aと処理Bと処理Eと処理Cの順で比較パターンの抽出及び出現回数の計数を繰り返す。
なお、図4(b)の例では、この時点でn=4であり、nの値をインクリメントしてn=5となると、S/W処理履歴103の総ステップ数:9の1/2を超えるので、処理解析部105は動作を終了する。
次に、手順S304について説明する。
例えば、図4(b)に示すように、処理ブロック406が設定された場合は、比較パターンは処理Aと処理Cの組合せである。
処理パターン407の1番目の処理と4番目の処理の組合せは比較パターンに一致するので、処理パターン407が検出される。
処理ブロック406と処理パターン407は1ステップだけ異なっている。
手順S304では、処理解析部105は、処理ブロック406と処理パターン407との差異ステップ数として「1」をカウントする。
符号408は、その時の処理パターン検出イメージである。
符号409は、その時認識される処理ブロック406と処理パターン407との差異にあたる部分である。
例えば、図4(b)に示すように、処理ブロック406が設定された場合は、比較パターンは処理Aと処理Cの組合せである。
処理パターン407の1番目の処理と4番目の処理の組合せは比較パターンに一致するので、処理パターン407が検出される。
処理ブロック406と処理パターン407は1ステップだけ異なっている。
手順S304では、処理解析部105は、処理ブロック406と処理パターン407との差異ステップ数として「1」をカウントする。
符号408は、その時の処理パターン検出イメージである。
符号409は、その時認識される処理ブロック406と処理パターン407との差異にあたる部分である。
次に、図2に戻り、手順S204では、表示部107が、手順S203における解析結果を整理してユーザへ表示する。
表示の例については図5に示す。
図5は、手順S203にて検出された解析結果を、処理ブロックの構成ステップが大きい順に示した結果である。
なお、図5の内容は、図4のS/W処理履歴103の記述内容とは一致していない。
表示の例については図5に示す。
図5は、手順S203にて検出された解析結果を、処理ブロックの構成ステップが大きい順に示した結果である。
なお、図5の内容は、図4のS/W処理履歴103の記述内容とは一致していない。
手順S203の解析結果では、構成ステップ数・検出個数・処理ブロック・差異ステップ数などを要素としているため、手順S204における解析結果の表示においては、そのいずれの項目順に並べることも可能である。
図6は、図5と同じ表示項目を検出個数について並べ直して表示した結果である。
図6は、図5と同じ表示項目を検出個数について並べ直して表示した結果である。
また、構成ステップ数の多い順に並べ、同じ構成ステップ数の項目は検出個数の多い順に並べる、といったように複数の表示順序について優先度を付けて設定することも可能である。
また、各項目をユーザが任意に設定した閾値と等しい、またはそれ以上、以下、といった条件で表示または非表示にさせることも可能である。
次に、手順S205では、手順S204にて表示された項目を参考にして、ユーザがS/W101に設定していた内部処理記録の出力項目が冗長な記録内容を含んでいるか、改めて判断する。
手順S205における判定結果がNOの場合、ユーザは手順S204にて表示された項目を参考に、冗長と判断したS/Wの内部処理出力設定を、記録項目操作部109を用いて修正する。
そして手順S201を再び実施する。
そして手順S201を再び実施する。
一方、手順S205における判定結果がYESの場合、S/W処理履歴103から冗長な内容を十分に削減したとして、S/W処理履歴103の絞込み作業を完了する。
以上説明したように、本実施の形態にかかる情報処理装置は、S/W内部処理の流れ、およびその傾向を確認する際に有用である。
つまり、S/Wの内部処理記録のシーケンスに含まれる繰返しや類似処理の記録頻度を評価することにより、ユーザがログの記録領域使用量低減を目的として行うログの削減において、ユーザがS/Wの処理内容を把握することを可能にし、より効果的な記録領域使用量低減を実現可能な記録項目を示す効果がある。
つまり、S/Wの内部処理記録のシーケンスに含まれる繰返しや類似処理の記録頻度を評価することにより、ユーザがログの記録領域使用量低減を目的として行うログの削減において、ユーザがS/Wの処理内容を把握することを可能にし、より効果的な記録領域使用量低減を実現可能な記録項目を示す効果がある。
最後に、本実施の形態に示した情報処理装置100のハードウェア構成例を図7を参照して説明する。
情報処理装置100はコンピュータであり、情報処理装置100の各要素をプログラムで実現することができる。
情報処理装置100のハードウェア構成としては、バスに、演算装置901、外部記憶装置902、主記憶装置903、通信装置904、入出力装置905が接続されている。
情報処理装置100はコンピュータであり、情報処理装置100の各要素をプログラムで実現することができる。
情報処理装置100のハードウェア構成としては、バスに、演算装置901、外部記憶装置902、主記憶装置903、通信装置904、入出力装置905が接続されている。
演算装置901は、プログラムを実行するCPU(Central Processing Unit)である。
外部記憶装置902は、例えばROM(Read Only Memory)やフラッシュメモリ、ハードディスク装置である。
主記憶装置903は、RAM(Random Access Memory)である。
通信装置904は、例えばNIC(Network Interface Card)である。
入出力装置905は、例えばマウス、キーボード、ディスプレイ装置等である。
外部記憶装置902は、例えばROM(Read Only Memory)やフラッシュメモリ、ハードディスク装置である。
主記憶装置903は、RAM(Random Access Memory)である。
通信装置904は、例えばNIC(Network Interface Card)である。
入出力装置905は、例えばマウス、キーボード、ディスプレイ装置等である。
プログラムは、通常は外部記憶装置902に記憶されており、主記憶装置903にロードされた状態で、順次演算装置901に読み込まれ、実行される。
プログラムは、図1に示す「〜部」(但し「解析結果記録部106」を除く、以下でも同様)として説明している機能を実現するプログラムである。
更に、外部記憶装置902にはオペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶装置903にロードされ、演算装置901はOSを実行しながら、図1に示す「〜部」の機能を実現するプログラムを実行する。
また、本実施の形態の説明において、「〜の判断」、「〜の判定」、「〜の抽出」、「〜の検知」、「〜の計数」、「〜の設定」、「〜の解析」、「〜の分析」「〜の測定」、「〜の生成」、「〜の入力」、「〜の取得」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置903にファイルとして記憶されている。
プログラムは、図1に示す「〜部」(但し「解析結果記録部106」を除く、以下でも同様)として説明している機能を実現するプログラムである。
更に、外部記憶装置902にはオペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶装置903にロードされ、演算装置901はOSを実行しながら、図1に示す「〜部」の機能を実現するプログラムを実行する。
また、本実施の形態の説明において、「〜の判断」、「〜の判定」、「〜の抽出」、「〜の検知」、「〜の計数」、「〜の設定」、「〜の解析」、「〜の分析」「〜の測定」、「〜の生成」、「〜の入力」、「〜の取得」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置903にファイルとして記憶されている。
なお、図7の構成は、あくまでも情報処理装置100のハードウェア構成の一例を示すものであり、情報処理装置100のハードウェア構成は図7に記載の構成に限らず、他の構成であってもよい。
また、本実施の形態に示す手順により、本発明に係る情報処理方法を実現可能である。
100 情報処理装置、101 S/W、102 プロセッサ、103 S/W処理履歴、104 記録入力部、105 処理解析部、106 解析結果記録部、107 表示部、108 入力部、109 記録項目操作部、110 データ機器。
Claims (6)
- プロセッサにより実行された複数の処理の実行履歴が記述されている処理履歴情報を取得する情報取得部と、
前記処理履歴情報から、連続して記述されているn(n≧1)個の処理を処理ブロックとして抽出し、当該処理ブロックの1番目の処理とn番目の処理との組合せを比較パターンとして抽出し、前記処理履歴情報においてn個の処理ごとに前記比較パターンとの比較を行い、1番目の処理とn番目の処理が前記比較パターンの処理の組合せと一致するn個の処理が出現する回数を計数する出現回数計数部と、
前記出現回数計数部により計数された回数を処理ブロックごとに表示する表示部とを有することを特徴とする情報処理装置。 - 前記出現回数計数部は、
前記処理履歴情報において1番目の処理とn番目の処理が前記比較パターンの処理の組合せと一致するn個の処理が出現する度に、出現したn個の処理と前記処理ブロックのn個の処理との間で差異が生じている処理の個数を計数し、
前記表示部は、
前記出現回数計数部により計数された回数を処理ブロックごとに表示するとともに、処理ブロックごとに、前記出現回数計数部により計数された処理の個数を表示することを特徴とする請求項1に記載の情報処理装置。 - 前記表示部は、
処理ブロックごとに、前記出現回数計数部により計数された処理の個数のうちの最大の個数を表示することを特徴とする請求項2に記載の情報処理装置。 - 前記出現回数計数部は、
前記処理履歴情報の先頭からm(m≧1)番目からのn個の処理を処理ブロックとして抽出し、前記処理履歴情報においてn個の処理ごとに当該処理ブロックの比較パターンとの比較を行い、1番目の処理とn番目の処理が前記比較パターンの処理の組合せと一致するn個の処理が出現する回数を計数し、
以降、mのインクリメントさせながら、前記処理履歴情報において1番目の処理とn番目の処理が比較パターンの処理の組合せと一致するn個の処理が出現する回数の計数を繰り返し、前記処理履歴情報の末尾の処理を含む処理ブロックに対する計数が完了したら、nの値をインクリメントし、
以降、同様の動作を繰り返し、nの値が前記処理履歴情報に記述されている処理の個数の1/2を超える場合に、動作を完了することを特徴とする請求項1に記載の情報処理装置。 - コンピュータが、プロセッサにより実行された複数の処理の実行履歴が記述されている処理履歴情報を取得する情報取得ステップと、
前記コンピュータが、前記処理履歴情報から、連続して記述されているn(n≧1)個の処理を処理ブロックとして抽出し、当該処理ブロックの1番目の処理とn番目の処理との組合せを比較パターンとして抽出し、前記処理履歴情報においてn個の処理ごとに前記比較パターンとの比較を行い、1番目の処理とn番目の処理が前記比較パターンの処理の組合せと一致するn個の処理が出現する回数を計数する出現回数計数ステップと、
前記コンピュータが、前記出現回数計数ステップにより計数された回数を処理ブロックごとに表示する表示ステップとを有することを特徴とする情報処理方法。 - プロセッサにより実行された複数の処理の実行履歴が記述されている処理履歴情報を取得する情報取得ステップと、
前記処理履歴情報から、連続して記述されているn(n≧1)個の処理を処理ブロックとして抽出し、当該処理ブロックの1番目の処理とn番目の処理との組合せを比較パターンとして抽出し、前記処理履歴情報においてn個の処理ごとに前記比較パターンとの比較を行い、1番目の処理とn番目の処理が前記比較パターンの処理の組合せと一致するn個の処理が出現する回数を計数する出現回数計数ステップと、
前記出現回数計数ステップにより計数された回数を処理ブロックごとに表示する表示ステップとをコンピュータに実行させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014006048A JP2015135562A (ja) | 2014-01-16 | 2014-01-16 | 情報処理装置及び情報処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014006048A JP2015135562A (ja) | 2014-01-16 | 2014-01-16 | 情報処理装置及び情報処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015135562A true JP2015135562A (ja) | 2015-07-27 |
Family
ID=53767359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014006048A Pending JP2015135562A (ja) | 2014-01-16 | 2014-01-16 | 情報処理装置及び情報処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015135562A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11847562B2 (en) | 2018-03-20 | 2023-12-19 | Nec Corporation | Obstacle recognition assistance device, obstacle recognition assistance method, and storage medium |
-
2014
- 2014-01-16 JP JP2014006048A patent/JP2015135562A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11847562B2 (en) | 2018-03-20 | 2023-12-19 | Nec Corporation | Obstacle recognition assistance device, obstacle recognition assistance method, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9921937B2 (en) | Behavior clustering analysis and alerting system for computer applications | |
WO2019129060A1 (zh) | 自动生成机器学习样本的特征的方法及系统 | |
US10452458B2 (en) | Computer performance prediction using search technologies | |
US9870294B2 (en) | Visualization of behavior clustering of computer applications | |
US10642818B2 (en) | Causal analysis device, causal analysis method, and non-transitory computer readable storage medium | |
US11989292B2 (en) | Analysis function imparting device, analysis function imparting method, and recording medium | |
EP2932393B1 (en) | Automated correlation and analysis of callstack and context data | |
EP3635563B1 (en) | Application analysis with flexible post-processing | |
US9563635B2 (en) | Automated recognition of patterns in a log file having unknown grammar | |
US9880991B2 (en) | Transposing table portions based on user selections | |
JP2010102620A (ja) | ユーザ操作シナリオ生成装置、方法およびプログラム | |
JP2016149123A (ja) | 未知のバイナリモジュールのための有効な入力を決定する方法及び非一時的なコンピュータ可読媒体 | |
US11106563B2 (en) | Log analysis device, log analysis method, and recording medium storing program | |
JP2015135562A (ja) | 情報処理装置及び情報処理方法及びプログラム | |
JP2008305019A (ja) | シミュレーション装置及びシミュレーション方法及びプログラム | |
JP7440352B2 (ja) | 教育コンテンツ作成システム及び方法 | |
CN110825784B (zh) | 一种低效业务过程的检测方法及装置 | |
JP6036089B2 (ja) | データ遷移トレース装置、データ遷移トレース方法、及び、データ遷移トレースプログラム | |
CN113095450A (zh) | 二维码数据获取方法、系统、电子设备及存储介质 | |
JP7180681B2 (ja) | 情報処理装置、制御方法、及びプログラム | |
JP4748530B2 (ja) | イベント解析装置 | |
JPWO2020065778A1 (ja) | 情報処理装置、制御方法、及びプログラム | |
JP6399828B2 (ja) | 画面変化量に基づいてコンピュータ利用行動を推定する装置、プログラム及び方法 | |
TWI824681B (zh) | 裝置管理系統、裝置的障礙原因推測方法以及非暫時性地記憶程式的記憶媒體 | |
WO2019163915A1 (ja) | プロジェクト分析装置及びプログラム |