행위

"Nginx 로그 일자별 기록하기"의 두 판 사이의 차이

라이언의 꿀팁백과

(새 문서: == 문제점 == 대부분의 일반적인 프로그램은 로그(log)<ref>다양한 IT 장비와 응용 소프트웨어(SW)에서 일어나는 일을 발생 시간과 사건 내역으로 기록하는 데이터</ref>를 남긴다. 오픈소스 웹서버인 nginx 또한 로그를 남기는데 기본적으로 해당 프로그램은 1개의 파일에 로그를 기록하기 때문에 관리에 어려움이 발생한다. == 해결방법 == 이러한 문제점을 해결하기 위해...)
 
27번째 줄: 27번째 줄:
}
}
</syntaxhighlight>
</syntaxhighlight>
== 주석 ==
[[분류:IT 전문가]]
[[분류:IT 전문가]]
[[분류:IT]]
[[분류:IT]]
[[분류:리눅스]]
[[분류:리눅스]]
[[분류:컴퓨터]]
[[분류:컴퓨터]]

2022년 2월 15일 (화) 20:45 판

1 문제점

대부분의 일반적인 프로그램은 로그(log)[1]를 남긴다. 오픈소스 웹서버인 nginx 또한 로그를 남기는데 기본적으로 해당 프로그램은 1개의 파일에 로그를 기록하기 때문에 관리에 어려움이 발생한다.

2 해결방법

이러한 문제점을 해결하기 위해서는 로그를 의미 있는 단위로 나누어서 관리하는 것이다. 가장 일반적인 방법은 일자로 로그를 나누는 것인데, 이를 위해 여기서는 logrotate[2] 라는 프로그램을 사용하고자 한다.

3 logrotate 관련 설정

아래와 같이 /etc/logrotate.d/nginx 라는 파일을 생성한다.

/app/nginx/logs/*.log {
    create 0644 nginx web
    daily
    missingok
    rotate 365
    compress
    delaycompress
    notifempty
    dateformat .%Y-%m-%d.log
    dateext
    sharedscripts
    postrotate
        if [ -f /app/nginx/run/nginx.pid ]; then
            kill -USR1 `cat /app/nginx/run/nginx.pid`
        fi
    endscript
}

4 주석

  1. 다양한 IT 장비와 응용 소프트웨어(SW)에서 일어나는 일을 발생 시간과 사건 내역으로 기록하는 데이터
  2. 로그 관리 프로그램