이 장에서는 IIS 웹 응용 프로그램을 모니터링하는 방법을 설명한다.
에이전트 구성
구성 환경
아래의 표는 제니퍼 에이전트 설치에 따른 설치자 이해를 돕기 위해 제니퍼 에이전트가 설치될 서버의 환경 정보를 보여주고 있다. 본 설치 가이드는 [표 1]의 환경 값을 기준으로 설명되며, 실제 작업 시는 사용자 서버의 환경 정보에 맞추어 설치작업을 진행해야 한다.
구분 | 대상 |
---|---|
제니퍼 에이전트 홈 디렉토리 | C:\Jennifer |
제니퍼 서버 IP Address | 192.168.0.139 |
web.config 및 conf 파일 구성
제니퍼 에이전트가 시스템에 설치된 후, 모니터링 하려는 응용 프로그램을 대상으로 web.config을 변경하고, 1:1 관계로 ”.conf”파일을 하나씩 지정한다.
모니터링 대상이 되는 응용 프로그램에 대해서는 응용 프로그램의 단위 를 참조한다.
하나의 응용 프로그램만 모니터링 할 경우
conf 파일 설정
“C:\Jennifer\agent.net\conf\app_pool.conf” 파일에서 제니퍼 서버 주소를 명시적으로 지정해 준다.
udp_server_host = 192.168.0.139
모니터링 대상이 되는 응용 프로그램을 위해 제니퍼 서버에서 식별할 고유 이름을 제공한다.
agent_pool=N10:9000
agent_pool 값은 ”[식별자]:[포트번호]” 형식으로, 2개 이상을 지정하는 경우 컴마(,)를 구분자로 연결할 수 있다.
이 때, 만약 해당 응용 프로그램을 호스팅 하는 “AppPool” 의 Web Garden 수가 2개라면 그 수에 해당하는 agent_pool값을 설정해야 한다. (Web Garden에 대해서는 Web Garden 수 확인하는 방법을 참조한다.)
agent_pool=N10:9000,N11:9001
마찬가지로 “Web Garden”의 수가 3이라면 다음과 같이 설정한다.
agent_pool=N10:9000,N11:9001,N12:9002
web.config에 conf파일을 지정
“시작” / “관리도구” / “IIS(인터넷 정보 서비스) 관리자” 를 실행하고, 모니터링 하기를 원하는 대상 응용 프로그램을 선택하고 “속성” 메뉴를 선택한다. 예를 들어, 아래의 화면에서처럼 “웹 사이트” 또는 “웹 가상 응용 프로그램”을 선택해야 한다.
속성창에서 “ASP.NET” 탭을 선택하고 “Edit Configuration…” 버튼을 눌러서 “ASP.NET Configuration Settings” 창을 띄워서 “Add…” 버튼을 누른다.
새로운 값을 입력받는 창에서 다음과 같은 값을 넣는다.
Key: Jennifer.FileName Value: [Step 1]단계에서 구성한 conf 파일명
만약 app_pool.conf 파일을 사용한다면,
Key: Jennifer.FileName Value: app_pool.conf
와 같이 입력하고 “확인” 버튼을 누른다. 이렇게 입력되고 나면, web.config 파일의 내용에 다음과 같은 설정이 추가된다.
<appSettings> <!-- web.config에 이미 appSettings 노드가 있다면 내부에 아래의 내용만 추가해 준다. --> <add key="Jennifer.FileName" value="app_pool.conf" /> </appSettings>
따라서, IIS 관리자에서 제공되는 UI를 통해서 입력될 뿐만 아니라 메모장 등의 편집기를 통해서 직접 내용을 추가하는 것이 가능하다.
Windows Server 2008의 경우, Windws Server 2008에서 web.config에 conf파일을 지정하는 방법 을 참고한다.
w3wp.exe 재실행
“iisreset” 을 실행하여 변경 사항을 응용 프로그램에 반영한다.
두 개 이상의 응용 프로그램을 모니터링 할 경우
응용 프로그램 수에 따라 conf 파일 생성
모니터링 대상이 2개 이상이라면 그 수에 맞게 conf 파일을 생성해 준다. 예를 들어, 응용 프로그램이 3개라면 다음과 같이 3개의 conf 파일을 생성해 두어야 한다.
C:\Jennifer\agent.net\conf\app_pool.conf
C:\Jennifer\agent.net\conf\app_pool_2.conf
C:\Jennifer\agent.net\conf\app_pool_3.conf
이름 규칙은 없으며 간단히 기존의 app_pool.conf 파일을 복사해서 다른 이름으로 설정하면 된다.
conf 파일의 내용 설정
하나의 응용 프로그램만 모니터링 할 경우의 ”[Step 1]“에서 설명한 데로 udp_server_host 값과 agent_pool 값을 모니터링 대상이 되는 응용 프로그램의 상황에 맞게 설정한다.
web.config에 conf 파일을 지정
하나의 응용 프로그램만 모니터링 할 경우의 ”[Step 2]“에서 설명한 데로 개별 응용 프로그램에 속한 web.config 마다 다음과 같이 <add />로 연결해 준다.
<appSettings> <add key="Jennifer.FileName" value="app_pool.conf" /> </appSettings>
<appSettings> <add key="Jennifer.FileName" value="app_pool_2.conf" /> </appSettings>
<appSettings> <add key="Jennifer.FileName" value="app_pool_3.conf" /> </appSettings>
w3wp.exe 재실행
“iisreset” 을 실행하여 변경 사항을 응용 프로그램에 반영한다.
에이전트 구성 제거
제품 설치는 그대로 유지하고, 모니터링만을 그만 두려는 경우 web.config 에 구성한 Jennifer.FileName 값을 삭제해서 .conf 파일과의 관계를 끊어주면 모니터링이 중지된다.
설정 제거
웹 응용 프로그램의 web.config 에서 제니퍼 에이전트 설정을 지운다.
<?xmlversion"1.0"?> <configurationxmlns"http://schemas.microsoft.com/.NetConfiguration/v2.0"> … [생략] … <appSettings> <!--add key="Jennifer.FileName" value="app_pool.conf" /--> </appSettings> … [생략] … </configuration>
iis 재실행
만약, 서비스 중인 웹 응용 프로그램이 있다면 “iisreset” 명령어를 실행해서 모니터링이 중지된 서비스가 실행되도록 한다.