Skip to content

Commit 2b34c50

Browse files
committed
upload update
1 parent 4418ffc commit 2b34c50

File tree

2 files changed

+20
-7
lines changed

2 files changed

+20
-7
lines changed

nginx-f1/docker-entrypoint.sh

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,18 @@ setup_logrotate_cron() {
1010
fi
1111
}
1212

13+
# Function to enable logrotate-daemon when LOGROTATE_INTERVAL is set
14+
setup_logrotate_daemon() {
15+
if [ -n "${LOGROTATE_INTERVAL}" ] && [ "${LOGROTATE_INTERVAL}" != "86400" ]; then
16+
echo "Logrotate daemon enabled (interval: ${LOGROTATE_INTERVAL}s)"
17+
if [ -f /etc/supervisor/conf.d/supervisord.conf ]; then
18+
sed -i '/\[program:logrotate-daemon\]/,/priority=175/{s/autostart=false/autostart=true/}' /etc/supervisor/conf.d/supervisord.conf
19+
fi
20+
# Remove cron job to prevent double rotation
21+
rm -f /etc/cron.d/nginx-logrotate
22+
fi
23+
}
24+
1325
# Function to setup disk cleanup daemon
1426
setup_disk_cleanup() {
1527
if [ "${ENABLE_DISK_CLEANUP:-false}" = "true" ]; then
@@ -75,6 +87,7 @@ should_use_supervisord() {
7587
setup_log_directories
7688
configure_logrotate
7789
setup_logrotate_cron
90+
setup_logrotate_daemon
7891
setup_disk_cleanup
7992

8093
# Determine logrotate method and start accordingly

nginx-f1/logrotate-manager.sh

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -115,17 +115,17 @@ transfer_via_scp() {
115115
return 1
116116
fi
117117

118-
local ssh_opts="-i $SSH_KEY_PATH -p $SSH_PORT -o StrictHostKeyChecking=no"
118+
local ssh_opts="-i $SSH_KEY_PATH -p $SSH_PORT -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=30"
119119
local date_subdir="$(date +%Y-%m)/$(date +%d)"
120120
local remote_dest="$REMOTE_PATH/$date_subdir"
121121

122122
# Create remote date-based directory
123-
ssh $ssh_opts "$REMOTE_USER@$REMOTE_HOST" "mkdir -p $remote_dest"
123+
timeout 30 ssh $ssh_opts "$REMOTE_USER@$REMOTE_HOST" "mkdir -p $remote_dest"
124124

125125
# Transfer archived files
126126
for f in "$ARCHIVE_DIR"/*.gz; do
127127
if [ -f "$f" ]; then
128-
scp $ssh_opts "$f" "$REMOTE_USER@$REMOTE_HOST:$remote_dest/"
128+
timeout 120 scp $ssh_opts "$f" "$REMOTE_USER@$REMOTE_HOST:$remote_dest/"
129129
log_message "Transferred: $remote_dest/$(basename $f)"
130130
fi
131131
done
@@ -138,7 +138,7 @@ transfer_via_sftp() {
138138
return 1
139139
fi
140140

141-
local sftp_opts="-P $SSH_PORT -i $SSH_KEY_PATH -o StrictHostKeyChecking=no -o BatchMode=yes"
141+
local sftp_opts="-P $SSH_PORT -i $SSH_KEY_PATH -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o BatchMode=yes -o ConnectTimeout=30 -o ServerAliveInterval=10 -o ServerAliveCountMax=3"
142142
local batch_file=$(mktemp /tmp/sftp-batch-XXXXXX)
143143
local date_subdir="$(date +%Y-%m)/$(date +%d)"
144144
local remote_dest="$REMOTE_PATH/$date_subdir"
@@ -168,7 +168,7 @@ transfer_via_sftp() {
168168
fi
169169

170170
# Execute sftp batch
171-
if sftp $sftp_opts -b "$batch_file" "$REMOTE_USER@$REMOTE_HOST" >> "$LOG_FILE" 2>&1; then
171+
if timeout 120 sftp $sftp_opts -b "$batch_file" "$REMOTE_USER@$REMOTE_HOST" >> "$LOG_FILE" 2>&1; then
172172
log_message "Transferred $file_count files to remote via SFTP"
173173
else
174174
log_message "SFTP transfer failed (exit code $?)"
@@ -186,11 +186,11 @@ transfer_via_rsync() {
186186
return 1
187187
fi
188188

189-
local rsync_opts="-avz -e 'ssh -i $SSH_KEY_PATH -p $SSH_PORT -o StrictHostKeyChecking=no'"
189+
local rsync_opts="-avz -e 'ssh -i $SSH_KEY_PATH -p $SSH_PORT -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=30'"
190190
local date_subdir="$(date +%Y-%m)/$(date +%d)"
191191
local remote_dest="$REMOTE_PATH/$date_subdir"
192192

193-
eval "rsync $rsync_opts $ARCHIVE_DIR/ $REMOTE_USER@$REMOTE_HOST:$remote_dest/"
193+
eval "timeout 120 rsync $rsync_opts $ARCHIVE_DIR/ $REMOTE_USER@$REMOTE_HOST:$remote_dest/"
194194
log_message "Synchronized logs to remote via rsync: $remote_dest/"
195195
}
196196

0 commit comments

Comments
 (0)