Просмотр исходного кода

new package: syslog-ng 1.6.0rc4 (Syslog Daemon)

Ralf S. Engelschall 22 лет назад
Родитель
Сommit
61c65a6ee7
3 измененных файлов с 272 добавлено и 0 удалено
  1. 59 0
      syslog-ng/rc.syslog-ng
  2. 84 0
      syslog-ng/syslog-ng.conf
  3. 129 0
      syslog-ng/syslog-ng.spec

+ 59 - 0
syslog-ng/rc.syslog-ng

@@ -0,0 +1,59 @@
+#!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc
+##
+##  rc.syslog-ng -- Run-Commands
+##
+
+%config
+    syslog_ng_enable="$openpkg_rc_def"
+    syslog_ng_flags=""
+    syslog_ng_log_prolog="true"
+    syslog_ng_log_epilog="true"
+    syslog_ng_log_numfiles="10"
+    syslog_ng_log_minsize="1M"
+    syslog_ng_log_complevel="9"
+
+%common
+    syslog_ng_cfgfile="@l_prefix@/etc/syslog-ng/syslog-ng.conf"
+    syslog_ng_pidfile="@l_prefix@/var/syslog-ng/syslog-ng.pid"
+    syslog_ng_signal () {
+        [ -f $syslog_ng_pidfile ] && kill -$1 `cat $syslog_ng_pidfile`
+    }
+
+%status -u @l_susr@ -o
+    syslog_ng_usable="unknown"
+    syslog_ng_active="no"
+    rcService syslog_ng enable yes && \
+        syslog_ng_signal 0 && syslog_ng_active="yes"
+    echo "syslog_ng_enable=\"$syslog_ng_enable\""
+    echo "syslog_ng_usable=\"$syslog_ng_usable\""
+    echo "syslog_ng_active=\"$syslog_ng_active\""
+
+%start -p 100 -u @l_susr@
+    rcService syslog_ng enable yes || exit 0
+    rcService syslog_ng active yes && exit 0
+    @l_prefix@/sbin/syslog-ng \
+        -f ${syslog_ng_cfgfile} \
+        -p ${syslog_ng_pidfile} \
+        ${syslog_ng_flags}
+
+%stop -p 100 -u @l_susr@
+    rcService syslog_ng enable yes || exit 0
+    rcService syslog_ng active no  && exit 0
+    syslog_ng_signal TERM
+    sleep 2
+    rm -f $syslog_ng_pidfile >/dev/null 2>&1 || true
+
+%restart -p 100 -u @l_susr@
+    rcService syslog_ng enable yes || exit 0
+    rcService syslog_ng active no  && exit 0
+    rc syslog_ng stop start
+
+%daily -u @l_susr@
+    rcService syslog_ng enable yes || exit 0
+    shtool rotate -f \
+        -n ${syslog_ng_log_numfiles} -s ${syslog_ng_log_minsize} -d \
+        -z ${syslog_ng_log_complevel} -m 644 -o @l_susr@ -g @l_mgrp@ \
+        -P "${syslog_ng_log_prolog}" \
+        -E "${syslog_ng_log_epilog} && rc syslog_ng restart" \
+        @l_prefix@/var/syslog-ng/syslog-ng.log
+

+ 84 - 0
syslog-ng/syslog-ng.conf

@@ -0,0 +1,84 @@
+##
+##  syslog-ng.conf - Syslog Daemon Configuration
+##  (See syslog-ng(8) and syslog-ng.conf(5) for more information)
+##
+
+#   global options
+options {
+    sync(0);
+    time_reopen(10);
+    log_fifo_size(1000);
+    long_hostnames(off);
+    use_dns(no);
+    use_fqdn(no);
+    create_dirs(no);
+    keep_hostname(yes);
+};
+
+#   message sources
+source s_local {
+    internal();
+    unix-dgram("@l_prefix@/var/syslog-ng/syslog-ng.sock");
+};
+source s_remote {
+    udp(ip(127.0.0.1) port(514) max-connections(20));
+    tcp(ip(127.0.0.1) port(514) max-connections(20));
+};
+
+#   message destinations
+destination d_tty_all {
+    usertty("*");
+};
+destination d_tty_root {
+    usertty("root");
+};
+destination d_console {
+    file("/dev/console");
+};
+destination d_logfile {
+    file("@l_prefix@/var/syslogd/syslog-ng.log"
+         template("$ISODATE $HOUR:$MIN:$SEC $TZ $HOST [$LEVEL] $MSG\n")
+         template_escape(no)
+    );
+};
+
+#   message filters
+filter f_tty_all {
+    level(emerg)
+};
+filter f_tty_root {
+    level(emerg,alert) or
+    (level(error) and facility(auth, kern));
+};
+filter f_console {
+    level(emerg, alert, crit) or
+    (level(error, warning, notice) and facility(auth, kern));
+};
+filter f_logfile {
+};
+
+#   message logging
+log {
+    source(s_local);
+    source(s_remote);
+    filter(f_console);
+    destination(d_console);
+};
+log {
+    source(s_local);
+    source(s_remote);
+    destination(d_logfile);
+};
+log {
+    source(s_local);
+    source(s_remote);
+    filter(f_tty_root);
+    destination(d_tty_root);
+};
+log {
+    source(s_local);
+    source(s_remote);
+    filter(f_tty_all);
+    destination(d_tty_all);
+};
+

