You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitHub中CodeQL自定义查询无法检出问题的排查求助

排查CodeQL自定义查询远程PR分析无结果的建议

以下是针对你的场景的具体排查步骤:

  • 检查Workflow自定义查询配置
    确认analyze步骤的queries字段是否明确包含了自定义查询路径。例如:

    - name: Perform CodeQL Analysis
      uses: github/codeql-action/analyze@v2
      with:
        queries: security-extended,security-and-quality,./.github/codeql/codeql-custom-queries-java
    

    同时查看Workflow运行日志,确认是否有加载自定义查询包的记录,若出现路径错误、查询包未找到的提示,需修正路径配置。

  • 修复qlpack.yml格式问题
    你提供的qlpack.yml中extractor字段缩进错误,应与dependencies同级,正确格式如下:

    name: custom-codeql-java
    version: 1.0.0
    dependencies:
      codeql/java-all: ^6.0.0
    extractor: java-kotlin
    

    另外验证GitHub Actions使用的CodeQL版本是否满足^6.0.0的依赖要求:查看Workflow日志中CodeQL的版本信息,若版本过低,可在init步骤指定兼容版本,例如:

    - name: Initialize CodeQL
      uses: github/codeql-action/init@v2
      with:
        languages: java, javascript
        queries: security-extended,security-and-quality,./.github/codeql/codeql-custom-queries-java
        tools-version: "6.0.0"
    
  • 验证增量分析逻辑
    PR默认使用增量分析,仅扫描变更代码。若你修改的方法未被增量分析覆盖,可临时关闭增量测试全量分析:在analyze步骤添加skip-incremental-analysis: true参数,确认是否能检出结果。同时再次确认PR中的目标方法确实满足fromSource()(非第三方库代码)且圈复杂度>20的条件。

  • 确认仓库查询套件配置
    即使自定义查询在仓库设置中显示,仍需确保Workflow明确指定运行该查询。默认的security-extended/security-and-quality套件不会自动包含自定义查询,必须在queries字段中显式添加路径。

  • 查看详细分析日志
    进入GitHub Actions对应的Workflow运行记录,找到CodeQL分析阶段的日志,检查:

    • 是否有加载自定义查询包的成功提示
    • 是否存在依赖缺失、查询语法错误的报错信息
    • 确认自定义查询是否被执行,以及最终结果计数(若显示0结果,需检查查询逻辑与目标代码的匹配度)

内容的提问来源于stack exchange,提问作者Matthias

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 23:48:24