aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www/Makefile1
-rw-r--r--www/nginx-vts-exporter/Makefile54
-rw-r--r--www/nginx-vts-exporter/distinfo3
-rw-r--r--www/nginx-vts-exporter/files/newsyslog.conf.in4
-rw-r--r--www/nginx-vts-exporter/files/nginx_vts_exporter.in52
-rw-r--r--www/nginx-vts-exporter/files/syslog.d.conf.in6
-rw-r--r--www/nginx-vts-exporter/pkg-descr4
-rw-r--r--www/nginx-vts-exporter/pkg-message13
8 files changed, 137 insertions, 0 deletions
diff --git a/www/Makefile b/www/Makefile
index d5421ff07100..c3d08c99f12d 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -453,6 +453,7 @@
SUBDIR += nginx-lite
SUBDIR += nginx-naxsi
SUBDIR += nginx-prometheus-exporter
+ SUBDIR += nginx-vts-exporter
SUBDIR += nibbleblog
SUBDIR += nift
SUBDIR += node
diff --git a/www/nginx-vts-exporter/Makefile b/www/nginx-vts-exporter/Makefile
new file mode 100644
index 000000000000..b860ee61914e
--- /dev/null
+++ b/www/nginx-vts-exporter/Makefile
@@ -0,0 +1,54 @@
+# $FreeBSD$
+
+PORTNAME= nginx-vts-exporter
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.10.3
+CATEGORIES= www
+
+MAINTAINER= joneum@FreeBSD.org
+COMMENT= Server that scraps NGINX vts stats and export them via HTTP
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= gmake go
+USE_RC_SUBR= nginx_vts_exporter
+USE_GITHUB= yes
+GH_ACCOUNT= hnlq715
+
+GO_BUILDFLAGS= -v -ldflags "${LD_FLAG_STRING}"
+
+SUB_FILES= newsyslog.conf nginx_vts_exporter syslog.d.conf
+
+SUB_LIST= NGINX_VTS_EXPORTER_LOG_FILE=/var/log/nginx_vts_exporter \
+ NGINX_VTS_EXPORTER_LOG_TAG=nginx_vts_exporter
+
+BUILD_USER?= ${USER}
+LD_FLAG_X_PREFIX= -X ${GO_PKGNAME}/vendor/github.com/prometheus/common/version
+LD_FLAG_STRING= -s \
+ ${LD_FLAG_X_PREFIX}.Branch=release-${PORTVERSION:R} \
+ ${LD_FLAG_X_PREFIX}.BuildUser=${BUILD_USER} \
+ ${LD_FLAG_X_PREFIX}.Revision=${PORTREVISION} \
+ ${LD_FLAG_X_PREFIX}.Version=${PORTVERSION}
+
+PLIST_FILES= bin/nginx_vts_exporter \
+ etc/newsyslog.conf.d/nginx-vts-exporter.conf \
+ etc/syslog.d/nginx-vts-exporter.conf
+
+do-install:
+ ${INSTALL_PROGRAM} \
+ ${GO_WRKDIR_BIN}/${PORTNAME} \
+ ${STAGEDIR}${PREFIX}/bin/nginx_vts_exporter
+
+ ${MKDIR} ${STAGEDIR}${PREFIX}/etc/newsyslog.conf.d
+ ${MKDIR} ${STAGEDIR}${PREFIX}/etc/syslog.d
+
+ ${INSTALL_DATA} \
+ ${WRKDIR}/newsyslog.conf \
+ ${STAGEDIR}${PREFIX}/etc/newsyslog.conf.d/${PORTNAME}.conf
+
+ ${INSTALL_DATA} \
+ ${WRKDIR}/syslog.d.conf \
+ ${STAGEDIR}${PREFIX}/etc/syslog.d/${PORTNAME}.conf
+
+.include <bsd.port.mk>
diff --git a/www/nginx-vts-exporter/distinfo b/www/nginx-vts-exporter/distinfo
new file mode 100644
index 000000000000..90510c85c07c
--- /dev/null
+++ b/www/nginx-vts-exporter/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1575626942
+SHA256 (hnlq715-nginx-vts-exporter-v0.10.3_GH0.tar.gz) = a07e0a6170ac490f96a8e505795dcbfa0233976cf1efd36057014cff49622d95
+SIZE (hnlq715-nginx-vts-exporter-v0.10.3_GH0.tar.gz) = 149578
diff --git a/www/nginx-vts-exporter/files/newsyslog.conf.in b/www/nginx-vts-exporter/files/newsyslog.conf.in
new file mode 100644
index 000000000000..8370fbeeed72
--- /dev/null
+++ b/www/nginx-vts-exporter/files/newsyslog.conf.in
@@ -0,0 +1,4 @@
+# newsyslog(8) file for net-mgmt/nginx-vts-exporter
+# See newsyslog.conf(5) for details.
+
+%%NGINX_VTS_EXPORTER_LOG_FILE%% 640 7 * @T00 JC
diff --git a/www/nginx-vts-exporter/files/nginx_vts_exporter.in b/www/nginx-vts-exporter/files/nginx_vts_exporter.in
new file mode 100644
index 000000000000..735d89ed61be
--- /dev/null
+++ b/www/nginx-vts-exporter/files/nginx_vts_exporter.in
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+# PROVIDE: nginx_vts_exporter
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
+# to enable this service:
+#
+# nginx_vts_exporter_enable (bool): Set to NO by default
+# Set it to YES to enable nginx-vts-exporter
+# nginx_vts_exporter_user (string): Set user to run nginx-vts-exporter
+# Default is "nobody"
+# nginx_vts_exporter_group (string): Set group to run nginx-vts-exporter
+# Default is "nobody"
+# nginx_vts_exporter_args (string): Set additional command line arguments
+# Default is ""
+#
+
+. /etc/rc.subr
+
+name=nginx_vts_exporter
+rcvar=nginx_vts_exporter_enable
+
+load_rc_config $name
+
+: ${nginx_vts_exporter_enable:="NO"}
+: ${nginx_vts_exporter_user:="nobody"}
+: ${nginx_vts_exporter_group:="nobody"}
+: ${nginx_vts_exporter_args:=""}
+
+pidfile="/var/run/${name}.pid"
+command="/usr/sbin/daemon"
+procname="%%PREFIX%%/bin/${name}"
+command_args="-p ${pidfile} -m 3 -T ${name} \
+ /usr/bin/env ${procname} \
+ ${nginx_vts_exporter_args}"
+
+start_precmd=nginx_vts_exporter_startprecmd
+
+nginx_vts_exporter_startprecmd()
+{
+ if [ ! -e ${pidfile} ]; then
+ install \
+ -o ${nginx_vts_exporter_user} \
+ -g ${nginx_vts_exporter_group} \
+ /dev/null ${pidfile};
+ fi
+}
+
+load_rc_config $name
+run_rc_command "$1"
diff --git a/www/nginx-vts-exporter/files/syslog.d.conf.in b/www/nginx-vts-exporter/files/syslog.d.conf.in
new file mode 100644
index 000000000000..3319a1075a67
--- /dev/null
+++ b/www/nginx-vts-exporter/files/syslog.d.conf.in
@@ -0,0 +1,6 @@
+# syslogd(8) configuration file for net-mgmt/nginx-vts-exporter
+#
+# See syslog.conf(5) for details.
+
+!%%NGINX_VTS_EXPORTER_LOG_TAG%%
+daemon.* %%NGINX_VTS_EXPORTER_LOG_FILE%%
diff --git a/www/nginx-vts-exporter/pkg-descr b/www/nginx-vts-exporter/pkg-descr
new file mode 100644
index 000000000000..879bb1c077e3
--- /dev/null
+++ b/www/nginx-vts-exporter/pkg-descr
@@ -0,0 +1,4 @@
+Simple server that scrapes Nginx vts stats and exports
+them via HTTP for Prometheus consumption.
+
+WWW: https://github.com/hnlq715/nginx-vts-exporter
diff --git a/www/nginx-vts-exporter/pkg-message b/www/nginx-vts-exporter/pkg-message
new file mode 100644
index 000000000000..0dd856a7cfba
--- /dev/null
+++ b/www/nginx-vts-exporter/pkg-message
@@ -0,0 +1,13 @@
+[
+{ type: install
+ message: <<EOM
+nginx-vts-exporter was successfully installed.
+
+By default the exporter is passed no arguments and runs with its own defaults,
+this means it expects to find Nginx VTS status at http://localhost/status.
+
+You may wish to reconfigure this by setting:
+nginx_vts_exporter_args="-nginx.scrape_uri http://nginx/status/url"
+EOM
+}
+]