summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Meyer <james.meyer@operamail.com>2011-12-07 19:18:43 (GMT)
committerJames Meyer <james.meyer@operamail.com>2011-12-07 19:18:43 (GMT)
commitdb5e198de1e368a2202460089f9d00a52947d4f6 (patch)
tree0d827237ce18a3b1632feea285d10924dc755e5e
parent4e8d09d05069baf219f474509a52041c863cca5d (diff)
downloadlinhes_pkgbuild-db5e198de1e368a2202460089f9d00a52947d4f6.zip
linhes_pkgbuild-db5e198de1e368a2202460089f9d00a52947d4f6.tar.gz
linhes_pkgbuild-db5e198de1e368a2202460089f9d00a52947d4f6.tar.bz2
rsyslog: first build, this replaces syslog-ng
/var/log will now have the format of /var/log/$DATE/$log_files
-rw-r--r--abs/core/rsyslog/PKGBUILD58
-rw-r--r--abs/core/rsyslog/log_care.sh8
-rw-r--r--abs/core/rsyslog/rsyslog39
-rw-r--r--abs/core/rsyslog/rsyslog.conf.d6
-rw-r--r--abs/core/rsyslog/rsyslog.conf.linhes86
-rw-r--r--abs/core/rsyslog/rsyslog.install16
6 files changed, 213 insertions, 0 deletions
diff --git a/abs/core/rsyslog/PKGBUILD b/abs/core/rsyslog/PKGBUILD
new file mode 100644
index 0000000..0422880
--- /dev/null
+++ b/abs/core/rsyslog/PKGBUILD
@@ -0,0 +1,58 @@
+# $Id: PKGBUILD 58329 2011-11-11 14:26:11Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+
+pkgname=rsyslog
+pkgver=5.8.6
+pkgrel=1
+pkgdesc="An enhanced multi-threaded syslogd with a focus on security and reliability"
+url="http://www.rsyslog.com/"
+arch=('i686' 'x86_64')
+license=('GPL3')
+depends=('zlib')
+makedepends=( 'libmysqlclient' 'gnutls')
+optdepends=( 'libmysqlclient: MySQL Database Support'
+ 'gnutls')
+backup=('etc/rsyslog.conf' \
+ 'etc/logrotate.d/rsyslog'
+ 'etc/conf.d/rsyslog')
+conflicts=('syslog-ng')
+replaces=('syslog-ng')
+groups=('base')
+
+options=('strip' 'zipman' '!libtool')
+install=('rsyslog.install')
+source=("http://www.rsyslog.com/files/download/rsyslog/rsyslog-$pkgver.tar.gz"
+ 'rsyslog'
+ 'rsyslog.logrotate'
+ 'rsyslog.conf.d' 'rsyslog.conf.linhes' log_care.sh)
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ ./configure --prefix=/usr \
+ --enable-mysql \
+ --enable-mail \
+ --enable-imfile \
+ --enable-imtemplate \
+ --enable-gnutls \
+ --enable-inet \
+ --with-systemdsystemunitdir=/lib/systemd/system
+ make
+}
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make install DESTDIR=${pkgdir}
+ # Install Daemons and Configuration Files
+ install -D -m755 ${srcdir}/${pkgname} ${pkgdir}/etc/rc.d/${pkgname}d
+ install -D -m644 $srcdir/${pkgname}.conf.linhes ${pkgdir}/etc/${pkgname}.conf
+ mkdir -p ${pkgdir}/etc/rsyslog.d/
+ touch ${pkgdir}/etc/rsyslog.d/empty.conf
+ install -D -m644 $srcdir/${pkgname}.logrotate ${pkgdir}/etc/logrotate.d/${pkgname}
+ install -D -m644 ${srcdir}/${pkgname}.conf.d ${pkgdir}/etc/conf.d/${pkgname}
+ install -D -m755 ${srcdir}/log_care.sh ${pkgdir}/etc/cron.daily/log_care
+}
+md5sums=('c46db0496066b82faf735bd4222208d7'
+ 'a18bbcbb6ebdaa13a6ec6d9f3d9eb2da'
+ '8065db4bef3061a4f000ba58779f6829'
+ '1a0cd4530dd5d1439456d5ae230574d9'
+ '1e4a87a2ffea61c066a0b01fc9392849'
+ '5a4719b7283bba9fc497013848bf5c5c')
diff --git a/abs/core/rsyslog/log_care.sh b/abs/core/rsyslog/log_care.sh
new file mode 100644
index 0000000..4337828
--- /dev/null
+++ b/abs/core/rsyslog/log_care.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+. /etc/profile
+DATE=`date +%Y`
+echo "compressing log files"
+find /var/log/$DATE* -mtime +1 -exec gzip -9 {} \;
+echo "Deleting older log files"
+find /var/log/$DATE* -mtime +7 -exec rm -rf {} \;
+
diff --git a/abs/core/rsyslog/rsyslog b/abs/core/rsyslog/rsyslog
new file mode 100644
index 0000000..ee01454
--- /dev/null
+++ b/abs/core/rsyslog/rsyslog
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/rsyslog
+
+PID=`pidof -o %PPID /usr/sbin/rsyslogd`
+case "$1" in
+ start)
+ stat_busy "Starting RSyslogd"
+ [ -z "$PID" ] && /usr/sbin/rsyslogd $RSYSLOGD_ARGS
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon rsyslogd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping RSyslogd"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm -f /var/run/rsyslogd.pid
+ rm -f /var/rsyslogd.persist
+ rm_daemon rsyslogd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/abs/core/rsyslog/rsyslog.conf.d b/abs/core/rsyslog/rsyslog.conf.d
new file mode 100644
index 0000000..e39f8c3
--- /dev/null
+++ b/abs/core/rsyslog/rsyslog.conf.d
@@ -0,0 +1,6 @@
+#
+# Parameters to be passed to rsyslogd
+# This should almost certainly include at least the current compatability
+# level, e.g. -c4
+#
+RSYSLOGD_ARGS="-c4"
diff --git a/abs/core/rsyslog/rsyslog.conf.linhes b/abs/core/rsyslog/rsyslog.conf.linhes
new file mode 100644
index 0000000..ab6d56f
--- /dev/null
+++ b/abs/core/rsyslog/rsyslog.conf.linhes
@@ -0,0 +1,86 @@
+# if you experience problems, check
+# http://www.rsyslog.com/troubleshoot for assistance
+
+# rsyslog v3: load input modules
+# If you do not load inputs, nothing happens!
+# You may need to set the module load path if modules are not found.
+
+$ModLoad immark # provides --MARK-- message capability
+$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
+$ModLoad imklog # kernel logging (formerly provided by rklogd)
+$FileCreateMode 0644
+$DirCreateMode 0755
+
+# Log all kernel messages to the console.
+# Logging much else clutters up the screen.
+#kern.* /dev/console
+$template DailyPerHostLogs,"/var/log//%$YEAR%-%$MONTH%-%$DAY%/%HOSTNAME%_messages.log"
+$template DynFile,"/var/log/%$YEAR%-%$MONTH%-%$DAY%/%HOSTNAME%_%programname%.log"
+$template DynMail,"/var/log/%$YEAR%-%$MONTH%-%$DAY%/%HOSTNAME%_maillog"
+$template DynCron,"/var/log/%$YEAR%-%$MONTH%-%$DAY%/%HOSTNAME%_cron"
+$template DynBoot,"/var/log/%$YEAR%-%$MONTH%-%$DAY%/%HOSTNAME%_boot.log"
+$template DynSpooler,"/var/log/%$YEAR%-%$MONTH%-%$DAY%/%HOSTNAME%_spooler"
+
+if $programname contains 'lighttpd' then ?DynFile
+& ~
+# Log anything (except mail) of level info or higher.
+# Don't log private authentication messages!
+#*.info;mail.none;authpriv.none;cron.none -/var/log/messages
+*.info;mail.none;authpriv.none;cron.none -?DailyPerHostLogs
+
+# The authpriv file has restricted access.
+#authpriv.* /var/log/secure
+authpriv.* ?DynFile
+
+# Log all the mail messages in one place.
+#mail.* -/var/log/maillog
+mail.* ?DynMail
+
+
+# Log cron stuff
+#cron.* -/var/log/cron
+cron.* ?DynCron
+
+# Everybody gets emergency messages
+*.emerg *
+
+# Save news errors of level crit and higher in a special file.
+#uucp,news.crit -/var/log/spooler
+uucp,news.crit -?DynSpooler
+
+# Save boot messages also to boot.log
+#local7.* /var/log/boot.log
+local7.* ?DynBoot
+
+# Remote Logging (we use TCP for reliable delivery)
+# An on-disk queue is created for this action. If the remote host is
+# down, messages are spooled to disk and sent when it is up again.
+#$WorkDirectory /rsyslog/spool # where to place spool files
+#$ActionQueueFileName uniqName # unique name prefix for spool files
+#$ActionQueueMaxDiskSpace 1g # 1gb space limit (use as much as possible)
+#$ActionQueueSaveOnShutdown on # save messages to disk on shutdown
+#$ActionQueueType LinkedList # run asynchronously
+#$ActionResumeRetryCount -1 # infinite retries if host is down
+
+$IncludeConfig /etc/rsyslog.d/*.conf
+
+# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
+
+#*.* @@localhost:514
+
+# ######### Receiving Messages from Remote Hosts ##########
+# TCP Syslog Server:
+# provides TCP syslog reception and GSS-API (if compiled to support it)
+#$ModLoad imtcp.so # load module
+#$InputTCPServerRun 514 # start up TCP listener at port 514
+# UDP Syslog Server:
+#$ModLoad imudp.so # provides UDP syslog reception
+#$UDPServerRun 514 # start a UDP syslog server at standard port 514
+
+
+
+
+#$ModLoad ommysql # load MySQL functionality
+
+#*.* :ommysql:vmbe,Syslog,syslog,passwd
+
diff --git a/abs/core/rsyslog/rsyslog.install b/abs/core/rsyslog/rsyslog.install
new file mode 100644
index 0000000..2153832
--- /dev/null
+++ b/abs/core/rsyslog/rsyslog.install
@@ -0,0 +1,16 @@
+# arg 1: the new package version
+# arg 2: the old package version
+
+post_install() {
+ remove_service.sh syslog-ng
+ add_service.sh rsyslog
+ if [ ! -e /var/log/old_syslog ]
+ then
+ mkdir -p /var/log/old_sysng
+ mv /var/log/*log* /var/log/old_sysng
+ echo "#########################################"
+ echo "/var/log/old_sysng contains old log files"
+ echo "it may be removed at your convenience"
+ echo "#########################################"
+ fi
+}