mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-15 07:56:36 +00:00
- new port sysutils/monitorix
PR: 146776 Submitted by: Michael Brune <admin _at_ mjbrune.org> Approved by: glarkin (mentor) Monitorix is a free, open source, lightweight system monitoring tool designed to monitorize as many services as possible. At this time it monitors from the CPU load and temperatures to the users using the system. Network devices activity, network services demand and even the devices' interrupt activity are also monitored, and more. The current status of any corporate server with Monitorix installed can be accessed via a web browser. WWW: http://www.monitorix.org/
This commit is contained in:
parent
ccdce2424e
commit
f66d15ef05
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=259517
@ -499,6 +499,7 @@
|
||||
SUBDIR += modules
|
||||
SUBDIR += monit
|
||||
SUBDIR += monitord
|
||||
SUBDIR += monitorix
|
||||
SUBDIR += monkeytail
|
||||
SUBDIR += mono-kmod
|
||||
SUBDIR += moosefs-chunkserver
|
||||
|
123
sysutils/monitorix/Makefile
Normal file
123
sysutils/monitorix/Makefile
Normal file
@ -0,0 +1,123 @@
|
||||
# New ports collection makefile for: monitorix
|
||||
# Date created: 15 Aug 2010
|
||||
# Whom: Olli Hauer <ohauer@FreeBSD.org>
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
PORTNAME= monitorix
|
||||
PORTVERSION= 1.5.1
|
||||
CATEGORIES= sysutils
|
||||
MASTER_SITES= http://monitorix.org/
|
||||
|
||||
MAINTAINER= admin@mjbrune.org
|
||||
COMMENT= A web based monitoring system
|
||||
|
||||
LIB_DEPENDS= rrd:${PORTSDIR}/databases/rrdtool
|
||||
BUILD_DEPENDS= ${SITE_PERL}/LWP/Parallel.pm:${PORTSDIR}/www/p5-ParallelUA
|
||||
|
||||
LICENSE= GPLv2
|
||||
|
||||
OPTIONS= REPORTS "Mail HTML reports to a given address" off
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
MAN5= monitorix.conf.5
|
||||
MANCOMPRESSED= no
|
||||
NO_BUILD= yes
|
||||
|
||||
CGIDIR?= ${PREFIX}/www/cgi-bin
|
||||
#REPORTS?= true
|
||||
# owner of $WWWROOT/imgs
|
||||
WWW_OWNER?= ${WWWOWN}
|
||||
WWW_GROUP?= ${WWWGRP}
|
||||
DATADIR= ${INSTDIR}
|
||||
REPORT_LANG= ca de en it
|
||||
INSTDIR= ${PREFIX}/${PORTNAME}
|
||||
# WWWROOT: (WWWDIR - portname), we need the resulting path for a variable in monitorix.conf
|
||||
WWWROOT= ${WWWDIR:S,${PORTNAME},,}
|
||||
|
||||
SUB_FILES= pkg-message
|
||||
SUB_LIST= PERL=${PERL} INSTDIR=${INSTDIR}
|
||||
PLIST_SUB+= CGIDIR=${CGIDIR:S,${PREFIX}/,,} WWW_OWNER=${WWW_OWNER} WWW_GROUP=${WWW_GROUP}
|
||||
|
||||
WWW_FILES= logo_top.png logo_bot.png monitorixico.png
|
||||
DOCS= COPYING Changes README README.FreeBSD README.nginx TODO \
|
||||
monitorix-alert.sh monitorix-apache.conf
|
||||
REPORT_FILES= imgs_email/blank.png imgs_email/logo.jpg imgs_email/signature.png \
|
||||
imgs_email/title.jpg traffic_report.html traffic_report.sh
|
||||
|
||||
.if defined(WITH_REPORTS)
|
||||
RUN_DEPENDS+= metamail>=2.7:${PORTSDIR}/mail/metamail
|
||||
PLIST_SUB+= REPORTS=""
|
||||
.else
|
||||
PLIST_SUB+= REPORTS="@comment "
|
||||
.endif
|
||||
|
||||
pre-everything::
|
||||
@${ECHO_MSG} ""
|
||||
@${ECHO_MSG} "You may set following options:"
|
||||
@${ECHO_MSG} ""
|
||||
@${ECHO_MSG} "DATADIR=${DATADIR} Where do you put RRD databases?"
|
||||
@${ECHO_MSG} "CGIDIR=${CGIDIR} Where do you put cgi?"
|
||||
@${ECHO_MSG} "WWWDIR=${WWWDIR} Where do you put httpd's document root?"
|
||||
@${ECHO_MSG} ""
|
||||
|
||||
post-patch:
|
||||
.for f in cgi conf pl
|
||||
@${REINPLACE_CMD} -e "s|/usr/bin/perl|${PERL}|" ${WRKSRC}/monitorix.${f}
|
||||
.endfor
|
||||
# Notes about the adjustments for default configuration:
|
||||
# - set FreeBSD as OSTYPE
|
||||
# - set a generic WWWROOT, since we can include it in the webserver config
|
||||
# - milter-greylist use a new database path on FreeBSD
|
||||
# - FreeBSD's interface name came from the NIC, the lo0 interface is almost everytime present
|
||||
# - file/directory handling outside ${PREFIX} with ports is silly. We don't want to rewrite
|
||||
# monitorix.pl therefore we use ${PREFIX} instead /var/db/!
|
||||
@${REINPLACE_CMD} -e 's|our \$$OSTYPE = \"Linux-RHFC\"|our \$$OSTYPE = \"FreeBSD\"|' \
|
||||
-e "s|/usr/local/www/apache22/data|${WWWROOT}|" \
|
||||
-e "s|/var/lib/milter-greylist/db/greylist.db|/var/milter-greylist/greylist.db|" \
|
||||
-e "s|eth0|lo0|g" -e "s|/var/db/monitorix/|${INSTDIR}/|" \
|
||||
-e "s|%%INSTDIR%%|${INSTDIR}|g" ${WRKSRC}/monitorix.conf
|
||||
.for d in ${REPORT_LANG}
|
||||
@${REINPLACE_CMD} -e "s|^rm|${RM}|g" -e "s|/bin/sed|${SED}|g" \
|
||||
-e "s|/usr/bin/metasend|${PREFIX}/bin/metasend|g" \
|
||||
-e "s|\"tmp|\"/tmp/${PORTNAME}_report|g" ${WRKSRC}/reports/${d}/traffic_report.sh
|
||||
.endfor
|
||||
|
||||
do-install:
|
||||
@${INSTALL_SCRIPT} ${WRKSRC}/monitorix.pl ${PREFIX}/sbin/
|
||||
@${MKDIR} ${WWWDIR}/imgs
|
||||
@${CHOWN} ${WWW_OWNER}:${WWW_GROUP} ${WWWDIR}/imgs
|
||||
@for f in ${WWW_FILES}; do \
|
||||
${INSTALL_DATA} ${WRKSRC}/$${f} ${WWWDIR}/; \
|
||||
done
|
||||
@${MKDIR} ${CGIDIR}
|
||||
@${INSTALL_SCRIPT} ${WRKSRC}/monitorix.cgi ${CGIDIR}/
|
||||
.for m in ${MAN5}
|
||||
@${INSTALL_MAN} ${WRKSRC}/man/man5/$m ${PREFIX}/man/man5/
|
||||
.endfor
|
||||
.if defined(WITH_REPORTS)
|
||||
. for l in ${REPORT_LANG}
|
||||
@${MKDIR} ${PREFIX}/${PORTNAME}/reports/${l}/imgs_email
|
||||
. for f in ${REPORT_FILES}
|
||||
@${INSTALL_DATA} ${WRKSRC}/reports/${l}/${f} ${PREFIX}/${PORTNAME}/reports/${l}/${f}
|
||||
. endfor
|
||||
. endfor
|
||||
.endif
|
||||
.if !defined(NOPORTDOCS)
|
||||
@${MKDIR} ${DOCSDIR}
|
||||
@for doc in ${DOCS}; do \
|
||||
${INSTALL_DATA} ${WRKSRC}/$${doc} ${DOCSDIR}; \
|
||||
done
|
||||
.endif
|
||||
|
||||
post-install:
|
||||
@${INSTALL_DATA} ${WRKSRC}/monitorix.conf ${PREFIX}/etc/monitorix.conf.sample
|
||||
@if [ ! -f ${PREFIX}/etc/monitorix.conf ]; then \
|
||||
${CP} -p ${PREFIX}/etc/monitorix.conf.sample ${PREFIX}/etc/monitorix.conf ; \
|
||||
fi
|
||||
@${MKDIR} ${DATADIR}/usage
|
||||
@${CAT} ${PKGMESSAGE}
|
||||
|
||||
.include <bsd.port.mk>
|
3
sysutils/monitorix/distinfo
Normal file
3
sysutils/monitorix/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
MD5 (monitorix-1.5.1.tar.gz) = 982f20acfac8d2b175d61a4e3defb641
|
||||
SHA256 (monitorix-1.5.1.tar.gz) = e3bb853209e6fc56a883b34ab3a0395d3db0a8c512d87b40b6420620b102252b
|
||||
SIZE (monitorix-1.5.1.tar.gz) = 141695
|
37
sysutils/monitorix/files/monitorix.in
Normal file
37
sysutils/monitorix/files/monitorix.in
Normal file
@ -0,0 +1,37 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# @(#) Fibranet NSP, SL
|
||||
# Copyright (C) 2005-2010 by Jordi Sanfeliu <jordi@fibranet.cat>
|
||||
#
|
||||
# /usr/local/etc/rc.d/monitorix
|
||||
#
|
||||
# Starts Monitorix on FreeBSD systems
|
||||
#
|
||||
# PROVIDE: monitorix
|
||||
# REQUIRE: DAEMON
|
||||
# BEFORE: LOGIN
|
||||
# KEYWORD: FreeBSD shutdown
|
||||
|
||||
monitorix_enable=${monitorix_enable:-"NO"}
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name="monitorix"
|
||||
rcvar=`set_rcvar`
|
||||
command_interpreter=%%PERL%%
|
||||
start_cmd=monitorix_start
|
||||
stop_cmd=monitorix_stop
|
||||
|
||||
monitorix_start()
|
||||
{ # Creates RRDs files (if needed)
|
||||
%%PREFIX%%/sbin/monitorix.pl create
|
||||
%%PREFIX%%/sbin/monitorix.pl init
|
||||
}
|
||||
|
||||
monitorix_stop()
|
||||
{
|
||||
%%PREFIX%%/sbin/monitorix.pl stop
|
||||
}
|
||||
|
||||
load_rc_config $name
|
||||
run_rc_command "$1"
|
65
sysutils/monitorix/files/patch-monitorix.pl
Normal file
65
sysutils/monitorix/files/patch-monitorix.pl
Normal file
@ -0,0 +1,65 @@
|
||||
--- ./monitorix.pl.orig 2010-06-21 10:54:38.000000000 +0200
|
||||
+++ ./monitorix.pl 2010-08-15 20:20:34.000000000 +0200
|
||||
@@ -733,20 +733,25 @@
|
||||
if($ENABLE_CROND_MAIL ne "Y") {
|
||||
$mailto = "MAILTO=\"\"";
|
||||
}
|
||||
- open(OCRON, "> $O_CRON");
|
||||
- print OCRON <<EOF;
|
||||
-# @(#) Fibranet NSP, SL
|
||||
-# Copyright (C) 2005-2010 by Jordi Sanfeliu <jordi\@fibranet.cat>
|
||||
-#
|
||||
-PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
-$mailto
|
||||
+# FreeBSD:
|
||||
+# The crontab replacment was removed for the port,
|
||||
+# we can not risc the damage of existing crontabs!
|
||||
+ print <<EOF;
|
||||
+ ===========================================================================
|
||||
+ To prevent replacement of the root crontab this
|
||||
+ function is disabled in the FreeBSD port!
|
||||
|
||||
-* * * * * $crontabuser $PATH_BIN{$OSTYPE} update
|
||||
-00 00 * * * $crontabuser $PATH_BIN{$OSTYPE} collect
|
||||
-01 00 1 * * $crontabuser $PATH_BIN{$OSTYPE} report
|
||||
+ Please place the following entries in the root crontab
|
||||
+ or /etc/crontab manually!
|
||||
+
|
||||
+ $mailto
|
||||
+ * * * * * $PATH_BIN{$OSTYPE} update
|
||||
+ 00 00 * * * $PATH_BIN{$OSTYPE} collect
|
||||
+ 01 00 1 * * $PATH_BIN{$OSTYPE} report
|
||||
+
|
||||
+ ===========================================================================
|
||||
|
||||
EOF
|
||||
- close(OCRON);
|
||||
|
||||
if($THEME_COLOR eq "black") {
|
||||
$bgcolor = "#000000";
|
||||
@@ -1053,7 +1058,24 @@
|
||||
unlink($PATH_CRON{$OSTYPE});
|
||||
unlink($PATH_CRON{$OSTYPE} . ".sh"); # old name
|
||||
} elsif($OSTYPE eq "FreeBSD") {
|
||||
- system("echo 'y' | crontab -u root -r");
|
||||
+# FreeBSD:
|
||||
+# The crontab replacment was removed for the port,
|
||||
+# we can not risc the damage of existing crontabs!
|
||||
+ print <<EOF;
|
||||
+
|
||||
+ ========================================================================
|
||||
+ To prevent deletion of the root crontab this function has been disabled!
|
||||
+
|
||||
+ Please remove the following entries from the root crontab or from
|
||||
+ /etc/crontab manually!
|
||||
+
|
||||
+ * * * * * $PATH_BIN{$OSTYPE} update
|
||||
+ 00 00 * * * $PATH_BIN{$OSTYPE} collect
|
||||
+ 01 00 1 * * $PATH_BIN{$OSTYPE} report
|
||||
+
|
||||
+ ========================================================================
|
||||
+
|
||||
+EOF
|
||||
}
|
||||
}
|
||||
|
16
sysutils/monitorix/files/pkg-message.in
Normal file
16
sysutils/monitorix/files/pkg-message.in
Normal file
@ -0,0 +1,16 @@
|
||||
================================================================
|
||||
|
||||
The port has a generic default config, please adjust your
|
||||
settings in file: %%PREFIX%%/etc/monitorix.conf
|
||||
|
||||
To initialize monitorix follow this steps
|
||||
%%PREFIX%%/sbin/monitorix.pl create
|
||||
|
||||
Then place the following entries into root crontab:
|
||||
---------------------------------------------------
|
||||
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
|
||||
* * * * * %%PREFIX%%/sbin/monitorix.pl update
|
||||
00 00 * * * %%PREFIX%%/sbin/monitorix.pl collect
|
||||
01 00 1 * * %%PREFIX%%/sbin/monitorix.pl report
|
||||
|
||||
================================================================
|
8
sysutils/monitorix/pkg-descr
Normal file
8
sysutils/monitorix/pkg-descr
Normal file
@ -0,0 +1,8 @@
|
||||
Monitorix is a free, open source, lightweight system monitoring tool
|
||||
designed to monitorize as many services as possible. At this time it
|
||||
monitors from the CPU load and temperatures to the users using the system.
|
||||
Network devices activity, network services demand and even the devices'
|
||||
interrupt activity are also monitored, and more. The current status of any
|
||||
corporate server with Monitorix installed can be accessed via a web browser.
|
||||
|
||||
WWW: http://www.monitorix.org/
|
58
sysutils/monitorix/pkg-plist
Normal file
58
sysutils/monitorix/pkg-plist
Normal file
@ -0,0 +1,58 @@
|
||||
@exec mkdir -p /var/db/monitorix/usage
|
||||
@exec mkdir -p %D/%%WWWDIR%%/imgs
|
||||
@exec chown %%WWW_OWNER%%:%%WWW_GROUP%% %D/%%WWWDIR%%/imgs
|
||||
@unexec if cmp -s %D/etc/monitorix.conf %D/etc/monitorix.conf.sample; then rm -f %D/etc/monitorix.conf; fi
|
||||
etc/monitorix.conf.sample
|
||||
@exec if [ ! -f %D/etc/monitorix.conf ]; then cp %B/%f %D/etc/monitorix.conf; fi
|
||||
sbin/monitorix.pl
|
||||
%%CGIDIR%%/monitorix.cgi
|
||||
@dirrmtry %%CGIDIR%%
|
||||
%%PORTDOCS%%%%DOCSDIR%%/COPYING
|
||||
%%PORTDOCS%%%%DOCSDIR%%/Changes
|
||||
%%PORTDOCS%%%%DOCSDIR%%/README
|
||||
%%PORTDOCS%%%%DOCSDIR%%/README.FreeBSD
|
||||
%%PORTDOCS%%%%DOCSDIR%%/README.nginx
|
||||
%%PORTDOCS%%%%DOCSDIR%%/TODO
|
||||
%%PORTDOCS%%%%DOCSDIR%%/monitorix-alert.sh
|
||||
%%PORTDOCS%%%%DOCSDIR%%/monitorix-apache.conf
|
||||
%%PORTDOCS%%@dirrm %%DOCSDIR%%
|
||||
%%REPORTS%%monitorix/reports/ca/imgs_email/blank.png
|
||||
%%REPORTS%%monitorix/reports/ca/imgs_email/logo.jpg
|
||||
%%REPORTS%%monitorix/reports/ca/imgs_email/signature.png
|
||||
%%REPORTS%%monitorix/reports/ca/imgs_email/title.jpg
|
||||
%%REPORTS%%monitorix/reports/ca/traffic_report.html
|
||||
%%REPORTS%%monitorix/reports/ca/traffic_report.sh
|
||||
%%REPORTS%%monitorix/reports/de/imgs_email/blank.png
|
||||
%%REPORTS%%monitorix/reports/de/imgs_email/logo.jpg
|
||||
%%REPORTS%%monitorix/reports/de/imgs_email/signature.png
|
||||
%%REPORTS%%monitorix/reports/de/imgs_email/title.jpg
|
||||
%%REPORTS%%monitorix/reports/de/traffic_report.html
|
||||
%%REPORTS%%monitorix/reports/de/traffic_report.sh
|
||||
%%REPORTS%%monitorix/reports/en/imgs_email/blank.png
|
||||
%%REPORTS%%monitorix/reports/en/imgs_email/logo.jpg
|
||||
%%REPORTS%%monitorix/reports/en/imgs_email/signature.png
|
||||
%%REPORTS%%monitorix/reports/en/imgs_email/title.jpg
|
||||
%%REPORTS%%monitorix/reports/en/traffic_report.html
|
||||
%%REPORTS%%monitorix/reports/en/traffic_report.sh
|
||||
%%REPORTS%%monitorix/reports/it/imgs_email/blank.png
|
||||
%%REPORTS%%monitorix/reports/it/imgs_email/logo.jpg
|
||||
%%REPORTS%%monitorix/reports/it/imgs_email/signature.png
|
||||
%%REPORTS%%monitorix/reports/it/imgs_email/title.jpg
|
||||
%%REPORTS%%monitorix/reports/it/traffic_report.html
|
||||
%%REPORTS%%monitorix/reports/it/traffic_report.sh
|
||||
%%REPORTS%%@dirrm monitorix/reports/it/imgs_email
|
||||
%%REPORTS%%@dirrm monitorix/reports/it
|
||||
%%REPORTS%%@dirrm monitorix/reports/en/imgs_email
|
||||
%%REPORTS%%@dirrm monitorix/reports/en
|
||||
%%REPORTS%%@dirrm monitorix/reports/de/imgs_email
|
||||
%%REPORTS%%@dirrm monitorix/reports/de
|
||||
%%REPORTS%%@dirrm monitorix/reports/ca/imgs_email
|
||||
%%REPORTS%%@dirrm monitorix/reports/ca
|
||||
%%REPORTS%%@dirrm monitorix/reports
|
||||
@dirrmtry monitorix/usage
|
||||
@dirrmtry monitorix
|
||||
%%WWWDIR%%/logo_bot.png
|
||||
%%WWWDIR%%/logo_top.png
|
||||
%%WWWDIR%%/monitorixico.png
|
||||
@dirrmtry %%WWWDIR%%/imgs
|
||||
@dirrmtry %%WWWDIR%%
|
Loading…
Reference in New Issue
Block a user