9.9 | Instance administration | Server logs and system info

On this page

Server logs, Server ID, and system info

System Info

The System Info page is found at Administration > System. It gives you access to detailed information on the state of your SonarQube instance.

You can browse details about your running instance on this page.

Download

Additionally, if you have a support contract, you might be asked by a support representative to send in your system info, which can be downloaded using the Download System Info button at the top.

Server ID

If you want to switch to a paid SonarQube edition, you will be asked by your sales representative to send in your Server ID.

Your server ID can be found at the top of the page Administration > System.

If you’re running a commercial instance, you can also find this value on the License page (Administration > Configuration > License Manager)

Logs

Server-side logging is controlled by properties set in <SONARQUBE_HOME>/conf/sonar.properties. The standard output of SonarQube logs can be converted to JSON with the environment variable SONAR_LOG_JSONOUTPUT=true. A configuration of the log format is currently not possible.

Four log files are created: one per SonarQube process.

Log level

The server-side log level can be customized via the sonar.log.level property. Supported values are:

  • INFO: the default
  • DEBUG: For advanced logs. Starting from this log level, some personal user information can be logged.
  • TRACE: show advanced logs and all SQL and ElasticSearch requests. TRACE level logging slows down the server environment, and should be used only for tracking web request performance problems.

Log level by process

The server-side log level can be adjusted more precisely for the four processes of SonarQube server via the following properties:

  • sonar.log.level.app: for the Main process of SonarQube (aka WrapperSimpleApp, the bootstrapper process starting the 3 others)
  • sonar.log.level.web: for the WebServer
  • sonar.log.level.ce: for the ComputeEngineServer
  • sonar.log.level.es: for the SearchServer

Log rotation

To control log rolling, use the sonar.log.rollingPolicy.

  • time:[value]: for time-based rotation. For example, use time:yyyy-MM-dd for daily rotation, and time:yyyy-MM for monthly rotation.
  • size:[value]: for size-based rotation. For example, size:10MB.
  • none: for no rotation. Typically this would be used when logs are handled by an external system like logrotate.

sonar.log.maxFiles is the maximum number of files to keep. This property is ignored if sonar.log.rollingPolicy=none.

UI access to logs and log levels

The System Info page gives you the ability to download your instance's current log files (log files rotate on a regular basis), and to tune the log level via controls at the top of the page. Changes made here are temporary, and last only until the next time the instance is restarted, at which point the level will be reset to the more permanent value set in <SONARQUBE_HOME>/conf/sonar.properties. Regardless, if you change your log level from INFO, be sure to change it back as soon as is practical; log files can get very large very quickly at lower log levels.

Total lines of code

The number of lines of code (for licensing purposes) in an instance can be found in the System section of the System Info page and on the License page (Administration > Configuration > License Manager) in commercial editions.

If you're on a commercial edition and using branch or PR analysis, rest assured that only lines from the single largest branch in a project are considered for licensing purposes. The lines of code in the rest of the branches are ignored.

© 2008-2024 SonarSource SA. All rights reserved. SONAR, SONARSOURCE, SONARLINT, SONARQUBE, SONARCLOUD, and CLEAN AS YOU CODE are trademarks of SonarSource SA.

Creative Commons License