Logs

You can control global level of log verbosity with $sys_logger_level parameter in /etc/tuleap/conf/local.inc. It accepts the following values:

  • emergency

  • alert

  • critical

  • error

  • warning (default value)

  • notice

  • info

  • debug

The verbosity applies regardless of the driver (file, syslog, graylog) and for the whole platform/services.

Note

Files is the default logging mechanism but it’s unlikely to fit production needs we recommend either syslog or better graylog/gelf (this last one provides more contextual information).

When syslog or graylog is used, we recommend to gather all application logs with those drivers (esp. nginx and apache error logs).

Files

Tuleap stores a lot of information in different system log files to help you analyze your instance.

These system log files are in plain text and can be opened with any text editor.

Nginx

  • /var/log/nginx/access.log: contains all hits to your instance passing through nginx.

  • /var/log/nginx/error.log: contains all errors encountered by nginx when serving a page.

PHP-FPM

  • /var/opt/remi/php80/log/php-fpm/error.log: contains all errors encountered when responses generated by PHP-FPM are constructed.

Apache

  • /var/log/httpd/access_log: contains all hits to your instance passing through Apache.

  • /var/log/httpd/error_log: contains all errors encountered when pages generated by Apache are constructed.

Tuleap

  • /var/log/tuleap/codendi_syslog: contains information about backend operations like a system event execution.

  • /var/log/tuleap/cvslog/: contains information specific to the CVS activity.

  • /var/log/tuleap/ldap_syslog: contains information specific to the LDAP plugin activity.

  • /var/log/tuleap/git_syslog: contains information on operations executed in the Git system event queue.

  • /var/log/tuleap/git_http_error_log: contains errors specific to the Git HTTP activity.

  • /var/log/tuleap/rest_api_log: contains errors specific to the REST API activity.

  • /var/log/tuleap/burndown_syslog: contains information on the generation of burndowns by the tracker plugin.

  • /var/log/tuleap/burnup_syslog: contains information on the generation of burnups by the agile dashboard plugin.

  • /var/log/tuleap/project_xml_import_syslog: contains information specific to the XML project import process.

  • /var/log/tuleap/statistics_syslog: contains information on operations executed for the statistic generation.

  • /var/log/tuleap/tv3_tv5_migration_syslog: contains information related to tracker v3 to tracker v5 migration.

  • /var/log/tuleap/archive_deleted_item.log: contains information about what is executed by the archivedeleteditems plugin while archiving deleted items.

  • /var/log/tuleap/botMattermost_syslog: contains information on the BotMattermost plugins behavior.

  • /var/log/tuleap/worker_log: contains information about backend workers activity (e.g. asynchronous notifications).

  • /var/log/tuleap/openid_connect_client.log: contains errors specific to the OpenID Connect activity.

  • /var/log/tuleap/mail_syslog: contains errors and information specific to mails distribution.

Tuleap realtime

  • /var/log/tuleap-realtime/tuleap-realtime.log: contains information specific to the Tuleap Realtime server.

Graylog

System administrators can configure Tuleap to send logs in a centralized Graylog server or, for what is worth, anything that can ingest gelf messages.

The server can be configured with variables (to be set with tuleap config-set in CLI):

  • graylog2_server: the graylog server fully qualified name without port or protocol (eg logs.example.com)

  • graylog2_port: graylog server port (eg 5789)

  • graylog2_ssl: set to 1 if you want the connection to be encrypted. You might need to add graylog server certificate into the trusted certificates.

  • graylog2_debug: set to 1 if you want to raise errors about communication to graylog server (those logs will be found in nginx or fpm logs).

Note

Tuleap can only send logs using TCP and Gelf as of today. On Graylog side of the configuration, you need to create an input accordingly (TCP/Gelf).

Once everything is set, you can switch the logs to graylog with

$> tuleap config-set sys_logger graylog2

Syslog

System administrators can also decide to send all Tuleap application logs to syslog. Most of the time, this should be used in conjunction with a centralized logging with journald, rsyslog or syslog-ng.

To activate it run:

$> tuleap config-set sys_logger syslog

You will find the logs with journalctl -t tuleap.