diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..7fef3e3 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,6 @@ +root=true +[*] +charset = utf-8 +indent_size = 3 +indent_style = space +insert_final_newline = true diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c913e13 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*temp/ diff --git a/build/build.sh b/build/build.sh new file mode 100644 index 0000000..bfc29bf --- /dev/null +++ b/build/build.sh @@ -0,0 +1,43 @@ +#!/bin/bash + +SCRIPTPATH="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )" + +cd $SCRIPTPATH + +[ -d "./temp" ] && rm -r ./temp + +mkdir ./temp + +cd temp + +# ------------------------ +# Dovecot Exporter +# ------------------------ +echo "Building dovecot_exporter" + +git clone https://github.com/kumina/dovecot_exporter.git dovecot_exporter +cd dovecot_exporter + +go get -d ./... +go build --ldflags '-extldflags "-static"' + +cp dovecot_exporter $SCRIPTPATH/../exporter/dovecot_exporter/ + +# ------------------------ +# Postfix Exporter +# ------------------------ +echo "Building postfix_exporter" + +git clone https://github.com/kumina/postfix_exporter.git postfix_exporter +cd postfix_exporter + +go get -d ./... +go build + +cp postfix_exporter $SCRIPTPATH/../exporter/postfix_exporter/ + + +#go get gopkg.in/yaml.v2 + +#go run build.go + diff --git a/exporter/dovecot_exporter/dovecot_exporter b/exporter/dovecot_exporter/dovecot_exporter new file mode 100644 index 0000000..cbaabcc Binary files /dev/null and b/exporter/dovecot_exporter/dovecot_exporter differ diff --git a/exporter/dovecot_exporter/dovecot_exporter.service b/exporter/dovecot_exporter/dovecot_exporter.service new file mode 100644 index 0000000..4070eed --- /dev/null +++ b/exporter/dovecot_exporter/dovecot_exporter.service @@ -0,0 +1,12 @@ +[Unit] +Description=Dovecot Exporter + +[Service] +User=root +ExecStart=/usr/prometheus/dovecot_exporter +ProtectHome=true +ProtectSystem=full +ReadWritePaths=/var/run/dovecot/stats + +[Install] +WantedBy=multi-user.target diff --git a/exporter/dovecot_exporter/install.sh b/exporter/dovecot_exporter/install.sh new file mode 100644 index 0000000..3853037 --- /dev/null +++ b/exporter/dovecot_exporter/install.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +if [ "$EUID" -ne 0 ] + then echo "Please run as root" + exit +fi + +SCRIPTPATH="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )" + +if service --status-all | grep -Fq 'dovecot_exporter'; then + service dovecot_exporter stop +fi + +echo "Copying exporter" + +mkdir -p /usr/prometheus + +echo "Checking/Creating systemd configuration" + +cp $SCRIPTPATH/dovecot_exporter /usr/prometheus/dovecot_exporter +chmod +x /usr/prometheus/dovecot_exporter + +cp $SCRIPTPATH/dovecot_exporter.service /etc/systemd/system/ + +echo "Starting exporter" + +systemctl enable dovecot_exporter.service +service dovecot_exporter start + +echo "Exporter available at :9166" diff --git a/exporter/node_exporter/install.sh b/exporter/node_exporter/install.sh index 7858056..4d14798 100644 --- a/exporter/node_exporter/install.sh +++ b/exporter/node_exporter/install.sh @@ -36,7 +36,9 @@ else cp $SCRIPTPATH/node_exporter.sysconfig /etc/sysconfig/node_exporter fi -echo "Starting Exporter" +echo "Starting exporter" systemctl enable node_exporter.service -service node_exporter start \ No newline at end of file +service node_exporter start + +echo "Exporter available at :9100"