Add Messenger monitor command, uploads backup, hourly cron
- MonitorMessengerCommand: checks failed messages, emails admin with details - Backup script: add /public/uploads tar.gz alongside DB dump - Ansible: cron every hour for messenger monitor - TASK_CHECKUP: mark infrastructure tasks done Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -12,12 +12,23 @@ docker compose -f /var/www/e-ticket/docker-compose-prod.yml exec -T database pg_
|
||||
|
||||
# Check if backup was created
|
||||
if [ -f "${BACKUP_DIR}/${FILENAME}" ] && [ -s "${BACKUP_DIR}/${FILENAME}" ]; then
|
||||
echo "[$(date)] Backup OK: ${FILENAME} ($(du -h "${BACKUP_DIR}/${FILENAME}" | cut -f1))"
|
||||
echo "[$(date)] DB Backup OK: ${FILENAME} ($(du -h "${BACKUP_DIR}/${FILENAME}" | cut -f1))"
|
||||
else
|
||||
echo "[$(date)] ERROR: Backup failed"
|
||||
echo "[$(date)] ERROR: DB Backup failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Backup uploads
|
||||
UPLOADS_FILENAME="uploads_${DATE}.tar.gz"
|
||||
tar -czf "${BACKUP_DIR}/${UPLOADS_FILENAME}" -C /var/www/e-ticket/public uploads 2>/dev/null
|
||||
|
||||
if [ -f "${BACKUP_DIR}/${UPLOADS_FILENAME}" ]; then
|
||||
echo "[$(date)] Uploads Backup OK: ${UPLOADS_FILENAME} ($(du -h "${BACKUP_DIR}/${UPLOADS_FILENAME}" | cut -f1))"
|
||||
else
|
||||
echo "[$(date)] WARNING: Uploads backup failed"
|
||||
fi
|
||||
|
||||
# Remove backups older than KEEP_DAYS days
|
||||
find "${BACKUP_DIR}" -name "e_ticket_*.sql.gz" -mtime +${KEEP_DAYS} -delete
|
||||
find "${BACKUP_DIR}" -name "uploads_*.tar.gz" -mtime +${KEEP_DAYS} -delete
|
||||
echo "[$(date)] Cleaned backups older than ${KEEP_DAYS} days"
|
||||
|
||||
@@ -189,6 +189,13 @@
|
||||
job: "/var/backups/e-ticket/backup.sh >> /var/log/e-ticket-backup.log 2>&1"
|
||||
user: bot
|
||||
|
||||
- name: Configure messenger monitor cron (every hour)
|
||||
cron:
|
||||
name: "e-ticket messenger monitor"
|
||||
minute: "0"
|
||||
job: "docker compose -f /var/www/e-ticket/docker-compose-prod.yml exec -T php php bin/console app:monitor:messenger --env=prod >> /var/log/e-ticket-messenger.log 2>&1"
|
||||
user: bot
|
||||
|
||||
post_tasks:
|
||||
- name: Disable maintenance mode
|
||||
command: make maintenance_off
|
||||
|
||||
Reference in New Issue
Block a user