Project/Area Number |
23K16862
|
Research Category |
Grant-in-Aid for Early-Career Scientists
|
Allocation Type | Multi-year Fund |
Review Section |
Basic Section 60050:Software-related
|
Research Institution | Nara Institute of Science and Technology |
Principal Investigator |
嶋利 一真 奈良先端科学技術大学院大学, 先端科学技術研究科, 助教 (50964376)
|
Project Period (FY) |
2023-04-01 – 2026-03-31
|
Project Status |
Granted (Fiscal Year 2023)
|
Budget Amount *help |
¥4,680,000 (Direct Cost: ¥3,600,000、Indirect Cost: ¥1,080,000)
Fiscal Year 2025: ¥1,560,000 (Direct Cost: ¥1,200,000、Indirect Cost: ¥360,000)
Fiscal Year 2024: ¥1,690,000 (Direct Cost: ¥1,300,000、Indirect Cost: ¥390,000)
Fiscal Year 2023: ¥1,430,000 (Direct Cost: ¥1,100,000、Indirect Cost: ¥330,000)
|
Keywords | ロギング / デバッグ / リポジトリマイニング / プログラム解析 / ソフトウェア保守 |
Outline of Research at the Start |
本研究では,既存研究で用いられているソースコードにおけるロギング設定(以下:ログレベル)に加えて,設定ファイルにおけるロギング設定(以下:閾値レベル)も考慮することで,プロジェクト毎に最適なログレベルを開発者へ推薦する.具体的には,(1)オープンソースソフトウェアに対して,出力に着目したソースコードのログレベルと設定ファイルの閾値レベルの関係の特徴を調査によって明らかにし,(2)調査結果とプロジェクト毎に異なるロギング設定を学習することで,プロジェクトの特性を考慮したログレベルの推薦を行う.
|
Outline of Annual Research Achievements |
本年度は出力の観点からロギングの現状を明らかにすることを目的として,ソースコードのログレベルと設定ファイルの閾値レベルについて分析を行なった. 具体的にはGitHubで公開されているJava言語のOSSを対象として,アクティブかつ閾値以上のスター数のプロジェクトから,ソースコードとロギング設定ファイルならびにその変更履歴の情報を収集した.収集においては,ソースコード解析や正規表現によるパターンマッチングをもとに,ログレベルに関する情報の抽出を実施している.また,収集した情報に基づいて,設定ファイルとソースコードログレベルの変更による出力への影響や,また出力の変更が生じた際に実際に変更されているファイルの情報,ならびに変更頻度の分析を行なっている.その結果,調査したプロジェクトにおいて設定変更によって出力の有無が変更されるログ出力文は3割程度あることや,繰り返し出力の有無が変更されるログ出力文が2割程度あることが明らかとなった.以上の結果から出力の観点から見てもロギング設定は変更が行われていることが分かる. また,出力の最適化にあたって,準網羅的な記録手法を用いて実際のバグ事例に対して実行時情報の記録を行ったところ,繰り返し実行される命令の情報を削減してもデバッグに必要となる情報が十分に記録されていることが明らかとなった.この結果は,必ずしも常に全ての情報を記録する必要はなく,特に繰り返し実行される古い情報については記録を行なう必要がないことを示している.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
出力の観点からロギングの現状を明らかにするという本年度の研究目的において,少数のプロジェクトを対象としてはいるものの,出力の有無の変更に着目した分析が行なえている. また,出力の最適化の検討といった側面においても,繰り返し実行される命令において全ての情報を出力する必要がない事例が多いという事実も明らかにしており,今後の最適な出力の検討に当たって有用な分析が行なえたと言える.
|
Strategy for Future Research Activity |
本年度の分析結果をもとに,さらに大規模なプロジェクトに対して出力に関する分析を行なう.大規模な調査によって,OSSにおける出力に着目したロギングの実態を明らかにすることを目指す. また,最適なロギングについてもソースコードのログレベルや設定ファイルといった当初予定していた内容に加えて,繰り返しの出力の有無といった実行時に定まる要素についても考慮を行なう.実現に当たって,必要な動的解析技術や許容可能なログの量については国内外の研究者と意見交換を行なう予定である.
|