Logging

From FMR Knowledge Base
Revision as of 05:22, 8 December 2023 by Plazarou (talk | contribs) (File-based logging)
Jump to navigation Jump to search

The Fusion Metadata Registry logs information regarding the requests made to it and the work that it is performing. These logs can be long and complicated, but this document aims to explain the logging process.

Logging information is stored in the filesystem as well as in database tables. The files on your system are possibly more transient so unless you take action these will likely be replaced with more recent log information. This is to prevent the size of the log files consuming all of your disk space.


File-based logging

The actual logs generated are controlled by a system setting in the FMR which directly relates to the logging tool that the FMR uses, which is called Logback. The actual files generated are also affected by the Java Web-Application Server you are running (for example Apache Tomcat).


While log files often convey useful information, they naturally grow bigger over time. If allowed to grow indefinitely, their size could become a problem.

Logging libraries address this problem using rolling file appenders, which automatically “roll” or archive the current log file, and resume logging in a new file when certain predefined conditions occur, thereby preventing unwanted downtime.


Logback

Tomcat files

In Apache Tomcat, various log files are generated during the execution of a Java web application. These log files provide valuable information about the application's behavior, errors, and performance. Here's a summary of some common log files in Tomcat:

   catalina.out (or catalina.log):
       Purpose: General logging for the Tomcat server.
       Contents: Includes information about server startup, shutdown, and any errors that occur during the server's operation.
   localhost.log:
       Purpose: Logs information related to the default "localhost" context.
       Contents: Records information about the deployment and undeployment of web applications under the default context.
   localhost_access_log.txt:
       Purpose: Records access information, such as requests made to the Tomcat server.
       Contents: Contains details like client IP address, request date and time, HTTP status, and bytes sent.
   catalina.<date>.log:
       Purpose: Daily rotating log file for Catalina.
       Contents: Includes information specific to the Catalina component of Tomcat. Useful for troubleshooting Catalina-related issues.
   manager.log:
       Purpose: Logs information about the Tomcat Manager application.
       Contents: Records deployment and undeployment activities performed through the Tomcat Manager.
   host-manager.log:
       Purpose: Logs information about the Host Manager application.
       Contents: Records deployment and undeployment activities performed through the Host Manager.
   localhost.<date>.log:
       Purpose: Daily rotating log file for the default "localhost" context.
       Contents: Contains information specific to the default web application context. Useful for troubleshooting application-specific issues.
   manager.<date>.log:
       Purpose: Daily rotating log file for the Tomcat Manager application.
       Contents: Similar to manager.log, but with daily rotation.
   host-manager.<date>.log:
       Purpose: Daily rotating log file for the Host Manager application.
       Contents: Similar to host-manager.log, but with daily rotation.

It's worth noting that the exact filenames and configurations might vary depending on your Tomcat version and configuration. The information provided here is based on common conventions, and you should refer to your specific Tomcat instance's documentation for accurate details.

Database Logging

There are also log tables within the database which persist some of this information.

  • Log Tables
  • Audit Tables