Linux服务器JS日志管理方法
一 日志采集与结构化
二 日志轮转与保留
/var/log/nodeapp/*.log {
daily
rotate 7
compress
delaycompress
missingok
notifempty
create 644 root root
sharedscripts
postrotate
[ ! -f /var/run/nodeapp.pid ] || kill -USR1 `cat /var/run/nodeapp.pid`
endscript
}
logrotate -d /etc/logrotate.d/nodeapp(语法检查),logrotate -f /etc/logrotate.d/nodeapp(强制执行)。三 集中式日志与监控告警
tail -f /var/log/nodeapp/app.logtail -f /var/log/nodeapp/app.log | grep --color=auto 'ERROR'less +F /var/log/nodeapp/app.logpm2 logs myapi 实时聚合查看应用日志,便于联动告警与快速定位。四 备份与归档
#!/usr/bin/env bash
LOG_DIR="/var/log/nodeapp"
BACKUP_DIR="/backup/logs"
DATE=$(date +%Y%m%d%H%M%S)
mkdir -p "$BACKUP_DIR"
tar czf "$BACKUP_DIR/nodeapp_$DATE.tar.gz" -C "$LOG_DIR" .
0 2 * * * /usr/local/bin/backup_node_logs.sh >> /var/log/js_log_backup.log 2>&1gpg --symmetric --cipher-algo AES256 file.tar.gz)。五 安全与合规要点