+ 129 - 0
syslog-ng/syslog-ng.spec

@@ -0,0 +1,129 @@
+##
+##  syslog-ng.spec -- OpenPKG RPM Specification
+##  Copyright (c) 2000-2003 The OpenPKG Project <http://www.openpkg.org/>
+##  Copyright (c) 2000-2003 Ralf S. Engelschall <rse@engelschall.com>
+##  Copyright (c) 2000-2003 Cable & Wireless <http://www.cw.com/>
+##
+##  Permission to use, copy, modify, and distribute this software for
+##  any purpose with or without fee is hereby granted, provided that
+##  the above copyright notice and this permission notice appear in all
+##  copies.
+##
+##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+##  SUCH DAMAGE.
+##
+
+#   package version
+%define       V_sl_major 1.6
+%define       V_sl_minor 0rc4
+%define       V_ol_major 0.3
+%define       V_ol_minor 11
+
+#   package information
+Name:         syslog-ng
+Summary:      Syslog Daemon
+URL:          http://www.balabit.com/products/syslog_ng/
+Vendor:       Balázs Scheidler
+Packager:     The OpenPKG Project
+Distribution: OpenPKG [EVAL]
+Group:        System
+License:      GPL
+Version:      %{V_sl_major}.%{V_sl_minor}
+Release:      20031102
+
+#   list of sources
+Source0:      http://www.balabit.com/downloads/syslog-ng/%{V_sl_major}/src/syslog-ng-%{V_sl_major}.%{V_sl_minor}.tar.gz
+Source1:      http://www.balabit.com/downloads/libol/%{V_ol_major}/libol-%{V_ol_major}.%{V_ol_minor}.tar.gz
+Source2:      rc.syslog-ng
+Source3:      syslog-ng.conf
+
+#   build information
+Prefix:       %{l_prefix}
+BuildRoot:    %{l_buildroot}
+BuildPreReq:  OpenPKG, openpkg >= 20030103
+PreReq:       OpenPKG, openpkg >= 20030103
+AutoReq:      no
+AutoReqProv:  no
+
+%description
+    syslog-ng is a syslogd(8) replacement, but with new functionality
+    for the new generation. The original syslogd allows messages only
+    to be sorted based on priority/facility pairs; syslog-ng adds the
+    possibility to filter based on message contents using regular
+    expressions. The new configuration scheme is intuitive and powerful.
+    Forwarding logs over TCP and remembering all forwarding hops makes
+    it ideal for firewalled environments.
+
+%prep
+    %setup -q
+    %setup -q -T -D -a 1
+
+%build
+    #   configure and build libol
+    ( cd libol-%{V_ol_major}.%{V_ol_minor}
+      CC="%{l_cc}" \
+      CFLAGS="%{l_cflags -O}" \
+      CPPFLAGS="%{l_cppflags}" \
+      LDFLAGS="%{l_ldflags}" \
+      ./configure \
+          --prefix=%{l_prefix} \
+          --disable-shared
+      %{l_make} %{l_mflags -O}
+    ) || exit $?
+
+    #   configure and build syslog-ng
+    %{l_shtool} subst \
+        -e 's;ACLOCAL=aclocal;ACLOCAL=true;g' \
+        -e 's;AUTOCONF=autoconf;AUTOCONF=true;;' \
+        -e 's;AUTOMAKE=automake;AUTOMAKE=true;;' \
+        -e 's;AUTOHEADER=autoheader;AUTOHEADER=true;;' \
+        -e 's;MAKEINFO=makeinfo;MAKEINFO=true;;' \
+        configure
+    CC="%{l_cc}" \
+    CFLAGS="%{l_cflags -O}" \
+    CPPFLAGS="%{l_cppflags}" \
+    LDFLAGS="%{l_ldflags}" \
+    ./configure \
+        --prefix=%{l_prefix} \
+        --with-libol="`pwd`/libol-%{V_ol_major}.%{V_ol_minor}"
+    %{l_make} %{l_mflags -O}
+
+%install
+    #   install syslog-ng
+    rm -rf $RPM_BUILD_ROOT
+    %{l_make} %{l_mflags} install AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT"
+    strip $RPM_BUILD_ROOT%{l_prefix}/sbin/* >/dev/null 2>&1 || true
+
+    #   install additional files
+    %{l_shtool} mkdir -f -p -m 755 \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/syslog-ng \
+        $RPM_BUILD_ROOT%{l_prefix}/share/syslog-ng
+    %{l_shtool} install -c -m 755 %{l_value -s -a} \
+        %{SOURCE rc.syslog-ng} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
+    %{l_shtool} install -c -m 644 %{l_value -s -a} \
+        %{SOURCE syslog-ng.conf} $RPM_BUILD_ROOT%{l_prefix}/etc/syslog-ng/
+    %{l_gzip} -d -c doc/sgml/syslog-ng.html.tar.gz | %{l_tar} xf -
+    %{l_shtool} install -c -m 644 %{l_value -s -a} \
+        syslog-ng.html/* $RPM_BUILD_ROOT%{l_prefix}/share/syslog-ng/
+
+    #   determine installation files
+    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
+        %{l_files_std} \
+        '%config %{l_prefix}/etc/syslog-ng/*'
+
+%files -f files
+
+%clean
+    rm -rf $RPM_BUILD_ROOT
+