You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

sonar.properties 21KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442
  1. #--------------------------------------------------------------------------------------------------
  2. # IMPORTANT:
  3. # This file will *not* be reloaded upon hitting the "Restart" button in the UI, or using the
  4. # api/system/restart endpoint.
  5. # In order for any change made to this file to be taken into account, you must perform a full
  6. # restart of the main SonarQube service.
  7. #--------------------------------------------------------------------------------------------------
  8. # Property values can:
  9. # - be overridden by environment variables. The name of the corresponding environment variable is the
  10. # upper-cased name of the property where all the dot ('.') and dash ('-') characters are replaced by
  11. # underscores ('_'). For example, to override 'sonar.web.systemPasscode' use 'SONAR_WEB_SYSTEMPASSCODE'.
  12. # - be encrypted. See https://docs.sonarsource.com/sonarqube/latest/instance-administration/security/#settings-encryption
  13. #--------------------------------------------------------------------------------------------------
  14. # DATABASE
  15. #
  16. # IMPORTANT:
  17. # - The embedded H2 database is used by default. It is recommended for tests but not for
  18. # production use. Supported databases are Oracle, PostgreSQL and Microsoft SQLServer.
  19. # - Changes to database connection URL (sonar.jdbc.url) can affect SonarSource licensed products.
  20. # User credentials.
  21. # Permissions to create tables, indices and triggers must be granted to JDBC user.
  22. # The schema must be created first.
  23. #sonar.jdbc.username=
  24. #sonar.jdbc.password=
  25. #----- Embedded Database (default)
  26. # H2 embedded database server listening port, defaults to 9092
  27. #sonar.embeddedDatabase.port=9092
  28. #----- Oracle 19c/21c
  29. # The Oracle JDBC driver must be copied into the directory extensions/jdbc-driver/oracle/.
  30. # Only the thin client is supported, and we recommend using the latest Oracle JDBC driver. See
  31. # https://jira.sonarsource.com/browse/SONAR-9758 for more details.
  32. # If you need to set the schema, please refer to http://jira.sonarsource.com/browse/SONAR-5000
  33. #sonar.jdbc.url=jdbc:oracle:thin:@localhost:1521/XE
  34. #----- PostgreSQL 11 or greater
  35. # By default the schema named "public" is used. It can be overridden with the parameter "currentSchema".
  36. #sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube?currentSchema=my_schema
  37. #----- Microsoft SQLServer 2014/2016/2017/2019/2022 and SQL Azure
  38. # A database named sonar must exist and its collation must be case-sensitive (CS) and accent-sensitive (AS)
  39. # Use the following connection string if you want to use integrated security with Microsoft Sql Server
  40. # Do not set sonar.jdbc.username or sonar.jdbc.password property if you are using Integrated Security
  41. # For Integrated Security to work, you have to download the Microsoft SQL JDBC Auth 12.4.2 package from
  42. # https://github.com/microsoft/mssql-jdbc/releases/download/v12.4.2/mssql-jdbc_auth.zip
  43. # and 'mssql-jdbc_auth-12.4.2.x64.dll' to your path.
  44. #sonar.jdbc.url=jdbc:sqlserver://localhost;databaseName=sonar;integratedSecurity=true
  45. # Use the following connection string if you want to use SQL Auth while connecting to MS Sql Server.
  46. # Set the sonar.jdbc.username and sonar.jdbc.password appropriately.
  47. #sonar.jdbc.url=jdbc:sqlserver://localhost;databaseName=sonar
  48. #----- Connection pool settings
  49. # The maximum number of active connections that can be allocated
  50. # at the same time, or negative for no limit.
  51. # The recommended value is 1.2 * max sizes of HTTP pools. For example if HTTP ports are
  52. # enabled with default sizes (50, see property sonar.web.http.maxThreads)
  53. # then sonar.jdbc.maxActive should be 1.2 * 50 = 60.
  54. #sonar.jdbc.maxActive=60
  55. # The minimum number of connections that can remain idle in the pool,
  56. # without extra ones being created, or zero to create none.
  57. #sonar.jdbc.minIdle=10
  58. # The maximum number of milliseconds that the pool will wait (when there
  59. # are no available connections) for a connection to be returned before
  60. # throwing an exception, or <= 0 to wait indefinitely.
  61. #sonar.jdbc.maxWait=8000
  62. #--------------------------------------------------------------------------------------------------
  63. # WEB SERVER
  64. # Web server is executed in a dedicated Java process. By default heap size is @webDefaultHeapSize@.
  65. # Use the following property to customize JVM options.
  66. # Recommendations:
  67. #
  68. # The HotSpot Server VM is recommended. The property -server should be added if server mode
  69. # is not enabled by default on your environment:
  70. # http://docs.oracle.com/javase/8/docs/technotes/guides/vm/server-class.html
  71. #
  72. # Startup can be long if entropy source is short of entropy. Adding
  73. # -Djava.security.egd=file:/dev/./urandom is an option to resolve the problem.
  74. # See https://wiki.apache.org/tomcat/HowTo/FasterStartUp#Entropy_Source
  75. #
  76. #sonar.web.javaOpts=@webJavaOpts@
  77. # Same as previous property, but allows to not repeat all other settings like -Xmx
  78. #sonar.web.javaAdditionalOpts=
  79. # Binding IP address. For servers with more than one IP address, this property specifies which
  80. # address will be used for listening on the specified ports.
  81. # By default, ports will be used on all IP addresses associated with the server.
  82. #sonar.web.host=0.0.0.0
  83. # Web context. When set, it must start with forward slash (for example /sonarqube).
  84. # Changing this value and restarting the server can have unexpected consequences for logged in users,
  85. # as they may end up with multiple conflicting browser cookies. If your users experience odd
  86. # behaviors after you changed this value and restarted the server, ask them to clear their browser's
  87. # cookies and log in again.
  88. # The default value is root context (empty value).
  89. #sonar.web.context=
  90. # TCP port for incoming HTTP connections. Default value is 9000.
  91. #sonar.web.port=9000
  92. # The maximum number of connections that the server will accept and process at any given time.
  93. # When this number has been reached, the server will not accept any more connections until
  94. # the number of connections falls below this value. The operating system may still accept connections
  95. # based on the sonar.web.connections.acceptCount property. The default value is 50.
  96. #sonar.web.http.maxThreads=50
  97. # The minimum number of threads always kept running. The default value is 5.
  98. #sonar.web.http.minThreads=5
  99. # The maximum queue length for incoming connection requests when all possible request processing
  100. # threads are in use. Any requests received when the queue is full will be refused.
  101. # The default value is 25.
  102. #sonar.web.http.acceptCount=25
  103. # The number of milliseconds this Connector will wait for another HTTP request before closing the
  104. # connection. The default value is to use the value that has been set for the connectionTimeout
  105. # attribute. Use a value of -1 to indicate no (i.e. infinite) timeout.
  106. # The default value is 60000 (ms).
  107. #sonar.web.http.keepAliveTimeout=60000
  108. # By default users are logged out and sessions closed when server is restarted.
  109. # If you prefer keeping user sessions open, a secret should be defined. Value is
  110. # HS256 key encoded with base64. It must be unique for each installation of SonarQube.
  111. # Example of command-line:
  112. # echo -n "type_what_you_want" | openssl dgst -sha256 -hmac "key" -binary | base64
  113. #sonar.auth.jwtBase64Hs256Secret=
  114. # The inactivity timeout duration of user sessions, in minutes. After the configured
  115. # period of time, the user is logged out.
  116. # The default value is set to 3 days (4320 minutes).
  117. # It must be set between 6 minutes and 3 months (129600 minutes).
  118. # Value must be strictly positive.
  119. #sonar.web.sessionTimeoutInMinutes=4320
  120. # A passcode can be defined to access some web services from monitoring
  121. # tools without having to use the credentials of a system administrator.
  122. # Check the Web API documentation to know which web services are supporting this authentication mode.
  123. # The passcode should be provided in HTTP requests with the header "X-Sonar-Passcode".
  124. # By default feature is disabled.
  125. #sonar.web.systemPasscode=
  126. #--------------------------------------------------------------------------------------------------
  127. # SSO AUTHENTICATION
  128. # Enable authentication using HTTP headers
  129. #sonar.web.sso.enable=false
  130. # Name of the header to get the user login.
  131. # Only alphanumeric, '.' and '@' characters are allowed
  132. #sonar.web.sso.loginHeader=X-Forwarded-Login
  133. # Name of the header to get the user name
  134. #sonar.web.sso.nameHeader=X-Forwarded-Name
  135. # Name of the header to get the user email (optional)
  136. #sonar.web.sso.emailHeader=X-Forwarded-Email
  137. # Name of the header to get the list of user groups, separated by comma (optional).
  138. # If the sonar.sso.groupsHeader is set, the user will belong to those groups if groups exist in SonarQube.
  139. # If none of the provided groups exists in SonarQube, the user will only belong to the default group.
  140. # Note that the default group will always be set.
  141. #sonar.web.sso.groupsHeader=X-Forwarded-Groups
  142. # Interval used to know when to refresh name, email and groups.
  143. # During this interval, if for instance the name of the user is changed in the header, it will only be updated after X minutes.
  144. #sonar.web.sso.refreshIntervalInMinutes=5
  145. #--------------------------------------------------------------------------------------------------
  146. # LDAP CONFIGURATION
  147. # Enable the LDAP feature
  148. # sonar.security.realm=LDAP
  149. # Set to true when connecting to a LDAP server using a case-insensitive setup.
  150. # sonar.authenticator.downcase=true
  151. # URL of the LDAP server. Note that if you are using ldaps, then you should install the server certificate into the Java truststore.
  152. # ldap.url=ldap://localhost:10389
  153. # Bind DN is the username of an LDAP user to connect (or bind) with. Leave this blank for anonymous access to the LDAP directory (optional)
  154. # ldap.bindDn=cn=sonar,ou=users,o=mycompany
  155. # Bind Password is the password of the user to connect with. Leave this blank for anonymous access to the LDAP directory (optional)
  156. # ldap.bindPassword=secret
  157. # Possible values: simple | CRAM-MD5 | DIGEST-MD5 | GSSAPI See http://java.sun.com/products/jndi/tutorial/ldap/security/auth.html (default: simple)
  158. # ldap.authentication=simple
  159. # See :
  160. # * http://java.sun.com/products/jndi/tutorial/ldap/security/digest.html
  161. # * http://java.sun.com/products/jndi/tutorial/ldap/security/crammd5.html
  162. # (optional)
  163. # ldap.realm=example.org
  164. # Context factory class (optional)
  165. # ldap.contextFactoryClass=com.sun.jndi.ldap.LdapCtxFactory
  166. # Enable usage of StartTLS (default : false)
  167. # ldap.StartTLS=true
  168. # Follow or not referrals. See http://docs.oracle.com/javase/jndi/tutorial/ldap/referral/jndi.html (default: true)
  169. # ldap.followReferrals=false
  170. # USER MAPPING
  171. # Distinguished Name (DN) of the root node in LDAP from which to search for users (mandatory)
  172. # ldap.user.baseDn=cn=users,dc=example,dc=org
  173. # LDAP user request. (default: (&(objectClass=inetOrgPerson)(uid={login})) )
  174. # ldap.user.request=(&(objectClass=user)(sAMAccountName={login}))
  175. # Attribute in LDAP defining the user’s real name. (default: cn)
  176. # ldap.user.realNameAttribute=name
  177. # Attribute in LDAP defining the user’s email. (default: mail)
  178. # ldap.user.emailAttribute=email
  179. # GROUP MAPPING
  180. # Distinguished Name (DN) of the root node in LDAP from which to search for groups. (optional, default: empty)
  181. # ldap.group.baseDn=cn=groups,dc=example,dc=org
  182. # LDAP group request (default: (&(objectClass=groupOfUniqueNames)(uniqueMember={dn})) )
  183. # ldap.group.request=(&(objectClass=group)(member={dn}))
  184. # Property used to specifiy the attribute to be used for returning the list of user groups in the compatibility mode. (default: cn)
  185. # ldap.group.idAttribute=sAMAccountName
  186. #--------------------------------------------------------------------------------------------------
  187. # COMPUTE ENGINE
  188. # The Compute Engine is responsible for processing background tasks.
  189. # Compute Engine is executed in a dedicated Java process. Default heap size is @ceDefaultHeapSize@.
  190. # Use the following property to customize JVM options.
  191. # Recommendations:
  192. #
  193. # The HotSpot Server VM is recommended. The property -server should be added if server mode
  194. # is not enabled by default on your environment:
  195. # http://docs.oracle.com/javase/8/docs/technotes/guides/vm/server-class.html
  196. #
  197. #sonar.ce.javaOpts=@ceJavaOpts@
  198. # Same as previous property, but allows to not repeat all other settings like -Xmx
  199. #sonar.ce.javaAdditionalOpts=
  200. #--------------------------------------------------------------------------------------------------
  201. # ELASTICSEARCH
  202. # Elasticsearch is used to facilitate fast and accurate information retrieval.
  203. # It is executed in a dedicated Java process. Default maximum heap size is @searchDefaultHeapSize@.
  204. # It is recommended to also set MaxDirectMemorySize (-XX:MaxDirectMemorySize) and set it to half the maximum heap size.
  205. #
  206. # --------------------------------------------------
  207. # Word of caution for Linux users on 64bits systems
  208. # --------------------------------------------------
  209. # Please ensure Virtual Memory on your system is correctly configured for Elasticsearch to run properly
  210. # (see https://www.elastic.co/guide/en/elasticsearch/reference/5.5/vm-max-map-count.html for details).
  211. #
  212. # When SonarQube runs standalone, a warning such as the following may appear in logs/es.log:
  213. # "max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]"
  214. # When SonarQube runs as a cluster, however, Elasticsearch will refuse to start.
  215. #
  216. # JVM options of Elasticsearch process
  217. #sonar.search.javaOpts=@searchJavaOpts@
  218. # Same as previous property, but allows to not repeat all other settings like -Xmx
  219. #sonar.search.javaAdditionalOpts=
  220. # Elasticsearch port for incoming HTTP connections. Default is 9001. Use 0 to get a free port.
  221. # As a security precaution, should be blocked by a firewall and not exposed to the Internet.
  222. #sonar.search.port=9001
  223. # Elasticsearch TCP transport port that is bound to loopback address. When nothing is set, a random port will be chosen.
  224. # As a security precaution, your OS configuration should not expose this port for external access.
  225. #sonar.es.port=
  226. # Elasticsearch host. The search server will bind this address and the search client will connect to it.
  227. # Default is loopback address.
  228. # As a security precaution, should NOT be set to a publicly available address.
  229. #sonar.search.host=
  230. #--------------------------------------------------------------------------------------------------
  231. # UPDATE CENTER
  232. # Update Center requires an internet connection to request https://downloads.sonarsource.com/?prefix=sonarqube/update
  233. # It is enabled by default.
  234. #sonar.updatecenter.activate=true
  235. # HTTP proxy (default none)
  236. #http.proxyHost=
  237. #http.proxyPort=
  238. # HTTPS proxy (defaults are values of http.proxyHost and http.proxyPort)
  239. #https.proxyHost=
  240. #https.proxyPort=
  241. # NT domain name if NTLM proxy is used
  242. #http.auth.ntlm.domain=
  243. # SOCKS proxy (default none)
  244. #socksProxyHost=
  245. #socksProxyPort=
  246. # Proxy authentication (used for HTTP, HTTPS and SOCKS proxies)
  247. #http.proxyUser=
  248. #http.proxyPassword=
  249. # Proxy exceptions: list of hosts that can be accessed without going through the proxy
  250. # separated by the '|' character, wildcard character '*' can be used for pattern matching
  251. # used for HTTP and HTTPS (default none)
  252. # (note: localhost and its literal notations (127.0.0.1, ...) are always excluded)
  253. #http.nonProxyHosts=
  254. #--------------------------------------------------------------------------------------------------
  255. # LOGGING
  256. # SonarQube produces logs in files located in the same directory (see property sonar.path.logs below),
  257. # one per process:
  258. # Main process (aka. App) logs in sonar.log
  259. # Web Server (aka. Web) logs in web.log
  260. # Compute Engine (aka. CE) logs in ce.log
  261. # Elasticsearch (aka. ES) logs in es.log
  262. # and two other log files:
  263. # Access logs
  264. # Deprecation logs
  265. # Regarding logs for processes:
  266. # Depending on the startup, all 4 files follow the same rolling policy (see sonar.log.rollingPolicy and sonar.log.maxFiles) but it applies
  267. # individually (eg. if sonar.log.maxFiles=4, there can be at most 4 of each files, ie. 16 files in total).
  268. #
  269. # All 4 files have logs in the same format:
  270. # 1 2 3 4 5 6
  271. # |-----------------| |---| |-|--------------------||------------------------------| |------------------------------------------------------------------------------------------------------------------------------|
  272. # 2016.11.16 16:47:00 INFO ce[AVht0dNXFcyiYejytc3m][o.s.s.c.t.CeWorkerCallableImpl] Executed task | project=org.sonarqube:example-java-maven | type=REPORT | id=AVht0dNXFcyiYejytc3m | submitter=admin | time=1699ms
  273. #
  274. # 1: timestamp. Format is YYYY.MM.DD HH:MM:SS
  275. # YYYY: year on 4 digits
  276. # MM: month on 2 digits
  277. # DD: day on 2 digits
  278. # HH: hour of day on 2 digits in 24 hours format
  279. # MM: minutes on 2 digits
  280. # SS: seconds on 2 digits
  281. # 2: log level.
  282. # Possible values (in order of descending criticality): ERROR, WARN, INFO, DEBUG and TRACE
  283. # 3: process identifier. Possible values: app (main), web (Web Server), ce (Compute Engine) and es (Elasticsearch)
  284. # 4: SQ thread identifier. Can be empty.
  285. # In the Web Server, if present, it will be the HTTP request ID.
  286. # In the Compute Engine, if present, it will be the task ID.
  287. # 5: logger name. Usually a class canonical name.
  288. # Package names are truncated to keep the whole field to 20 characters max
  289. # 6: log payload. Content of this field does not follow any specific format, can vary in length and include line returns.
  290. # Some logs, however, will follow the convention to provide data in payload in the format " | key=value"
  291. # Especially, log of profiled pieces of code will end with " | time=XXXXms".
  292. # Global level of logs (applies to all 4 processes).
  293. # Supported values are INFO (default), DEBUG and TRACE
  294. #sonar.log.level=INFO
  295. # Level of logs of each process can be controlled individually with their respective properties.
  296. # When specified, they overwrite the level defined at global level.
  297. # Supported values are INFO, DEBUG and TRACE
  298. #sonar.log.level.app=INFO
  299. #sonar.log.level.web=INFO
  300. #sonar.log.level.ce=INFO
  301. #sonar.log.level.es=INFO
  302. # Path to log files. Can be absolute or relative to installation directory.
  303. # Default is <installation home>/logs
  304. #sonar.path.logs=logs
  305. # Rolling policy of log files
  306. # - based on time if value starts with "time:", for example by day ("time:yyyy-MM-dd")
  307. # or by month ("time:yyyy-MM")
  308. # - based on size if value starts with "size:", for example "size:10MB"
  309. # - disabled if value is "none". That needs logs to be managed by an external system like logrotate.
  310. #sonar.log.rollingPolicy=time:yyyy-MM-dd
  311. # Maximum number of files to keep if a rolling policy is enabled.
  312. # - maximum value is 20 on size rolling policy
  313. # - unlimited on time rolling policy. Set to zero to disable old file purging.
  314. #sonar.log.maxFiles=7
  315. # Regarding the Access logs:
  316. # Access log is the list of all the HTTP requests received by server. If enabled, it is stored
  317. # in the file {sonar.path.logs}/access.log. This file follows the same rolling policy as other log file
  318. # (see sonar.log.rollingPolicy and sonar.log.maxFiles).
  319. #sonar.web.accessLogs.enable=true
  320. # Format of access log. It is ignored if sonar.web.accessLogs.enable=false. Possible values are:
  321. # - "common" is the Common Log Format, shortcut to: %h %l %u %user %date "%r" %s %b
  322. # - "combined" is another format widely recognized, shortcut to: %h %l %u [%t] "%r" %s %b "%i{Referer}" "%i{User-Agent}"
  323. # - else a custom pattern. See http://logback.qos.ch/manual/layouts.html#AccessPatternLayout.
  324. # The login of authenticated user is not implemented with "%u" but with "%reqAttribute{LOGIN}" (since version 6.1).
  325. # The value displayed for anonymous users is "-".
  326. # The SonarQube's HTTP request ID can be added to the pattern with "%reqAttribute{ID}" (since version 6.2).
  327. # If SonarQube is behind a reverse proxy, then the following value allows to display the correct remote IP address:
  328. #sonar.web.accessLogs.pattern=%i{X-Forwarded-For} %l %u [%t] "%r" %s %b "%i{Referer}" "%i{User-Agent}" "%reqAttribute{ID}"
  329. # Default value (which was "combined" before version 6.2) is equivalent to "combined + SQ HTTP request ID":
  330. #sonar.web.accessLogs.pattern=%h %l %u [%t] "%r" %s %b "%i{Referer}" "%i{User-Agent}" "%reqAttribute{ID}"
  331. # Regarding the Deprecation logs:
  332. # Deprecation log is the list of all calls to deprecated Web API.
  333. # It is stored in the file {sonar.path.logs}/deprecation.log. This file follows the same rolling policy as other log file
  334. # (see sonar.log.rollingPolicy and sonar.log.maxFiles).
  335. # Format of deprecation log.
  336. # See https://docs.sonarsource.com/sonarqube/latest/instance-administration/server-logs-and-system-info/
  337. # The login of authenticated user is disabled by default.
  338. # sonar.deprecationLogs.loginEnabled=false
  339. #--------------------------------------------------------------------------------------------------
  340. # OTHERS
  341. # Delay in seconds between processing of notification queue. Default is 60 seconds.
  342. #sonar.notifications.delay=60
  343. # Paths to persistent data files (embedded database and search index) and temporary files.
  344. # Can be absolute or relative to installation directory.
  345. # Defaults are respectively <installation home>/data and <installation home>/temp
  346. #sonar.path.data=data
  347. #sonar.path.temp=temp
  348. # Telemetry - Share anonymous SonarQube statistics
  349. # By sharing anonymous SonarQube statistics, you help us understand how SonarQube is used so we can improve the product to work even better for you.
  350. # We don't collect source code or IP addresses. And we don't share the data with anyone else.
  351. #sonar.telemetry.enable=true