cronolog를 컴파일하여 설치하고 Apache에 로그를 설정하는 방법
Cronolog를 소스 코드를 직접 다운로드하여 컴파일하여 설치하고 Apache에 로그를 설정하는 방법은 아래와 같습니다.
1 .필요한 패키지 설치
컴파일에 필요한 일부 개발 패키지를 설치합니다.
sudo yum install -y gcc make
2. Cronolog 다운로드 및 설치
Cronolog의 공식 웹 사이트(http://cronolog.org/)에서 소스 코드를 다운로드합니다.
cd /usr/local/src
wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
tar -xzvf cronolog-1.6.2.tar.gz
cd cronolog-1.6.2
이제 소스 코드 디렉토리에 들어가서 Cronolog를 컴파일하고 설치합니다.
./configure
make
sudo make install
Cronolog 링크 설정
$ which cronolog
/usr/local/sbin/cronolog
ln -s /usr/local/sbin/cronolog /usr/sbin/cronolog
$ whereis cronolog
cronolog: /usr/sbin/cronolog /usr/local/sbin/cronolog
3. Apache 로그 설정
Cronolog를 사용하여 Apache 웹 서버의 로그를 설정하려면, Apache 설정 파일에서 로그 관련 디렉티브를 수정해야 합니다. CentOS에서는 Apache 설정 파일이 주로 /etc/httpd/conf/httpd.conf에 위치합니다.
- 가상 호스트(VirtualHost)에 대한 로그 설정
아래 예시는 가상 호스트에 대한 로그 설정을 보여줍니다. Apache의 가상 호스트를 사용하고 있지 않다면, 주 설정 파일의 맨 아래에 설정을 추가하면 됩니다.
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/html
ErrorLog "| /usr/local/sbin/cronolog /var/log/httpd/example.com-error.%Y%m%d"
CustomLog "| /usr/local/sbin/cronolog /var/log/httpd/example.com-access.%Y%m%d" combined
# 기타 가상 호스트 설정...
</VirtualHost>
위 예시에서 /var/log/httpd/ 디렉토리에 로그 파일이 생성되며, %Y%m%d는 날짜 형식을 나타냅니다. 따라서 오늘의 로그 파일은 example.com-access.20230729와 같이 생성됩니다.
- 주 설정 파일에 대한 로그 설정
Apache의 주 설정 파일에 로그를 설정하려면 다음과 같이 수정합니다.
ErrorLog "| /usr/local/sbin/cronolog /var/log/httpd/error_log.%Y%m%d"
CustomLog "| /usr/local/sbin/cronolog /var/log/httpd/access_log.%Y%m%d" combined
마찬가지로, /var/log/httpd/ 디렉토리에 로그 파일이 생성되며, %Y%m%d는 날짜 형식을 나타냅니다.
4. Apache 재시작
설정을 마쳤다면, Apache 웹 서버를 재시작하여 변경 사항이 적용되도록 합니다.
service httpd restart
이제 Cronolog를 사용하여 Apache 웹 서버의 로그가 날짜와 시간별로 분리되어 저장됩니다. 정확한 디렉토리와 파일명은 원하는 대로 수정하시면 됩니다. 로그 파일은 일일 단위로 생성되며, 서버의 로그 관리와 분석을 용이하게 도와줍니다.
'리눅스' 카테고리의 다른 글
[리눅스] CentOS6.x 로그 파일 데몬 변경(rsyslogd) (0) | 2013.06.20 |
---|---|
CentOS 6.2 에서 dkms를 설치하는 방법 (0) | 2013.06.20 |
[리눅스] 우분투에서 PHP-FPM 최신(php-fpm 8.1) 버전 설치하기 (1) | 2013.06.20 |
CentOS 7에서 LANG 설정을 변경하고 영구적으로 적용하는 방법 (0) | 2013.06.19 |
mysqladmin 명령어 (0) | 2013.06.19 |