diff options
author | Ryan Steinmetz <zi@FreeBSD.org> | 2019-10-17 18:37:57 +0000 |
---|---|---|
committer | Ryan Steinmetz <zi@FreeBSD.org> | 2019-10-17 18:37:57 +0000 |
commit | 6e372d0bc788c8b8283be7019e44014652542864 (patch) | |
tree | b682ab4d83fc5b8909b2ef8a7ba71948e0830c70 /net-mgmt | |
parent | bf28561109bc1126bb12e7f55de1189d2c1a5ff4 (diff) | |
download | ports-6e372d0bc788c8b8283be7019e44014652542864.tar.gz ports-6e372d0bc788c8b8283be7019e44014652542864.zip |
Notes
Diffstat (limited to 'net-mgmt')
-rw-r--r-- | net-mgmt/Makefile | 1 | ||||
-rw-r--r-- | net-mgmt/ping_exporter/Makefile | 25 | ||||
-rw-r--r-- | net-mgmt/ping_exporter/distinfo | 3 | ||||
-rw-r--r-- | net-mgmt/ping_exporter/files/ping_exporter.in | 67 | ||||
-rw-r--r-- | net-mgmt/ping_exporter/files/ping_exporter.yml.sample | 14 | ||||
-rw-r--r-- | net-mgmt/ping_exporter/pkg-descr | 7 | ||||
-rw-r--r-- | net-mgmt/ping_exporter/pkg-plist | 2 |
7 files changed, 119 insertions, 0 deletions
diff --git a/net-mgmt/Makefile b/net-mgmt/Makefile index 663a2ac39915..d68dd3a4c24f 100644 --- a/net-mgmt/Makefile +++ b/net-mgmt/Makefile @@ -289,6 +289,7 @@ SUBDIR += php74-snmp SUBDIR += phpipam SUBDIR += phpweathermap + SUBDIR += ping_exporter SUBDIR += pktstat SUBDIR += pmacct SUBDIR += pnp diff --git a/net-mgmt/ping_exporter/Makefile b/net-mgmt/ping_exporter/Makefile new file mode 100644 index 000000000000..8ce27600181e --- /dev/null +++ b/net-mgmt/ping_exporter/Makefile @@ -0,0 +1,25 @@ +# $FreeBSD$ + +PORTNAME= ping_exporter +DISTVERSION= 0.44 +CATEGORIES= net-mgmt + +MAINTAINER= jp+ports@supplntr.io +COMMENT= Prometheus exporter for ICMP echo requests + +LICENSE= APACHE20 + +USES= go +USE_GITHUB= yes +GH_ACCOUNT= czerwonk + +GO_PKGNAME= github.com/${GH_ACCOUNT}/${PORTNAME} +GO_TARGET= github.com/${GH_ACCOUNT}/${PORTNAME} + +USE_RC_SUBR= ping_exporter + +post-install: + ${INSTALL_DATA} ${PATCHDIR}/ping_exporter.yml.sample \ + ${STAGEDIR}${PREFIX}/etc/ping_exporter.yml.sample + +.include <bsd.port.mk> diff --git a/net-mgmt/ping_exporter/distinfo b/net-mgmt/ping_exporter/distinfo new file mode 100644 index 000000000000..5847d67e86c4 --- /dev/null +++ b/net-mgmt/ping_exporter/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1571270240 +SHA256 (czerwonk-ping_exporter-0.44_GH0.tar.gz) = 03d0c825fdb8d3c8701743897726ad7960879211238135363879161bbdcd06a7 +SIZE (czerwonk-ping_exporter-0.44_GH0.tar.gz) = 4595291 diff --git a/net-mgmt/ping_exporter/files/ping_exporter.in b/net-mgmt/ping_exporter/files/ping_exporter.in new file mode 100644 index 000000000000..0ca732b5c2a0 --- /dev/null +++ b/net-mgmt/ping_exporter/files/ping_exporter.in @@ -0,0 +1,67 @@ +#!/bin/sh + +# $FreeBSD$ +# +# PROVIDE: ping_exporter +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# ping_exporter_enable (bool): Set to NO by default. +# Set it to YES to enable ping_exporter. +# ping_exporter_user (string): Set user that ping_exporter will run under +# Default is "nobody". +# ping_exporter_group (string): Set group that ping_exporter will run under +# Default is "nobody". +# ping_exporter_args (string): Set extra arguments to pass to ping_exporter +# Default is "". +# ping_exporter_listen_address (string):Set ip:port that ping_exporter will listen on +# Default is "localhost:9427". +# ping_exporter_config (string): Set configuration file of ping_exporter +# Default is "%%PREFIX%%/etc/ping_exporter.yml". +# ping_exporter_log_file (string): Set log file of ping_exporter +# Default is "/var/log/ping_exporter.log". + +. /etc/rc.subr + +name=ping_exporter +desc="Ping exporter for use with Prometheus" +rcvar=ping_exporter_enable + +load_rc_config $name + +: ${ping_exporter_enable:=NO} +: ${ping_exporter_user:=nobody} +: ${ping_exporter_group:=nobody} +: ${ping_exporter_listen_address=localhost:9427} +: ${ping_exporter_config="%%PREFIX%%/etc/ping_exporter.yml"} +: ${ping_exporter_log_file=/var/log/ping_exporter.log} + +required_files="${ping_exporter_config}" +pidfile=/var/run/ping_exporter.pid +command=/usr/sbin/daemon +procname="%%PREFIX%%/bin/ping_exporter" +command_args="-p ${pidfile} /usr/bin/env ${procname} \ + -web.listen-address ${ping_exporter_listen_address} \ + -config.path ${ping_exporter_config} \ + ${ping_exporter_args} >> ${ping_exporter_log_file} 2>&1" + +start_precmd=ping_exporter_startprecmd + +ping_exporter_startprecmd() +{ + if [ ! -e ${pidfile} ]; then + install -o ${ping_exporter_user} -g ${ping_exporter_group} /dev/null ${pidfile}; + else + chown ${ping_exporter_user}:${ping_exporter_group} ${pidfile}; + fi + if [ ! -e ${ping_exporter_log_file} ]; then + install -o ${ping_exporter_user} -g ${ping_exporter_group} -m 640 /dev/null ${ping_exporter_log_file}; + else + chown ${ping_exporter_user}:${ping_exporter_group} ${ping_exporter_log_file}; + fi +} + +run_rc_command "$1" diff --git a/net-mgmt/ping_exporter/files/ping_exporter.yml.sample b/net-mgmt/ping_exporter/files/ping_exporter.yml.sample new file mode 100644 index 000000000000..1350bef9d383 --- /dev/null +++ b/net-mgmt/ping_exporter/files/ping_exporter.yml.sample @@ -0,0 +1,14 @@ +targets: + - one.one.one.one + - google-public-dns-a.google.com + - google-public-dns-b.google.com + +dns: + refresh: 2m15s + nameserver: 1.1.1.1 + +ping: + interval: 2s + timeout: 3s + history-size: 42 + payload-size: 120 diff --git a/net-mgmt/ping_exporter/pkg-descr b/net-mgmt/ping_exporter/pkg-descr new file mode 100644 index 000000000000..2787c13eb823 --- /dev/null +++ b/net-mgmt/ping_exporter/pkg-descr @@ -0,0 +1,7 @@ +Prometheus exporter for ICMP echo requests. + +This is a simple server that scrapes go-ping stats and exports them via HTTP +for Prometheus consumption. The go-ping library is build and maintained by +Digineo GmbH. + +WWW: https://github.com/czerwonk/ping_exporter diff --git a/net-mgmt/ping_exporter/pkg-plist b/net-mgmt/ping_exporter/pkg-plist new file mode 100644 index 000000000000..9fbb35893e75 --- /dev/null +++ b/net-mgmt/ping_exporter/pkg-plist @@ -0,0 +1,2 @@ +bin/ping_exporter +@sample %%ETCDIR%%.yml.sample |