# This configuration file is used by the busybox syslog init script,
# /etc/init.d/syslog[.busybox] to set syslog configuration at start time.

DESTINATION=file		# log destinations (buffer file remote)
LOGFILE=/var/log/messages	# where to log (file)
REMOTE=loghost:514		# where to log (syslog remote)
REDUCE=no			# reduce-size logging
DROPDUPLICATES=no		# whether to drop duplicate log entries
#ROTATESIZE=0			# rotate log if grown beyond X [kByte]
#ROTATEGENS=3			# keep X generations of rotated logs
BUFFERSIZE=64			# size of circular buffer [kByte]
FOREGROUND=no			# run in foreground (don't use!)
#LOGLEVEL=5			# local log level (between 1 and 8)
