-
#!/bin/bash # AWS 자격 증명 설정 export AWS_ACCESS_KEY_ID="xxxxxxxxxxxxxx" export AWS_SECRET_ACCESS_KEY="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" export AWS_DEFAULT_REGION="xxxxxxxxxxx" # 로그 파일 경로 및 S3 경로 설정 LOG_PATH="/var/log/httpd/" S3_BUCKET="버킷명" S3_PREFIX="logs/$(date -d 'yesterday' +'%Y/%m')/" # 어제의 로그 파일을 S3로 이동 aws s3 cp "${LOG_PATH}access_log-$(date -d 'yesterday' +'%Y%m%d')" "s3://${S3_BUCKET}/${S3_PREFIX}" aws s3 cp "${LOG_PATH}error_log-$(date -d 'yesterday' +'%Y%m%d')" "s3://${S3_BUCKET}/${S3_PREFIX}" aws s3 cp "${LOG_PATH}ssl_access_log-$(date -d 'yesterday' +'%Y%m%d')" "s3://${S3_BUCKET}/${S3_PREFIX}" aws s3 cp "${LOG_PATH}ssl_error_log-$(date -d 'yesterday' +'%Y%m%d')" "s3://${S3_BUCKET}/${S3_PREFIX}" aws s3 cp "${LOG_PATH}ssl_request_log-$(date -d 'yesterday' +'%Y%m%d')" "s3://${S3_BUCKET}/${S3_PREFIX}" # 로그 파일 삭제 (선택 사항) rm "${LOG_PATH}access_log-$(date -d 'yesterday' +'%Y%m%d')" rm "${LOG_PATH}error_log-$(date -d 'yesterday' +'%Y%m%d')" rm "${LOG_PATH}ssl_access_log-$(date -d 'yesterday' +'%Y%m%d')" rm "${LOG_PATH}ssl_error_log-$(date -d 'yesterday' +'%Y%m%d')" rm "${LOG_PATH}ssl_request_log-$(date -d 'yesterday' +'%Y%m%d')"위 스크립트를 cron 으로 적절히 스케쥴링 해주면 끝.
로그 경로 및 로그파일 패턴에 대해서는 적절히 변경이 필요하며 삭제에 대해서는 선택사항임.
스크립트는 글쓴이 상황에 맞게 작성된 것이며 검증 후 사용하시길 바랍니다.
댓글