30 lines
1.1 KiB
Bash
Executable File
30 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
set -eu
|
|
|
|
INBOX="${INBOX:-/mnt/user/photosync/inbox}"
|
|
DROP="${DROP:-/mnt/user/photosync/drop}"
|
|
LOGFILE="${LOGFILE:-/mnt/user/photosync-scripts/monitor.log}"
|
|
MOVER_CONTAINER="${MOVER_CONTAINER:-photosync-mover}"
|
|
UPLOADER_CONTAINER="${UPLOADER_CONTAINER:-photosync-uploader}"
|
|
TAIL_LINES="${TAIL_LINES:-10}"
|
|
TIMESTAMP="$(date '+%Y-%m-%d %H:%M:%S')"
|
|
|
|
echo "=== Photosync Monitor @ $TIMESTAMP ===" | tee -a "$LOGFILE"
|
|
|
|
inbox_count=$(find "$INBOX" -type f 2>/dev/null | wc -l | tr -d ' ')
|
|
drop_count=$(find "$DROP" -type f 2>/dev/null | wc -l | tr -d ' ')
|
|
echo "Inbox files: $inbox_count" | tee -a "$LOGFILE"
|
|
echo "Drop files: $drop_count" | tee -a "$LOGFILE"
|
|
|
|
for svc in "$MOVER_CONTAINER" "$UPLOADER_CONTAINER"; do
|
|
if docker ps --format '{{.Names}}' | grep -q "^$svc$"; then
|
|
echo "Container $svc: RUNNING" | tee -a "$LOGFILE"
|
|
else
|
|
echo "Container $svc: NOT RUNNING" | tee -a "$LOGFILE"
|
|
fi
|
|
done
|
|
|
|
echo "--- Last $TAIL_LINES uploader log lines ---" | tee -a "$LOGFILE"
|
|
docker logs --tail "$TAIL_LINES" "$UPLOADER_CONTAINER" 2>&1 | tee -a "$LOGFILE"
|
|
echo "" | tee -a "$LOGFILE"
|