summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManuel Rüger <mrueg@gentoo.org>2018-03-30 19:05:52 +0200
committerManuel Rüger <mrueg@gentoo.org>2018-03-30 19:05:52 +0200
commit476e87a3d843681e868f4e73cb543bbb815691ad (patch)
tree1e729fdfdd8e88493688cbcce2e0edef4e08988f /app-metrics/pushgateway/files
parentapp-metrics/uwsgi_exporter: Move package from net-analyzer/prometheus-uwsgi_e... (diff)
downloadgentoo-476e87a3d843681e868f4e73cb543bbb815691ad.tar.gz
gentoo-476e87a3d843681e868f4e73cb543bbb815691ad.tar.bz2
gentoo-476e87a3d843681e868f4e73cb543bbb815691ad.zip
app-metrics/pushgateway: Move package from net-analyzer/prometheus-pushgateway
Diffstat (limited to 'app-metrics/pushgateway/files')
-rw-r--r--app-metrics/pushgateway/files/pushgateway.confd14
-rw-r--r--app-metrics/pushgateway/files/pushgateway.initd19
-rw-r--r--app-metrics/pushgateway/files/pushgateway.logrotated7
-rw-r--r--app-metrics/pushgateway/files/pushgateway.service16
4 files changed, 56 insertions, 0 deletions
diff --git a/app-metrics/pushgateway/files/pushgateway.confd b/app-metrics/pushgateway/files/pushgateway.confd
new file mode 100644
index 000000000000..de9ef483723f
--- /dev/null
+++ b/app-metrics/pushgateway/files/pushgateway.confd
@@ -0,0 +1,14 @@
+# -log.format value
+# If set use a syslog logger or JSON logging. Example: logger:syslog?appname=bob&local=7 or logger:stdout?json=true. Defaults to stderr.
+# -log.level value
+# Only log messages with the given severity or above. Valid levels: [debug, info, warn, error, fatal].
+# -persistence.file string
+# File to persist metrics. If empty, metrics are only kept in memory.
+# -persistence.interval duration
+# The minimum interval at which to write out the persistence file. (default 5m0s)
+# -web.listen-address string
+# Address to listen on for the web interface, API, and telemetry. (default ":9091")
+# -web.telemetry-path string
+# Path under which to expose metrics. (default "/metrics")
+
+#command_args="-web.listen-address localhost:9091 -persistence.file=/var/lib/${RC_SVCNAME}/persistence.gob"
diff --git a/app-metrics/pushgateway/files/pushgateway.initd b/app-metrics/pushgateway/files/pushgateway.initd
new file mode 100644
index 000000000000..a187e57897ed
--- /dev/null
+++ b/app-metrics/pushgateway/files/pushgateway.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus push acceptor for ephemeral and batch jobs"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/pushgateway"
+command_args="${command_args:--web.listen-address localhost:9091 -persistence.file=/var/lib/${RC_SVCNAME}/persistence.gob}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ need net
+}
diff --git a/app-metrics/pushgateway/files/pushgateway.logrotated b/app-metrics/pushgateway/files/pushgateway.logrotated
new file mode 100644
index 000000000000..c94b73952bc7
--- /dev/null
+++ b/app-metrics/pushgateway/files/pushgateway.logrotated
@@ -0,0 +1,7 @@
+/var/log/pushgateway/pushgateway.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/app-metrics/pushgateway/files/pushgateway.service b/app-metrics/pushgateway/files/pushgateway.service
new file mode 100644
index 000000000000..3915fdb5b337
--- /dev/null
+++ b/app-metrics/pushgateway/files/pushgateway.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Prometheus exporter for ephemereal jobs
+Documentation=https://prometheus.io/docs/instrumenting/pushing/
+After=network-online.target
+
+[Service]
+User=pushgateway
+Restart=on-failure
+Environment=PUSHGATEWAY_ARGS="-web.listen-address localhost:9091 --persistence.file=/var/lib/pushgateway/persistence.gob"
+ExecStart=/usr/bin/pushgateway $PUSHGATEWAY_ARGS
+ExecReload=/bin/kill -HUP $MAINPID
+TimeoutStopSec=20s
+SendSIGKILL=no
+
+[Install]
+WantedBy=multi-user.target