forked from ungleich-public/cdist
51 lines
1.7 KiB
Text
51 lines
1.7 KiB
Text
|
#!/bin/sh
|
||
|
|
||
|
export GOBIN=/opt/gocode/bin # where to find go binaries
|
||
|
|
||
|
exporter="$(cat $__object/parameter/exporter)"
|
||
|
[ -z "$exporter" ] && exporter="$__object_id"
|
||
|
|
||
|
__user prometheus --system
|
||
|
|
||
|
case $exporter in
|
||
|
node)
|
||
|
TEXTFILES=/service/node-exporter/textfiles # path for the textfiles collector
|
||
|
|
||
|
port=9100
|
||
|
run="setuidgid prometheus $GOBIN/node_exporter -web.listen-address :$port -collector.textfile.directory=$TEXTFILES"
|
||
|
|
||
|
require="__golang_from_vendor" __go_get github.com/prometheus/node_exporter
|
||
|
__directory $TEXTFILES --parents --mode 777
|
||
|
;;
|
||
|
blackbox)
|
||
|
port=9115
|
||
|
run="setuidgid prometheus $GOBIN/blackbox_exporter -config.file=/service/blackbox-exporter/blackbox.yml"
|
||
|
|
||
|
require="__daemontools_service/blackbox-exporter __user/prometheus" __config_file "/service/blackbox-exporter/blackbox.yml" \
|
||
|
--source $__type/files/blackbox.yml \
|
||
|
--group prometheus --mode 640 \
|
||
|
--onchange "svc -h /service/blackbox-exporter"
|
||
|
require="__golang_from_vendor" __go_get github.com/prometheus/blackbox_exporter
|
||
|
;;
|
||
|
ceph)
|
||
|
port=9128
|
||
|
run="setuidgid ceph $GOBIN/ceph_exporter -ceph.config /etc/ceph/ceph.conf -telemetry.addr :$port"
|
||
|
|
||
|
__package librados-dev # dependency of ceph_exporter
|
||
|
require="__golang_from_vendor __package/librados-dev" __go_get github.com/digitalocean/ceph_exporter
|
||
|
;;
|
||
|
*)
|
||
|
echo "Unknown exporter: $exporter." >&2
|
||
|
exit 1
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
require="__daemontools" __daemontools_service ${exporter}-exporter --run "$run"
|
||
|
if [ -f "$__object/parameter/add-consul-service" ]; then
|
||
|
__consul_service ${exporter}-exporter --port $port --check-http "http://localhost:$port/metrics" --check-interval 10s
|
||
|
fi
|
||
|
|
||
|
#__daemontools --install-init-script
|
||
|
__daemontools
|
||
|
__golang_from_vendor --version 1.8.1 # required for many exporters
|