#!/bin/sh ### BEGIN INIT INFO # Provides: power-logger # Required-Start: $all # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: # Short-Description: power-logger ### END INIT INFO export SUFFIX=$(date +'%Y-%m-%d-%H:%M:%S') export USER=pks export GROUP=pks export DIR=/home/$USER/mqtt_client/ case "$1" in start) echo "Starting power-logger" rm -f $DIR/stop if [ ! -f $DIR/power.db ]; then runuser -l $USER -c "$DIR/db-create.sh $DIR/power.db" fi mkdir -p $DIR/log chown -R $USER:$GROUP $DIR/log runuser -l $USER -c "source $DIR/env/bin/activate && python $DIR/mqtt-receiver.py 2> >(cat > $DIR/log/power.$SUFFIX.err) | tee >(cat > $DIR/log/power.$SUFFIX.out) | $DIR/db-from-log.sh $DIR/power.db 2> >(cat > $DIR/log/power.db-from-log.$SUFFIX.err)" & echo $! > /run/power-logger.pid2 ;; stop) echo "Stopping power-logger" runuser -l $USER -c "touch $DIR/stop" sleep 3 if [ -f /run/power-logger.pid2 ]; then kill $(cat /run/power-logger.pid2) &>/dev/null rm -f /run/power-logger.pid2 fi rm -f $DIR/stop ;; *) echo "Usage: /etc/init.d/power-logger {start|stop}" exit 1 ;; esac exit 0