diff --git a/log2ram.conf b/log2ram.conf index 1462c84..e6f7145 100644 --- a/log2ram.conf +++ b/log2ram.conf @@ -1,31 +1,32 @@ # 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 the size the log folder will reserve into the RAM. -# If it's not enough, log2ram will not be able to use ram. Check you /var/log size folder. -# The default is 40M and is basically enough for a lot of applications. -# You will need to increase it if you have a server and a lot of log for example. +# Specify the amount of RAM reserved for storing logs. This setting determines the maximum size of the RAM folder. +# Ensure 'SIZE=' is set larger than the current size of your /var/log directory to prevent startup failures. +# Also, configure logrotate to manage log growth and prevent the /var/log directory from exceeding this reserved size. +# The default setting of 128M suffices for many typical applications, but you may need to increase it for +# servers or systems that generate extensive logging. SIZE=128M -# Select the log syncing method between the log directory on disk and in the RAM. -# The variable may be uncommented out, setting it to false, if "cp" is preferred over "rsync". -# Currently, this option needs to be unset or set to true for "rsync" to run, -# with "cp" available for fallback when "rsync" is missing. -# In all other cases, setting USE_RSYNC to anything other than true will default to "cp". +# 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 -# If there are some errors with available RAM space, a system mail will be send by default (see next parameter) -# Change it to false and you will have only a log if there is no place on RAM anymore. +# 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 -# This is a one-line command for the error notification. -# By default, it's a email with the command `mail`, the body is passed in stdin. -# So you can set any command(like shoutrrr) or custom script for the error notification. +# 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" -# Variable for folders to put in RAM. You need to specify the real folder `/path/folder` , the `/path/hdd.folder` will -# be automatically created. Multiple path can be separeted by `;`. Do not add the final `/` ! -# example : PATH_DISK="/var/log;/home/test/FolderInRam" +# 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 @@ -33,17 +34,33 @@ PATH_DISK="/var/log" # ram folder is will probably not be as large as journald will use by default JOURNALD_AWARE=true -# **************** Zram backing conf ************************************************* +# 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 **************** -# ZL2R Zram Log 2 Ram enables a zram drive when ZL2R=true ZL2R=false is mem only tmpfs +# 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 -# COMP_ALG this is any compression algorithm listed in /proc/crypto -# lz4 is fastest with lightest load but deflate (zlib) and Zstandard (zstd) give far better compression ratios -# lzo is very close to lz4 and may with some binaries have better optimisation -# COMP_ALG=lz4 for speed or Zstd for compression, lzo or zlib if optimisation or availabilty is a problem + +# 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 is the uncompressed disk size. Note zram uses about 0.1% of the size of the disk when not in use -# LOG_DISK_SIZE is expected compression ratio of alg chosen multiplied by log SIZE -# lzo/lz4=2.1:1 compression ratio zlib=2.7:1 zstandard=2.9:1 -# Really a guestimate of a bit bigger than compression ratio whilst minimising 0.1% mem usage of disk size + +# 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