반응형
아파치는 에러가 발생한 경우에 에러 로그 파일에 출력한다. 또한 로그 레벨을 설정하여 필요시에 디버깅, trace 등 상세한 로그를 출력하여 이슈 해결하는데 활용할 수 있다.
아파치 구성파일에 로그 레벨(LogLevel) 과 에러 파일(ErrorLog) 위치정보를 설정한다.
1. Error로그 파일 설정
- 설정 방법 (기본)
ErrorLog "디렉터리/파일명" 예시) ErrorLog "/logs/apache/error_log" |
- 설정 방법 (파일 로테이션)
ErrorLog "|/usr/sw/apache/bin/rotatelogs 디렉터리/파일명.확장자형식 주기" 예시) ErrorLog "|/usr/sw/apache/bin/rotatelogs /logs/apache/error_log.%Y%m%d 86400" |
위의 예시는 매일(86400초)마다 파일을 로테이션하고, Error 로그 파일명은 error_log.yyyymmdd 으로 생성된다.
2. Error로그 레벨 설정
- 설정 방법
LogLevel [로그레벨] 예시) LogLevel Info |
참고로, 에러로그 레벨은 - debug, info, notice, warn, error, crit, alert, emerg 등 설정 가능
3. Error로그 포맷
[예시]
[Wed Oct 11 14:32:52 2000] [error] [client 127.0.0.1] client denied by server configuration: /export/home/live/ap/htdocs/test |
[로그 레벨 설명 및 예시]
Level | Description | Example |
---|---|---|
emerg |
Emergencies - system is unusable. | "Child cannot open lock file. Exiting" |
alert |
Action must be taken immediately. | "getpwuid: couldn't determine user name from uid" |
crit |
Critical Conditions. | "socket: Failed to get a socket, exiting child" |
error |
Error conditions. | "Premature end of script headers" |
warn |
Warning conditions. | "child process 1234 did not exit, sending another SIGHUP" |
notice |
Normal but significant condition. | "httpd: caught SIGBUS, attempting to dump core in ..." |
info |
Informational. | "Server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers)..." |
debug |
Debug-level messages | "Opening config file ..." |
trace1 |
Trace messages | "proxy: FTP: control connection complete" |
trace2 |
Trace messages | "proxy: CONNECT: sending the CONNECT request to the remote proxy" |
trace3 |
Trace messages | "openssl: Handshake: start" |
trace4 |
Trace messages | "read from buffered SSL brigade, mode 0, 17 bytes" |
trace5 |
Trace messages | "map lookup FAILED: map=rewritemap key=keyname" |
trace6 |
Trace messages | "cache lookup FAILED, forcing new map lookup" |
trace7 |
Trace messages, dumping large amounts of data | "| 0000: 02 23 44 30 13 40 ac 34 df 3d bf 9a 19 49 39 15 |" |
trace8 |
Trace messages, dumping large amounts of data | "| 0000: 02 23 44 30 13 40 ac 34 df 3d bf 9a 19 49 39 15 |" |
4. Error로그 포맷 변경
Apache 2.4에 신규로 추가된 기능으로 ErrorLogFormat 을 설정할 수 있어 원하는 형식으로 에러로그를 출력할 수 있음.
#Simple example
ErrorLogFormat "[%t] [%l] [pid %P] %F: %E: [client %a] %M"
[참조] https://httpd.apache.org/docs/2.4/mod/core.html#errorlogformat
'웹서버 > Apache' 카테고리의 다른 글
[Tips] 일반 계정으로 80 포트 서비스 하기 (0) | 2022.03.06 |
---|---|
[Tips] Apache 프로세스 user/group에 별도 설정 방법 (0) | 2022.03.06 |
[Tips] SSL 인증서 만료기간 확인하는 방법 (1) | 2021.11.08 |
[정보] Apache 모니터링 툴 - ApacheTop (0) | 2021.09.11 |
[Tips] Apache 웹서버에 gzip 압축 적용하기 (0) | 2021.08.26 |