Tomcat Web Application 모니터링 툴 – javamelody 설정 방법
Tomcat Web Application 모니터링 툴 – javamelody 설정 방법(펌)
Javamelody(https://github.com/javamelody/javamelody/wiki)
1. Jar 설정
WEB-INF/lib 내 javamedloy.zip내의 javamelody.jar와 jrobin-x.jar를 복사한다.
내 경우는 maven 을 사용하므로, 기존의 pom.xml에 다음과 같이 dependency를 추가하였다.
1
2
3
4
5
<
dependency
>
<
groupId
>net.bull.javamelody</
groupId
>
<
artifactId
>javamelody-core</
artifactId
>
<
version
>1.43.0</
version
>
</
dependency
>
2. web.xml 설정
기존에 실행하던 웹 애플리케이션을 모니터링/분석해야 하므로, web.xml의 내용을 편집한다.
보통 web.xml에서는 선언된 순서로 우선순위를 지니므로, 다른 서블릿 선언보다 위쪽에 다음의
설정을 추가로 기록한다.
1
2
3
4
5
6
7
8
9
10
11
<
filter
>
<
filter-name
>monitoring</
filter-name
>
<
filter-class
>net.bull.javamelody.MonitoringFilter</
filter-class
>
</
filter
>
<
filter-mapping
>
<
filter-name
>monitoring</
filter-name
>
<
url-pattern
>/*</
url-pattern
>
</
filter-mapping
>
<
listener
>
<
listener-class
>net.bull.javamelody.SessionListener</
listener-class
>
</
listener
>
3. 동작 확인
기본 설정은 이것으로 일단 끝!
이제 web application을 실행시키자.
1
http://<host>/<context>/monitoring
과 같이 실행시키면, 기존 사이트에 대한 모니터링 페이지가 정상 적으로 보일 것이다.
대략 다음과 같은 화면이 뜬다.
http://javamelody.googlecode.com/svn/trunk/javamelody-core/src/site/resources/screenshots/graphs.png
4. 보안설정(ID/Password 기반)
role 기반으로 간략하게 보안 설정을 해보자. web.xml에 다음의 내용을 추가한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<
login-config
>
<
auth-method
>BASIC</
auth-method
>
<
realm-name
>Monitoring</
realm-name
>
</
login-config
>
<
security-role
>
<
role-name
>monitoring</
role-name
>
</
security-role
>
<
security-constraint
>
<
web-resource-collection
>
<
web-resource-name
>Monitoring</
web-resource-name
>
<
url-pattern
>/monitoring</
url-pattern
>
</
web-resource-collection
>
<
auth-constraint
>
<
role-name
>monitoring</
role-name
>
</
auth-constraint
>
</
security-constraint
>
만약, 이대로 tomcat을 restart하고, /monitoring으로 접근한다면, HTTP BASIC Authentication으로 인증 요청을 할 것이다.
5. tomcat-user 추가
위의 인증창에 접근할 수 있는 사용자를 추가하자.
tomcat-users.xml을 찾아 다음과 같이 사용자 정보를 추가한다.
1
2
3
4
5
6
<
tomcat-users
>
..
<
role
rolename
=
"monitoring"
/>
<
user
username
=
"monitoring"
password
=
"monitoring"
roles
=
"monitoring"
/>
..
</
tomcat-users
>
이제 Tomcat을 재시작하고, BASIC authentication popup window가 뜨면, 위의 정보로 인증하고, 처음에 본 모니터링 페이지가 정상적으로 뜨는지 확인한다.
WEB-INF/lib 내 javamedloy.zip내의 javamelody.jar와 jrobin-x.jar를 복사한다.
내 경우는 maven 을 사용하므로, 기존의 pom.xml에 다음과 같이 dependency를 추가하였다.
1
2
3
4
5
| < dependency > < groupId >net.bull.javamelody</ groupId > < artifactId >javamelody-core</ artifactId > < version >1.43.0</ version > </ dependency > |
기존에 실행하던 웹 애플리케이션을 모니터링/분석해야 하므로, web.xml의 내용을 편집한다.
보통 web.xml에서는 선언된 순서로 우선순위를 지니므로, 다른 서블릿 선언보다 위쪽에 다음의
설정을 추가로 기록한다.
1
2
3
4
5
6
7
8
9
10
11
| < filter > < filter-name >monitoring</ filter-name > < filter-class >net.bull.javamelody.MonitoringFilter</ filter-class > </ filter > < filter-mapping > < filter-name >monitoring</ filter-name > < url-pattern >/*</ url-pattern > </ filter-mapping > < listener > < listener-class >net.bull.javamelody.SessionListener</ listener-class > </ listener > |
기본 설정은 이것으로 일단 끝!
이제 web application을 실행시키자.
1
| http://<host>/<context>/monitoring |
대략 다음과 같은 화면이 뜬다.
http://javamelody.googlecode.com/svn/trunk/javamelody-core/src/site/resources/screenshots/graphs.png
role 기반으로 간략하게 보안 설정을 해보자. web.xml에 다음의 내용을 추가한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| < login-config > < auth-method >BASIC</ auth-method > < realm-name >Monitoring</ realm-name > </ login-config > < security-role > < role-name >monitoring</ role-name > </ security-role > < security-constraint > < web-resource-collection > < web-resource-name >Monitoring</ web-resource-name > < url-pattern >/monitoring</ url-pattern > </ web-resource-collection > < auth-constraint > < role-name >monitoring</ role-name > </ auth-constraint > </ security-constraint > |
위의 인증창에 접근할 수 있는 사용자를 추가하자.
tomcat-users.xml을 찾아 다음과 같이 사용자 정보를 추가한다.
1
2
3
4
5
6
| < tomcat-users > .. < role rolename = "monitoring" /> < user username = "monitoring" password = "monitoring" roles = "monitoring" /> .. </ tomcat-users > |
댓글