rotatelogs에 -ㅣ 옵션을 주시면, locale 기반으로 동작되는데, 정확한 시간에 맞춰서 rotate 됩니다.
기존에 아마도 local 정보를 GMT(+9) 로 쓰셨을 것 같습니다. 이 부분이 약간 시간적 오차를 주지 않았나 생각됩니다.
CustomLog "| $APACHE_HTTP_HOME/bin/rotatelogs -l $APACHE_HTTP_HOME/logs/accesslog.%Y%m%d 86400" combined env=!nolog-request
참고로. 현재 회원관리팀에서도 rotatelogs -l 를 써서 하는 것을 가이드 하고 있습니다.^^
김용환 드림
-----Original Message-----
From: "박정일"<sneezer@nhn.com>
To: "김용환"<knight@nhn.com>; "정명진"<mjchong@nhn.com>
Cc: "임수민"<sumin.lim@nhn.com>; "박철우"<zeru17@nhn.com>; "장재완[성능팀]"<jaewan.jang@nhn.com>; "안성화"<ash@nhn.com>; "김도훈"<69nico@nhn.com>; "유치수"<netspider@nhn.com>; "김훈민[산토끼]"<harebox@nhn.com>; "박종빈[생산성혁신]"<jongbhin@nhn.com>; "송창현[승현]"<changsong@nhn.com>; "이상민[WAS고도화TF]"<sangmin.lee@nhn.com>; "김일곤[QA]"<ravenos2@nhn.com>
Sent: 10-11-22(월) 17:09:18
Subject: RE: [네이버me] Apache/Tomcat 설정 확인
<httpd.conf>
1. 삭제하였습니다.
2. 메일개발서버에서 사용하던 것을 그대로 옮겨왔습니다. 알려주신 방법을 택하면 날짜중 중간에 Apache 를 restart 하는 경우 로그 파일이 0:00 분이 아닌 시간에 rotate 될 가능성은 없는지요? 로그 파일은 0:00 분에 rotate 하는 것이 이슈 추적에 편리해서요... 확인 부탁드립니다.
3. 추가해야 할거 같습니다. 정명진과장님 아래의 내용으로 robot.txt 파일 추가 부탁드립니다.
user-agent:*
disallow:/
4. 추가하였습니다.
5. 추가하였습니다.
6. 추가하였습니다.
7. 변경하였습니다.
<vhost>
1. 변경하였습니다.
<server.xml>
1. tomcat instance 갯수 조절할 때 수정하면 될거 같습니다.
2. 기획서 검토하여 변경하도록 하겠습니다.
3. 정명진차장님 검토해 주세요.
감사합니다. ^^
-----------------------------------------------------------------------------
박정일 Park Jungil
메일서비스개발1팀 / 팀장
경기도 성남시 분당구 정자동 178-1 NHN 그린팩토리 17층 463-867
Tel 031-784-2917 Fax 031-784-1100 Mobile 010-7474-6049
Email sneezer@nhn.com Messenger MSN:sneezer@empal.com
-----Original Message-----
From: "김용환"<knight@nhn.com>
To: "정명진"<mjchong@nhn.com>
Cc: "임수민"<sumin.lim@nhn.com>; "박철우"<zeru17@nhn.com>; "장재완[성능팀]"<jaewan.jang@nhn.com>; "안성화"<ash@nhn.com>; "김도훈"<69nico@nhn.com>; "유치수"<netspider@nhn.com>; "김훈민[산토끼]"<harebox@nhn.com>; "박종빈[생산성혁신]"<jongbhin@nhn.com>; "박정일"<sneezer@nhn.com>; "송창현[승현]"<changsong@nhn.com>; "이상민[WAS고도화TF]"<sangmin.lee@nhn.com>; "김일곤[QA]"<ravenos2@nhn.com>
Sent: 10-11-22(월) 16:38:58
Subject: [네이버me] Apache/Tomcat 설정 확인
안녕하세요. 웹플랫폼개발랩의 김용환입니다.
tweb01.me 서버에서 Apache/Tomcat 설정 확인했습니다.
관련해서 내용을 작성했으니, 피드백주시면 감사하겠습니다.
<httpd.conf>
1. 사용하지 않으면, 주석 처리 혹은 삭제해도 될 것 같습니다.
<Directory "/home1/irteam/app/apache-2.2.11/htdocs">
</Directory>
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
<FilesMatch "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
<IfModule alias_module>
</IfModule>
<Directory "/home1/irteam/app/apache-2.2.11/cgi-bin">
</Directory>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
2. apache http 로그 정리 문의
root의 crontab으로 정리하고 계신데요.
궁금증 rotatelogs 를 사용하지 않은 이유가 무엇인지 궁금하네요??
문서에는 아래와 같이 권고하고 있습니다.
SetEnvIfNoCase Request_URI "\.(ico|gif|jpg|swf|png|css|js)$" nolog-request
CustomLog "| $APACHE_HTTP_HOME/bin/rotatelogs -l $APACHE_HTTP_HOME/logs/accesslog.%Y%m%d 86400" combined env=!nolog-request
3. 검색 로봇에서 접근해서 정보수집하도록 허락하신거죠?
robot.txt 파일이 없더군요~
4. apache server-status 정보
apache server-status 정보는 아예 빼신 것 같은데요~
-> 당장은 사용하지 않아도 됩니다만, 추후, 운영하면서 dead-lock을 확인하거나, 아파치 request현황에 대한 정보를 볼 수 있는 자료로 사용될 수 있으니, 참조하세요~
현재 표준화 문서에서는 아래와 같이 가이드하고 있습니다.
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from <사내IP>
</Location>
5. TraceEnable 설정
Cross-Site Tracing(XST) 공격에 노출되지 않도록 Trace 메소드를 Off로 하면 좋습니다.
-> TraceEnable Off
6. apache 정보 노출
현재 response header에 server 정보가 노출됨
Server Apache/2.2.15 (Unix) mod_ssl/2.2.15 OpenSSL/1.0.0a mod_jk/1.2.18
-> 다음을 추가해야 서버 정보가 노출되지 않습니다.
ServerTokens Prod
ServerSignature Off
7. mod_jk 로그 관련.
여러개의 tomcat을 구성할 때, 다음의 로그를 넣어주는 것이 좋음. 디버깅할 때 많은 도움이 됩니다.
표준화 문서에는 아래와 같이 가이드 하고 있습니다.
<IfModule mod_jk.c>
JkWorkersFile "$APACHE_HTTP_HOME/conf/workers.properties"
JkLogFile "| $APACHE_HTTP_HOME /bin/rotatelogs –l $APACHE_HTTP_HOME/logs/mod_jk.log. %y%m%d 86400 540 "
JkLogLevel error
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkRequestLogFormat "%w %V %T"
</IfModule>
8.mod_jk timeout설정
-> 나중에 운영하시면서 이슈가 생기면, 문서를 통해서 socket_timeout 설정외 다른 timeout을 더 지정할 수 있습니다.
9. maxclient 설정
<IfModule mpm_prefork_module>
StartServers 32
MinSpareServers 24
MaxSpareServers 48
ServerLimit 1536
MaxClients 1536
MaxRequestsPerChild 2000
</IfModule>
위의 설정은 3개의 톰캣을 가정하고 나온 설정같습니다. 제가 언급드릴 만한 내용은 아니고, 톰캣의 connector 개수와 잘 맞추는 것이 중요하기 때문에 이상민차장님께서 언급해주시리라 믿습니다.
<vhost>
1. rewrite Rule 설정
RewriteRule ^/$ /index.nhn [PT]
=> RewriteRule ^/$ /index.nhn [PT, L]
새로운 rewriteRule을 추가하면서 이슈가 생길 수 있어서, L 이라는 부분을 추가하면 좋을 것 같습니다.
<server.xml>
<Connector prot="8009"
minThreads="128" maxThreads="512"
enableLookups="false" redirectPort="8443"
acceptCount="100" debug="0"
connectionTimeout="120000"
useBodyEncodingForURI="true"
maxPostSize="10485760"
protocol="AJP/1.3" URIEncoding="UTF-8"/>
1. connectionTimeout이 120초입니다. 이 부분은 적절한 수치로 해주시는 것이 좋을 것 같네요.
10초 (10000)으로 수정해주시면 어떨까 싶습니다.
2. post 방식으로 upload할 때, 10Mbytes로 설정하셨습니다. 파일 용량 정책이나, 파일 용량이 커져서 문제가 되거나, maxPostSize를 수정해 주셔야 할 것 같습니다.
<Host name="desk.naver.com" appBase="/home1/irteam/webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context docBase="/home1/irteam/webapps" path="/" reloadable="true"/>
3. 명시적인 restart를 할 생각이시면, Host 설정의 unpackWARs, autoDeploy 설정과 Context의 reloadable 설정은 모두 false로 하는 게 좋습니다.
'etc' 카테고리의 다른 글
월요일 오후 서점 (0) | 2010.12.20 |
---|---|
살다보면 (0) | 2010.12.18 |
cookie header (0) | 2010.11.26 |
code template 사용방법 (0) | 2010.10.22 |
띠정보 (0) | 2010.10.22 |