项目简介
本项目是基于LLVM的开源工具,用于分析源代码中的日志信息和配置参数。可帮助开发者快速定位、分析和比较日志信息,还能从日志中推断配置参数间的约束关系。
项目的主要特性和功能
- 源代码日志信息收集:借助Clang工具分析源代码,提取日志语句并保存相关信息。
- 配置信息收集:利用Clang工具从源代码中提取配置信息,收集与配置相关的其他语句或项目。
- 日志与配置的关联性分析:基于Levenshtein距离和词频分析等方法,计算日志与配置信息相似度,判断两者相关性。
- 过滤和详细输出:依据相似度分析结果,过滤并输出与配置信息相关的日志信息,提供详细日志输出。
- 词性标注和文本匹配:使用Spacy库进行文本的词性标注和解析,按预设规则判断文本是否满足约束描述。
安装使用步骤
前提条件
确保已正确安装LLVM和Spacy等相关依赖库,根据实际情况调整文件路径和目录结构。
编译和构建
- 进入项目源码目录:
bash cd <path/to/ConfInLog/src>
- 创建并进入构建目录:
bash mkdir build && cd build
- 运行CMake进行配置:
bash cmake ../
- 编译项目:
bash make
运行工具
- 进入项目源码目录:
bash cd <path/to/ConfInLog/src>
- 运行脚本,输入目标软件的名称和其他必要的参数:
bash ./scripts/confinlog.py -[a|p|f|i|e|m] <target_software_name>
生成输出
脚本将自动处理源代码,提取日志和配置信息,并生成相关的输出文件。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】