# Configuration file for Log2Ram (https://github.com/azlux/log2ram) under MIT license. # This configuration file is read by the log2ram service # Size for the ram folder, it defines how much space is reserved in the RAM for the logs. # Ensure 'SIZE=' is larger than your /var/log directory. # - (If not enough is reserved, log2ram will fail to start). # Ensure logrotate is set to keep your /var/log directory from growing too large. # - (If your /var/log directory grows larger than 'SIZE=', new logs entries can't be written). # The default of 128M is adequate for a lot of applications. # You will need to increase it if you have a server and a lot of log for example. SIZE=128M # Select the log syncing method between disk and RAM: # - 'rsync' is the default unless 'USE_RSYNC' is set to 'false'. # - If 'rsync' is unavailable, 'cp' is automatically used as a fallback. # - Set 'USE_RSYNC' to 'false' to explicitly use 'cp'. #USE_RSYNC=false # By default, if there is insufficient RAM space, a system notification email is sent. # Set this to 'false' to disable email notifications. (The error will still be logged locally). #NOTIFICATION=true # Specify the command for sending error notifications. # By default, it uses the `mail` command to send an email, with the message body provided via stdin. # You can replace this with any command (such as 'shoutrrr') or a custom script for handling notifications. #NOTIFICATION_COMMAND=mail -s "Log2Ram Error on $HOSTNAME" # Specify the directories to be stored in RAM. List each directory using its absolute path, e.g., `/path/folder`. # Corresponding directories on the HDD, named `/path/hdd.folder`, will be automatically created for each listed path. # Separate multiple paths with a semicolon `;` and do not include a trailing slash at the end of the paths. # Example: PATH_DISK="/var/log;/home/test/FolderInRam" PATH_DISK="/var/log" # Should log2ram consider journald and do a log rotate before copying the log files back? Please note that for this # rsync is mandatory. Also make sure that you have configured SystemMaxUse in journald.conf, because the size of this # ram folder is will probably not be as large as journald will use by default JOURNALD_AWARE=true # Set to 'true' to enable log rotation for journald logs before syncing. # Note: 'rsync' must be used for this feature. # Ensure 'SystemMaxUse' is configured in 'journald.conf' # - (To limit journald’s disk usage to be smaller than the log2ram RAM allocation). JOURNALD_AWARE=true # **************** Zram backing conf **************** # Set ZL2R=true to enable zram, providing compressed RAM storage for log2ram. # Set ZL2R=false to use tmpfs, which provides uncompressed memory-only storage. ZL2R=false # Choose a compression algorithm from those listed in /proc/crypto. # 'lz4' is the fastest, offering the lightest CPU load but lower compression ratios. # 'deflate' (zlib) and 'Zstandard' (zstd) provide higher compression ratios but use more CPU. # 'lzo' is similar to 'lz4' but may perform better with certain binaries due to optimizations. # Set COMP_ALG to 'lz4' for speed, 'zstd' for better compression, or 'lzo' or 'zlib' if optimizations or availability are concerns. COMP_ALG=lz4 # LOG_DISK_SIZE specifies the uncompressed zram disk size. # (Sets the size of the zram disk that will be presented to the operating system). # To estimate amount of RAM this will consume, divide LOG_DISK_SIZE by your chosen compression algorithm's ratio: # - lzo/lz4 typically compresses at a ratio of 2.1:1 # - zlib compresses at about 2.7:1 # - zstandard (zstd) achieves around 2.9:1 # Example calculation using lz4: # Given LOG_DISK_SIZE = 256M (which represents 256 Megabytes of uncompressed log data), # the estimated zram RAM usage = 256 MB / 2.1 ≈ 122 MB of RAM. LOG_DISK_SIZE=256M