diff --git a/rattail_fabric2/deploy/check-supervisor-process b/rattail_fabric2/deploy/check-supervisor-process
new file mode 100755
index 0000000..470a8ec
--- /dev/null
+++ b/rattail_fabric2/deploy/check-supervisor-process
@@ -0,0 +1,57 @@
+#!/bin/sh
+################################################################################
+#
+# Rattail -- Retail Software Framework
+# Copyright © 2010-2019 Lance Edgar
+#
+# This file is part of Rattail.
+#
+# Rattail is free software: you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation, either version 3 of the License, or (at your option) any later
+# version.
+#
+# Rattail is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+# details.
+#
+# You should have received a copy of the GNU General Public License along with
+# Rattail. If not, see .
+#
+################################################################################
+#
+# This is a simple script which will output a single line of info, and exit
+# with a return code which indicates status of a given supervisor process. It
+# was designed for use with Shinken monitoring. Invoke like so:
+#
+# check-supervisor-process NAME
+#
+# Where NAME refers to the process, e.g. 'rattail:datasync'. Exit code may be:
+#
+# * 0 = process is confirmed running
+# * 2 = process is confirmed *not* running
+# * 3 = unknown state
+#
+################################################################################
+
+NAME="$1"
+if [ "$NAME" = "" ]; then
+ echo "Usage: check-supervisor-process NAME"
+ exit 3
+fi
+
+STATUS=$(sudo supervisorctl status $NAME | awk -F ' +' '{print $2}')
+
+if [ $STATUS = "RUNNING" ]; then
+ echo "supervisor reports RUNNING status"
+ exit 0
+fi
+
+if [ "$STATUS" = "" ]; then
+ echo "unable to perform status check!"
+ exit 3
+fi
+
+echo "supervisor reports $STATUS status"
+exit 2
diff --git a/rattail_fabric2/deploy/check-systemd-service b/rattail_fabric2/deploy/check-systemd-service
new file mode 100755
index 0000000..16954e4
--- /dev/null
+++ b/rattail_fabric2/deploy/check-systemd-service
@@ -0,0 +1,46 @@
+#!/bin/sh
+################################################################################
+#
+# Rattail -- Retail Software Framework
+# Copyright © 2010-2019 Lance Edgar
+#
+# This file is part of Rattail.
+#
+# Rattail is free software: you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation, either version 3 of the License, or (at your option) any later
+# version.
+#
+# Rattail is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+# details.
+#
+# You should have received a copy of the GNU General Public License along with
+# Rattail. If not, see .
+#
+################################################################################
+#
+# This is a simple script which will output a single line of info, and exit
+# with a return code which indicates status of a given systemd service. It was
+# designed for use with Shinken monitoring. Invoke like so:
+#
+# check-systemd-service NAME
+#
+# Where NAME refers to the process, e.g. 'rattail-soffice'. Exit code may be:
+#
+# * 0 = process is confirmed running
+# * 2 = process is confirmed *not* running
+# * 3 = unknown state
+#
+################################################################################
+
+NAME="$1"
+if [ "$NAME" = "" ]; then
+ echo "Usage: check-systemd-service NAME"
+ exit 3
+fi
+
+sudo systemctl is-active $NAME.service || exit 2
+
+exit 0
diff --git a/rattail_fabric2/rattail.py b/rattail_fabric2/rattail.py
index 27e226e..39baa74 100644
--- a/rattail_fabric2/rattail.py
+++ b/rattail_fabric2/rattail.py
@@ -48,6 +48,8 @@ def bootstrap_rattail(c, home='/var/lib/rattail', uid=None, shell='/bin/bash'):
mkdir(c, '/srv/rattail/init', use_sudo=True)
deploy(c, 'daemon', '/srv/rattail/init/daemon', use_sudo=True)
deploy(c, 'check-rattail-daemon', '/usr/local/bin/check-rattail-daemon', use_sudo=True)
+ deploy(c, 'check-supervisor-process', '/usr/local/bin/check-supervisor-process')
+ deploy(c, 'check-systemd-service', '/usr/local/bin/check-systemd-service')
deploy(c, 'luigid', '/srv/rattail/init/luigid', use_sudo=True)
deploy(c, 'soffice', '/srv/rattail/init/soffice', use_sudo=True)
# TODO: deprecate / remove these