The Qube! supervisor and workers communicate between themselves in order to coordinate the dispatch and running of jobs, and log this communication in the supelog and workerlog files respectively.  Over time, these logs may become very large, can consume an inordinate amount of disk space, and can be unwieldy to should they need to be read for troubleshooting purposes.

    Automated log rotation on the supervisor and workers is available via a Windows Scheduled Task, launchctl on OS X, and a cron job on Linux.

    Setup and configuration

    Linux

    Setup
    No additional tasks are necessary for log rotation on linux.  
    Configuration
    The log rotation on Linux is managed by the linux daemon logrotated , and is specified in  /etc/logrotate.d/supervisor .  See the man pages for logrotated if you wish to customize the rotation policies.
    Rotation Policy
    Rotate out the logs weekly, keeping 4 copies.

    OS X

    Setup
    No additional tasks are necessary for log rotation on OS X.   
    Rotation Policy
    Rotate out the logs when they exceed 100MB in size (the default size in the logrotate.py script).
    Configuration
    The log rotation on OS X is managed by launchctl/launchd, and the associated .plist files are:
        /Library/LaunchDaemons/com.pipelinefx.logrotate.supervisor.plist
        /Library/LaunchDaemons/com.pipelinefx.logrotate.worker.plist

    Both of these plists call /Applications/pfx/qube/utils/logrotate.py; see The logrotate.py script

    Windows

    Setup
    Enabling log rotation on Windows requires that the Python programming language be installed and in the System SEARCH PATH.  The easiest way to accomplish this is to download and install a free Community Edition version of Python from http://www.python.org. Download and run one of these installers, and allow it to add Python to the System Search Path.  You should see the logs rotate out within the hour. If you're unsure which version to install, choose the 64-bit installer.
    Configuration
    All Scheduled Tasks call %QBDIR%/pfx/qube/utils/logrotate.py, with only the path to the log as an argument.  
    Rotation Policy
    Rotate out the logs when they exceed 100MB in size (the default size in the logrotate.py  script).

    Verifying that log rotation is occurring

    Locate the log directory:
    • Linux:                                             /var/log/
    • OS X:                       /var/log
    • Windows Vista, 7, Server 2008:   C:\ProgramData\Pfx\qube\logs

    You will see at least on workerlog or supelog file.  When rotation occurs, these logs are renamed and/or zipped/compressed.

    • supelog -> supelog.1
    • supelog.1 --> supelog.2.zip
    • supelog.2.zip --> supelog.3.zip
    • supelog.3.zip --> supelog.4.zip
    • supelog.4.zip is deleted

    You will only see supelog and supelog.1 the first time the rotation occurs.  The other files will appear when additional log rotation cycles occur as time passes.


    • No labels