cronolog를 컴파일하여 설치하고 로그를 설정하는 방법
Cronolog를 컴파일하여 설치하고 Apache 로그를 설정하는 방법을 안내드리겠습니다. 이 방법은 소스 코드를 직접 다운로드하여 컴파일하고 설치하는 과정을 포함합니다. 아래 단계를 따라 진행하시면 됩니다.
1. 필요한 패키지 설치
먼저, Cronolog를 컴파일하는 데 필요한 일부 개발 도구와 라이브러리를 설치합니다.
sudo yum install -y gcc make
2. Cronolog 다운로드 및 설치
Cronolog의 공식 웹 사이트(http://cronolog.org/)에서 최신 소스 코드를 다운로드합니다. 아래 예시에서는 버전 1.7을 사용합니다. 그러나 현재 시점에서는 이 버전보다 더 높은 버전이 나올 수도 있으므로 공식 웹 사이트에서 확인하시기 바랍니다.
cd /usr/local/src/
wget http://cronolog.org/download/cronolog-1.7.tar.gz
tar -xzvf cronolog-1.7.tar.gz
이제 소스 코드 디렉토리에 들어가서 Cronolog를 컴파일하고 설치합니다.
cd cronolog-1.7
./configure --prefix=/usr/local/cronolog
make
sudo make install
3. Apache 로그 설정
Apache 웹 서버의 로그 설정을 수정합니다.
ErrorLog "|/usr/local/cronolog/sbin/cronolog /path/to/logs/error.%Y%m%d.log"
CustomLog "|/usr/local/cronolog/sbin/cronolog /path/to/logs/access.%Y%m%d.log" combined
먼저, Apache 설정 파일(httpd.conf 또는 apache2.conf)에 들어가서 CustomLog와 ErrorLog 디렉티브를 다음과 같이 수정합니다.
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/home/lamp.sangchul.kr/public_html"
ServerName lamp.sangchul.kr
ServerAlias www.lamp.sangchul.kr
ErrorLog "|/usr/local/cronolog/sbin/cronolog /logs/lamp.sangchul.kr-error-%Y%m%d.log"
TransferLog "|/usr/local/cronolog/sbin/cronolog /logs/lamp.sangchul.kr-access-%Y%m%d.log"
</VirtualHost>
위 예시에서 /path/to/logs/를 실제 로그 파일이 저장될 디렉토리 경로로 변경해야 합니다. %Y%m%d는 날짜 형식을 나타냅니다. 따라서 오늘의 로그 파일은 access.20130818.log와 같이 생성됩니다.
4. Apache 재시작
설정을 마쳤다면, Apache 웹 서버를 재시작하여 변경 사항이 적용되도록 합니다.
/usr/local/apache2/bin/apachectl restart
이제 Cronolog를 사용하여 Apache 웹 서버의 로그가 날짜와 시간별로 분리되어 저장됩니다. 로그 파일은 일일 단위로 생성되며, 서버의 로그 관리와 분석을 용이하게 도와줍니다. 정확한 디렉토리와 파일명은 원하는 대로 수정하시면 됩니다.
- cronolog 프로세스 확인
ps -ef | grep cronolog | grep -v grep
$ ps -ef | grep cronolog | grep -v grep
root 4928 4927 0 22:49 ? 00:00:00 /usr/local/cronolog/sbin/cronolog /logs/lamp.sangchul.kr-error-%Y%m%d.log
root 4929 4927 0 22:49 ? 00:00:00 /usr/local/cronolog/sbin/cronolog /logs/lamp.sangchul.kr-access-%Y%m%d.log
- cronolog 로그 확인
$ ls -l /logs/* | grep 20130818
-rw-r--r-- 1 root root 0 2013-08-18 22:49 /logs/lamp.sangchul.kr-access-20130818.log
-rw-r--r-- 1 root root 0 2013-08-18 22:49 /logs/lamp.sangchul.kr-error-20130818.log
참고URL
- UK Mirror Service : http://www.mirrorservice.org/sites/distfiles.macports.org/cronolog/
- 다운로드 사이트
- wget http://www.mirrorservice.org/sites/distfiles.macports.org/cronolog/cronolog-1.6.2.tar.gz
- wget http://www.mirrorservice.org/sites/distfiles.macports.org/cronolog-devel/cronolog-1.7.0-beta.tar.gz
'리눅스' 카테고리의 다른 글
MySQL 클라이언트 실행 시 libtinfo.so.5 라이브러리 오류 (0) | 2013.08.27 |
---|---|
Nginx와 Tomcat 클러스터를 구성하는 방법 (0) | 2013.08.19 |
MySQL [error] cannot remove `libtoolT': No such file or directory 오류 (0) | 2013.08.18 |
CentOS 7에서 MySQL 8을 바이너리 파일로 설치하는 방법 (0) | 2013.08.17 |
CentOS 6.4 Linux + Apache + Apache Tomcat 연동_u1 (2) | 2013.08.17 |