Logging

Default log file

Gluesync by default logs its status in the system’s output console as well to a file within the following folder /var/log/gluesync/archived/gluesync.XXX.log where XXX is the file date (plus its incremental counter) used for logs rotation. This process can be customized by tweaking the logging configuration file according to the logback’s framework documentation available at: http://logback.qos.ch/documentation.html. This lets the user have great control under the hood and wider flexibility to decide which logs you want to collect (also for GDPR purposes) and where they should be stored.

To provide Gluesync with a custom Logback configuration file, you need to set the actual file path into an environment variable called LOG_CONFIG_FILE similar to what you’re used to doing for both the license and configuration file. Once set, Gluesync will override its default log settings and use the provided ones.

LOG_CONFIG_FILE=/path/to/logback.xml

Below you can find the default configuration file used by our professional services.

<?xml version="1.0" encoding="UTF-8"?>
<included>
   <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
       <encoder>
           <pattern>
               %d{yyyy-MM-dd'T'HH:mm:ss.SSS} [%t] %c{0} %p - %msg%n
           </pattern>
       </encoder>
   </appender>
   <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
       <file>/var/log/gluesync/gluesync.log</file>
       <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
           <fileNamePattern>/var/log/gluesync/archived/gluesync.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
           <!-- each archived file, size max 10MB -->
           <maxFileSize>10MB</maxFileSize>
           <!-- total size of all archive files, if total size > 20GB, it will delete old archived file -->
           <totalSizeCap>20GB</totalSizeCap>
           <!-- 60 days to keep -->
           <maxHistory>60</maxHistory>
       </rollingPolicy>
       <encoder>
           <pattern>%d{yyyy-MM-dd'T'HH:mm:ss.SSS} %c{1} %p %m%n</pattern>
       </encoder>
   </appender>
   <logger name="com.gluesync" level="debug" additivity="false">
       <appender-ref ref="CONSOLE"/>
       <appender-ref ref="FILE"/>
   </logger>
</included>

Customize logs time zone

By default, Gluesync takes its time zone by the host operating system. In the case of containerized environments, Gluesync can be told to change that behavior by passing to the container orchestrator a different time zone.

Here we’re providing an example of how you can pass a different value in a docker-compose environment:

- env:
        - name: LOG_CONFIG_FILE
          value: /opt/app/config/logback.xml
        - name: CONFIG_FILE
          value: /opt/app/config/config.json
        - name: LICENCE_KEY
          value: /opt/app/config/gs-licence.dat
        - name: TZ
          value: Asia/Bangkok
  • TZ: is key that you will need to customize by issuing a value of Region/City.