ports/75811: New port: sysutils/monit Unix system management and monitoring tool
Martin Pala
martinp at tildeslash.com
Tue Jan 4 17:10:33 UTC 2005
>Number: 75811
>Category: ports
>Synopsis: New port: sysutils/monit Unix system management and monitoring tool
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Tue Jan 04 17:10:30 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: Martin Pala <martinp at tildeslash.com>
>Release: FreeBSD 4.10-STABLE i386
>Organization:
>Environment:
System: FreeBSD f1self31.oskarmobil.cz 4.10-STABLE FreeBSD 4.10-STABLE #0: Thu Sep 16 16:44:42 CEST 2004 root at f1self31.oskarmobil.cz:/usr/obj/usr/src/sys/OskarUP i386
>Description:
Monit is a utility for managing and monitoring processes,
files, directories, devices and network services on a Unix system.
Monit conducts automatic maintenance and repair and can execute
meaningful causal actions in error situations.
monit supports:
* Daemon mode - poll services at a specified interval
* Group and manage groups of services, service dependencies
* Logging - syslog or own logfile
* Alert, start, stop and restart of services based on it's characteristics
* MD5 and SHA1 checksums
* Runtime Unix socket and TCP/IP port checking (tcp and udp)
* Process status, timeout, memory and cpu usage, etc.
* Device usage monitoring (inodes and space)
* File monitoring (timestamp, checksum, permission, owner, etc.)
* Directory monitoring (timestamp, permission, owner, etc.)
* Remote network services monitoring (ping, response time, protocol, etc.)
* System load average monitoring
* Flexible and customizable email alert messages and notifications
* Protocol verification such as HTTP, FTP, SMTP, POP, IMAP, NNTP, etc.
* A HTTP interface with XML output option
and many more features :)
WWW: http://www.tildeslash.com/monit/
>How-To-Repeat:
>Fix:
--- monit.shar begins here ---
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# monit
# monit/Makefile
# monit/pkg-descr
# monit/distinfo
# monit/pkg-message
# monit/files
# monit/files/monit.sh
#
echo c - monit
mkdir -p monit > /dev/null 2>&1
echo x - monit/Makefile
sed 's/^X//' >monit/Makefile << 'END-of-monit/Makefile'
X# New ports collection makefile for: monit
X# Date created: 4 Januar 2005
X# Whom: Martin Pala <martinp at tildeslash.com>
X#
X# $FreeBSD$
X#
X
XPORTNAME= monit
XPORTVERSION= 4.4
XCATEGORIES= sysutils
XMASTER_SITES= http://www.tildeslash.com/monit/dist/
X
XMAINTAINER= martinp at tildeslash.com
XCOMMENT= Unix system management and monitoring
X
XMAN1= monit.1
X
XGNU_CONFIGURE= yes
XUSE_GMAKE= yes
XUSE_BISON= yes
XUSE_RC_SUBR= yes
X
XCONFIGURE_ENV= CC="${CC}" CPPFLAGS="${CPPFLAGS}" \
X CFLAGS="${CFLAGS}" \
X LDFLAGS="${LDFLAGS}" CONFIG_SHELL="${SH}" \
X LOCALBASE="${LOCALBASE}"
X
XOPTIONS= MONIT_SSL "Enable SSL support" on
X
XPLIST_FILES= bin/monit \
X etc/monitrc.sample \
X etc/rc.d/monit.sh \
X share/doc/monit/CHANGES.txt \
X share/doc/monit/CONTRIBUTORS \
X share/doc/monit/FAQ.txt \
X share/doc/monit/LICENSE \
X share/doc/monit/README \
X share/doc/monit/README.SSL \
X share/doc/monit/STATUS \
X share/doc/monit/examples.html \
X share/doc/monit/monit.html
XPLIST_DIRS= share/doc/monit
X
X.include <bsd.port.pre.mk>
X
Xpre-install:
X @${SED} -e 's|%%PREFIX%%|${PREFIX}|g' \
X -e 's|%%RC_SUBR%%|${RC_SUBR}|g' \
X ${FILESDIR}/monit.sh > ${WRKDIR}/monit.sh
X
Xpost-install:
X @${INSTALL_SCRIPT} -m 755 ${WRKDIR}/monit.sh ${PREFIX}/etc/rc.d/monit.sh
X @${INSTALL_SCRIPT} -m 600 ${WRKDIR}/${DISTNAME}/monitrc ${PREFIX}/etc/monitrc.sample
X ${MKDIR} ${DOCSDIR}
X @${INSTALL_SCRIPT} -m 644 ${WRKDIR}/${DISTNAME}/CHANGES.txt ${PREFIX}/share/doc/monit/CHANGES.txt
X @${INSTALL_SCRIPT} -m 644 ${WRKDIR}/${DISTNAME}/CONTRIBUTORS ${PREFIX}/share/doc/monit/CONTRIBUTORS
X @${INSTALL_SCRIPT} -m 644 ${WRKDIR}/${DISTNAME}/FAQ.txt ${PREFIX}/share/doc/monit/FAQ.txt
X @${INSTALL_SCRIPT} -m 644 ${WRKDIR}/${DISTNAME}/LICENSE ${PREFIX}/share/doc/monit/LICENSE
X @${INSTALL_SCRIPT} -m 644 ${WRKDIR}/${DISTNAME}/README ${PREFIX}/share/doc/monit/README
X @${INSTALL_SCRIPT} -m 644 ${WRKDIR}/${DISTNAME}/README.SSL ${PREFIX}/share/doc/monit/README.SSL
X @${INSTALL_SCRIPT} -m 644 ${WRKDIR}/${DISTNAME}/STATUS ${PREFIX}/share/doc/monit/STATUS
X @${INSTALL_SCRIPT} -m 644 ${WRKDIR}/${DISTNAME}/doc/examples.html ${PREFIX}/share/doc/monit/examples.html
X @${INSTALL_SCRIPT} -m 644 ${WRKDIR}/${DISTNAME}/doc/monit.html ${PREFIX}/share/doc/monit/monit.html
X @${CAT} ${PKGMESSAGE}
X @${ECHO_MSG} " ${PREFIX}/etc/monitrc.sample"
X @${ECHO_MSG} " ${PREFIX}/share/doc/monit/examples.html"
X
X.if defined(WITH_MONIT_SSL)
X.include "${PORTSDIR}/Mk/bsd.openssl.mk"
XCONFIGURE_ARGS+= --enable-ssl \
X --with-openssl="${OPENSSLBASE}"
X.else
XCONFIGURE_ARGS+= --without-ssl
X.endif
X
X.include <bsd.port.post.mk>
END-of-monit/Makefile
echo x - monit/pkg-descr
sed 's/^X//' >monit/pkg-descr << 'END-of-monit/pkg-descr'
XMonit is a utility for managing and monitoring processes,
Xfiles, directories, devices and network services on a Unix system.
XMonit conducts automatic maintenance and repair and can execute
Xmeaningful causal actions in error situations.
X
Xmonit supports:
X * Daemon mode - poll services at a specified interval
X * Group and manage groups of services, service dependencies
X * Logging - syslog or own logfile
X * Alert, start, stop and restart of services based on it's characteristics
X * MD5 and SHA1 checksums
X * Runtime Unix socket and TCP/IP port checking (tcp and udp)
X * Process status, timeout, memory and cpu usage, etc.
X * Device usage monitoring (inodes and space)
X * File monitoring (timestamp, checksum, permission, owner, etc.)
X * Directory monitoring (timestamp, permission, owner, etc.)
X * Remote network services monitoring (ping, response time, protocol, etc.)
X * System load average monitoring
X * Flexible and customizable email alert messages and notifications
X * Protocol verification such as HTTP, FTP, SMTP, POP, IMAP, NNTP, etc.
X * A HTTP interface with XML output option
X and many more features :)
X
XWWW: http://www.tildeslash.com/monit/
END-of-monit/pkg-descr
echo x - monit/distinfo
sed 's/^X//' >monit/distinfo << 'END-of-monit/distinfo'
XMD5 (monit-4.4.tar.gz) = 671e1882ae342118a2138a3468589967
XSIZE (monit-4.4.tar.gz) = 458083
END-of-monit/distinfo
echo x - monit/pkg-message
sed 's/^X//' >monit/pkg-message << 'END-of-monit/pkg-message'
X===> USAGE:
X To enable monit you need to add monit_enable="YES" to rc.conf file.
X Before running monit you have to configure monitrc file. There is
X example configuration file monitrc.sample, you can find many
X samples for particular services in examples.html:
END-of-monit/pkg-message
echo c - monit/files
mkdir -p monit/files > /dev/null 2>&1
echo x - monit/files/monit.sh
sed 's/^X//' >monit/files/monit.sh << 'END-of-monit/files/monit.sh'
X#!/bin/sh
X#
X# $FreeBSD$
X#
X
X# PROVIDE: monit
X# REQUIRE: NETWORKING SERVERS
X# BEFORE: DAEMON
X# KEYWORD: shutdown
X
X#
X# Add the following lines to /etc/rc.conf to enable monit:
X# monit_enable (bool): Set to "NO" by default.
X# Set it to "YES" to enable monit
X#
X. %%RC_SUBR%%
X
Xname="monit"
Xrcvar=`set_rcvar`
X
Xrestart_precmd="monit_checkconfig"
Xreload_precmd="monit_checkconfig"
Xstop_cmd="monit_stop"
X
Xdefault_config=%%PREFIX%%/etc/monitrc
Xrequired_files=${default_config}
Xcommand="%%PREFIX%%/bin/monit"
Xcommand_args="-c ${default_config}"
Xpidfile="/var/run/monit.pid"
X
X[ -z "$monit_enable" ] && monit_enable="NO"
X
Xload_rc_config $name
X
Xmonit_checkconfig()
X{
X echo "Performing sanity check on monit configuration:"
X ${command} ${command_args} -t
X}
X
Xmonit_stop() {
X ${command} ${command_args} quit
X run_rc_command poll
X}
X
Xextra_commands="reload"
Xrun_rc_command "$1"
END-of-monit/files/monit.sh
exit
--- monit.shar ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list