如何为服务检测重启脚本添加指定路径日志写入功能
给sshd监控脚本添加日志写入功能
以下是添加了日志写入功能的完整脚本:
#!/bin/bash SERVICE="sshd" LOG_FILE="/bitnami/wordpress/wp-content/debug.log" STATUS="$(systemctl is-active $SERVICE)" # 写入状态检查日志 echo "$(date '+%Y-%m-%d %H:%M:%S') - Checking $SERVICE status: $STATUS" >> "$LOG_FILE" if [ "$STATUS" != "active" ]; then MSG="Service $SERVICE is not running" echo "$MSG" echo "$(date '+%Y-%m-%d %H:%M:%S') - $MSG" >> "$LOG_FILE" systemctl restart $SERVICE RESTART_MSG="Service $SERVICE has been restarted" echo "$RESTART_MSG" echo "$(date '+%Y-%m-%d %H:%M:%S') - $RESTART_MSG" >> "$LOG_FILE" # Send notification here else MSG="Service $SERVICE is running" echo "$MSG" echo "$(date '+%Y-%m-%d %H:%M:%S') - $MSG" >> "$LOG_FILE" fi
关键改动说明
- 定义
LOG_FILE变量统一指定日志路径,方便后续修改维护 - 用
$(date '+%Y-%m-%d %H:%M:%S')添加时间戳,让日志具备可追溯性 - 使用
>>运算符以追加模式写入日志,避免覆盖原有日志内容 - 终端输出的信息同步写入日志,同时保留原有终端提示逻辑
注意事项
- 确保执行脚本的用户对
/bitnami/wordpress/wp-content/目录有写入权限,否则会触发权限错误 - 如果
debug.log文件不存在,脚本会自动创建该文件 - 可根据需求调整时间戳格式,比如去掉时分秒仅保留日期,或添加时区信息
内容的提问来源于stack exchange,提问作者futureyoon
相关产品推荐
相关产品推荐

