SonarCFamily обнаруживает только повторяющиеся кодовые блоки с запахом кода

Я пытаюсь использовать SonarScanner с плагином SonarCFamily в моей кодовой базе C на Ubuntu. Я вижу, что сканер может обнаруживать только «запахи кода — повторяющиеся блоки кода» в моей кодовой базе и никакие другие виды ошибок/уязвимостей. Я намеренно добавил в код утечку памяти, и SonarQube не смог ее обнаружить, в то время как инструмент SA с открытым исходным кодом Cppcheck смог. Я пропустил некоторые настройки в файле sonar-project.properties? Мой файл sonar.properties выглядит следующим образом. Требуются ли какие-либо настройки в подключаемом модуле server/SonarCFamily, чтобы инструмент обнаруживал другие формы ошибок SA?

# must be unique in a given SonarQube instance
sonar.projectKey=c-sa-test
# this is the name and version displayed in the SonarQube UI. Was mandatory prior to SonarQube 6.1.
sonar.projectName=c-sa-test
sonar.projectVersion=1.0

# Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
# This property is optional if sonar.modules is set. 
sonar.sources=src

# Encoding of the source code. Default is default system encoding
sonar.sourceEncoding=UTF-8
sonar.host.url=http://localhost:9000
sonar.cfamily.build-wrapper-output=bw_output
sonar.c.file.suffixes=.c,.h
sonar.cpp.file.suffixes=.cc,.cpp,.cxx,.c++,.hh,.hpp,.hxx,.h++,.ipp

person Naikster    schedule 24.05.2018    source источник
comment
У вас действительно есть правила в применяемом профиле? Вы можете увидеть, какие профили используются на главной странице проекта в правом нижнем углу.   -  person G. Ann - SonarSource Team    schedule 24.05.2018
comment
Спасибо, что вернулись. Ниже приведены профили, применяемые в соответствии с домашней страницей проекта: Профили качества (C)c-default-2017 (Python)py-default-2017 (Web)web-default-2017 (XML)xml-default-2017 Для c-default -2017 Ниже приводится сводка правил: Правила Активные Неактивные Всего 133 105 Ошибки 37 21 Уязвимости 2 0 Запахи кода 94 84 Устаревшие правила   -  person Naikster    schedule 24.05.2018
comment
а ваш файл bw_output не пустой?   -  person G. Ann - SonarSource Team    schedule 24.05.2018
comment
И эти файлы не пустые?   -  person G. Ann - SonarSource Team    schedule 24.05.2018
comment
Каталог bw_output непустой с 2-мя файлами: build-wrapper-dump.json 505 байт и build-wrapper.log 99430 байт, вижу довольно много неактивных правил в профиле c-default-2017. Может ли это способствовать такому поведению?   -  person Naikster    schedule 25.05.2018
comment
Да @Naikster, это могло бы   -  person G. Ann - SonarSource Team    schedule 25.05.2018
comment
Нашел первопричину. Отсутствовали некоторые элементы процесса сборки проекта в качестве входных данных для оболочки сборки. Как только они были добавлены, SonarQ предоставил подробный отчет. Спасибо за помощь в отладке проблемы.   -  person Naikster    schedule 25.05.2018


Ответы (2)


Найдена основная причина. Отсутствовало предоставление некоторых элементов процесса сборки проекта в качестве входных данных для оболочки сборки. Как только они были добавлены, SonarQ предоставил подробный отчет.

person Naikster    schedule 25.05.2018
comment
Можете ли вы уточнить, какие именно элементы сборки отсутствовали, и если у вас есть какая-либо соответствующая информация, почему это вызвало проблему? Моя команда испытывает точно такую ​​же проблему при попытке проанализировать проект. Спасибо - person rscarter; 22.02.2019

У меня была точно такая же проблема, когда SonarCFamily сообщал только о дублировании кода. Это произошло из-за неправильного процесса сборки в качестве входных данных для оболочки сборки. В моем случае я использовал SonarScanner.MSBuild, и в моей строке сборки-оболочки у меня не были указаны конфигурация и платформа, поэтому мои проекты не собирались и не сканировались. Последними рабочими строками были:

SonarScanner.MSBuild.exe begin /k:"ваш ключ" /d:sonar.cfamily.build-wrapper-output=”bw_output”

build-wrapper-win-x86-64.exe --out-dir bw_output MSBuild.exe your_solution.sln /p:Configuration=Release /p:Platform=x64

Конец SonarScanner.MSBuild.exe

person Steph    schedule 02.05.2019