diff options
Diffstat (limited to 'app-admin/swatchdog')
-rw-r--r-- | app-admin/swatchdog/Manifest | 6 | ||||
-rw-r--r-- | app-admin/swatchdog/files/swatchdog-confd | 25 | ||||
-rw-r--r-- | app-admin/swatchdog/files/swatchdog-init | 53 | ||||
-rw-r--r-- | app-admin/swatchdog/files/swatchdogrc | 10 | ||||
-rw-r--r-- | app-admin/swatchdog/metadata.xml | 27 | ||||
-rw-r--r-- | app-admin/swatchdog/swatchdog-3.2.4-r1.ebuild | 35 |
6 files changed, 156 insertions, 0 deletions
diff --git a/app-admin/swatchdog/Manifest b/app-admin/swatchdog/Manifest new file mode 100644 index 000000000000..caf960cc6d90 --- /dev/null +++ b/app-admin/swatchdog/Manifest @@ -0,0 +1,6 @@ +AUX swatchdog-confd 678 BLAKE2B 4ad9fb2627f69f2edf5d4ac48653fa89e9bcb1e2e00c003185f73c3674d9836fce11f4ebc2e82c6587ef7d68289cd2e9a1ba2e0634d8672d0c54778507055e78 SHA512 ca294509dd2d2f6622ec16760e32c44972c9ac99761bb743607dd5f7dab44a10f17183e736589111c3124e68f783f9ef9c0c28c5acbf1e39f3fae7cb9c4db238 +AUX swatchdog-init 1502 BLAKE2B 547590375d8f35b9a96cc149eaf6a66a6b705577a5ed7ced91d21ea7e457deb5ffa13fa3c87487f6d573a5368c8cabd58da372bd6c95737abab73d45dbc94e92 SHA512 30d5451cd871c15d2e50a3d5f32f4ea986971e2aa9a0b06ce5e383643aacd72a29c1574ec03bc3c0c994ebb13287f5870e8987971bcb73821f3ee744c7c574a3 +AUX swatchdogrc 299 BLAKE2B 05a0b3c13e6e184d7da0d302f62a0a6c3bcf25a90a30a3c207bcb19d6aa07f7068db7a56ffc5518625d0e40cd2b269e5c2fca7e2a5808cb81ba564087e0ad469 SHA512 64dfe179ccab5674742b8198f15b5439c324c7e9648fa0064a36010f7160303abd09c5af4efdb422628827ff8f327a8db312c4fdfbf02aab29c772d82f1d5b44 +DIST swatchdog-3.2.4.tar.gz 30122 BLAKE2B 103491a231306cedad030fca8cc309ce89e8cbc8a3fcee63cd482efb733b91db8b29193bb1e9b9c5213261b150e3dc6be2b506dee83b2297d5af2f1451f596c8 SHA512 4e0a4e3feed00df0f0d04f94cc090e53e71fa9b20d46236ec41d63b98b5733d80a5941b491cffcbb0b655a9c7d2b5c9423ca7ae043346dbe1b05ee6ab24b9489 +EBUILD swatchdog-3.2.4-r1.ebuild 767 BLAKE2B 5763f3766e8840120532c40db221a371fbea422cb41c400f492b85f0d83ba569d53ce299c08096e2cad312e71716285c46ed125410f800466feac588cfd395f6 SHA512 6002de4c68848260f282666cf0cf51f9f97acc7466bd71301b80a3d1392ffb2f6c1e94a41bd6c0db3f98f05eb35bd152fc3fe691b09846b41308ed32b0f3e8f8 +MISC metadata.xml 1137 BLAKE2B 83db6178d7c8813c8ab5b3f97aee38492de3d1fa31e9778d108a311923014d4e1a30a9a19b6628d9540a47eb0ea5f77cb2d751490c44f990efc09a6d958ffe43 SHA512 3a4efd76ee1a609c59a84ec43482982c27d9cf0ba4e4f42cb162c8dc39acbe89ffb146735d04aa111c404e546311df40cd9da782d76c766ac37e14aedb5f4884 diff --git a/app-admin/swatchdog/files/swatchdog-confd b/app-admin/swatchdog/files/swatchdog-confd new file mode 100644 index 000000000000..13f8a0aed79e --- /dev/null +++ b/app-admin/swatchdog/files/swatchdog-confd @@ -0,0 +1,25 @@ +# /etc/conf.d/swatchdog: config file for /etc/init.d/swatchdog + +# Path to the swatchdog program. +#SWATCHDOG_BINARY="/usr/bin/swatchdog" + +# Swatchrc to read patterns and actions from. +#SWATCHDOGRC="/etc/swatchdogrc" + +# File to monitor +#SWATCHDOG_TAILFILE="/var/log/syslog" + +# Arguments to tail program +#SWATCHDOG_TAILARGS="" + +# Swatch log file +#SWATCHDOG_LOGFILE="/var/log/swatchdog.log" + +# Swatch error file +#SWATCHDOG_ERRFILE="/var/log/swatchdog-err.log" + +# Where to output the generated script to. Should not be writable by others. +#SWATCHDOG_SCRIPT="/run/swatchdog/swatchdog_script.pl" + +# Whether to parse the complete file once at startup. Defaults to "NO". +PARSE_FULL="NO" diff --git a/app-admin/swatchdog/files/swatchdog-init b/app-admin/swatchdog/files/swatchdog-init new file mode 100644 index 000000000000..d623070073f7 --- /dev/null +++ b/app-admin/swatchdog/files/swatchdog-init @@ -0,0 +1,53 @@ +#!/sbin/openrc-run +# This script is based on the one created by Phil (bug #255329). + +depend() { + need logger +} + +SWATCHDOG_BINARY=${SWATCHDOG_BINARY:-/usr/bin/swatchdog} +SWATCHDOGRC=${SWATCHDOGRC:-/etc/swatchdogrc} +SWATCHDOG_TAILFILE=${SWATCHDOG_TAILFILE:-/var/log/syslog} +SWATCHDOG_LOGFILE=${SWATCHDOG_LOGFILE:-/var/log/swatchdog.log} +SWATCHDOG_ERRFILE=${SWATCHDOG_ERRFILE:-/var/log/swatchdog-err.log} +SWATCHDOG_SCRIPT=${SWATCHDOG_SCRIPT:-/run/swatchdog/swatchdog_script.pl} + +gen_script() { + local tailargs="" + if [ "${SWATCHDOG_TAILARGS}" ]; then + tailargs="--tail-args=\"${SWATCHDOG_TAILARGS}\"" + fi + ebegin "Generating swatchdog script from config" + ${SWATCHDOG_BINARY} --dump-script="${SWATCHDOG_SCRIPT}" \ + --use-cpan-file-tail ${tailargs} \ + --config-file "${SWATCHDOGRC}" $1 "${SWATCHDOG_TAILFILE}" + eend $? +} + +parse_full() { + gen_script --examine + ebegin "Parsing complete file once" + /usr/bin/perl ${SWATCHDOG_SCRIPT} 1>/dev/null + eend $? +} + +start() { + checkpath -d -q -m 0750 -o root:root /run/swatchdog + if [ "${PARSE_FULL}" = "YES" ]; then + parse_full + fi + gen_script --tail-file + ebegin "Starting swatchdog" + start-stop-daemon --start --quiet --background \ + --make-pidfile --pidfile /run/swatchdog/swatchdog.pid \ + --stdout ${SWATCHDOG_LOGFILE} --stderr ${SWATCHDOG_ERRFILE} \ + --exec /usr/bin/perl -- ${SWATCHDOG_SCRIPT} + eend $? +} + +stop() { + ebegin "Stopping swatchdog" + start-stop-daemon --stop --exec /usr/bin/perl \ + --pidfile /run/swatchdog/swatchdog.pid --quiet + eend $? +} diff --git a/app-admin/swatchdog/files/swatchdogrc b/app-admin/swatchdog/files/swatchdogrc new file mode 100644 index 000000000000..5132f855852b --- /dev/null +++ b/app-admin/swatchdog/files/swatchdogrc @@ -0,0 +1,10 @@ +# +# A sample configuration file for swatchdog. +# +# See "man swatchdog" for details. + +# Mails root when invalid remote login attempted. +watchfor /(.*) (.*) (.*) (.*) (.*):( [iI]nvalid [uU]ser )(.*)( from )(.*)$/ + threshold track_by=$9,type=limit,count=3,seconds=30 + mail root,subject="Invalid user" + diff --git a/app-admin/swatchdog/metadata.xml b/app-admin/swatchdog/metadata.xml new file mode 100644 index 000000000000..e0a3fdd952e8 --- /dev/null +++ b/app-admin/swatchdog/metadata.xml @@ -0,0 +1,27 @@ +<?xml version='1.0' encoding='UTF-8'?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>nimiux@gentoo.org</email> + <name>Chema Alonso</name> + </maintainer> + <longdescription lang="en"> + swatchdog.pl started out as swatch, the "simple watchdog" + for activity monitoring log files produced by UNIX's syslog + facility. It has since been evolving into a utility that can + monitor just about any type of log. The name has been changed + to satisfy a request made by the old Swiss watch company. + </longdescription> + <longdescription lang="es"> + swatchdog.pl comenzó como swatch, el "simple perro guardián" + para monitorizar la actividad en los ficheros de registro + producidos por la característica syslog de los sistemas UNIX. + Desde entonces ha evolucionado hacia una utilidad que puede + monitorizar cualquier tipo de registro. Se ha cambiado el + nombre del proyecto para satisfacer una petición realizada + por la empresa de relojes suiza. + </longdescription> + <upstream> + <remote-id type="sourceforge">swatch</remote-id> + </upstream> +</pkgmetadata> diff --git a/app-admin/swatchdog/swatchdog-3.2.4-r1.ebuild b/app-admin/swatchdog/swatchdog-3.2.4-r1.ebuild new file mode 100644 index 000000000000..c572801b8f3a --- /dev/null +++ b/app-admin/swatchdog/swatchdog-3.2.4-r1.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +GENTOO_DEPEND_ON_PERL_SUBSLOT=yes +inherit perl-app + +DESCRIPTION="Simple log watcher" +HOMEPAGE="https://sourceforge.net/projects/swatch/" +SRC_URI="mirror://sourceforge/swatch/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc x86" +IUSE="" + +RDEPEND="dev-perl/Date-Manip + dev-perl/Date-Calc + dev-perl/File-Tail + dev-perl/TimeDate + >=virtual/perl-Time-HiRes-1.12 + !app-admin/swatch" + +src_install() { + emake install + newinitd "${FILESDIR}/${PN}-init" "${PN}" + newconfd "${FILESDIR}/${PN}-confd" "${PN}" + insinto /etc + doins "${FILESDIR}/${PN}rc" + + # Clean up perl localpod and packlist (bug #620886) + perl_delete_localpod + perl_fix_packlist +} |