JENNIFER .NET 프로모션 안내

환영합니다

JENNIFER .NET 프로모션에 선정되신 것을 환영합니다. 아래 절차를 통해 https://9net.jennifersoft.com으로 .NET 애플리케이션 모니터링을 할 수 있습니다.

아래 절차를 통한 에이전트 설치가 어려우신 분은 promotion.kr@jennifersoft.com으로 문의 주시기 바랍니다. 원격 접속(http://113366.com/jennifer)을 통해 에이전트 설치를 지원합니다.

제니퍼는 크롬(Chrome) 브라우저에 최적화 되어 있습니다. IE나 Firefox 사용 시 일부 기능에 문제가 있을 수 있습니다.

JENNIFER 접속

  1. 크롬(Chrome) 브라우저를 사용해 https://9net.jennifersoft.com으로 접속합니다.

  2. 메일에 명시된 ID와 임시 비밀 번호로 접속합니다.

  3. 접속 후 대시 보드 우측 상단에 위치한 사용자 메뉴 > 계정관리 > 내 계정을 이용해 비밀번호를 변경합니다.

  4. 이후 에이전트 설치를 완료하면 대시 보드에서 .NET 애플리케이션 모니터링을 할 수 있습니다.

.NET 에이전트 설치

닷넷 에이전트 다운로드 경로: https://cdn.jennifersoft.com/public/promotion/kr/agent.net.zip

에이전트와 제니퍼 서버는 TCP 포트 5000번으로 통신합니다. JENNIFER 서버 5000번 포트로 접속할 수 있도록 방화벽 설정이 되어 있는지 확인해 주세요.

만약 모니터링 해야 할 서비스가 여러 개 있다면 매 서비스마다 프로모션을 신청할 필요는 없습니다. 처음 신청 시 메일에 첨부된 Domain ID로 여러 서비스에 대해 에이전트 ID를 다르게 설정해서 모니터링 할 수 있습니다.

설치

제니퍼 닷넷 에이전트의 압축 파일(agent.net.zip)을 해제하면 다음의 파일이 생성됩니다.

윈도우 운영체제 - 일반 서버 및 클라우드의 단독 가상 머신 환경

Installer.exe를 실행해 설치하면 정상적인 경우 다음의 하위 폴더들이 생성됩니다.

디렉터리 설명

디렉터리

설명

bin/

에이전트 실행 파일이 있는 디렉터리

config/

에이전트가 적용되는 응용 프로그램들의 구성 설정 파일을 보관하는 디렉터리

logs/

에이전트 로그 파일이 있는 디렉터리

utility/

유틸리티 실행 파일이 있는 디렉터리

닷넷 에이전트 설치 후 모니터링을 원하는 닷넷 응용 프로그램을 선택해야 합니다. 만약 응용 프로그램 유형이 IIS 웹, NT 서비스, COM+에 속한다면 /bin/IISConfigHelper.exe 도구를 이용하여 쉽게 설정할 수 있고, 반면 그 이외의 독립 실행 응용 프로그램이라면 수작업으로 직접 설정 파일을 구성해야 합니다.

IIS 웹 응용 프로그램을 위한 구성 방법

IIS 웹 응용 프로그램은 응용 프로그램 풀(Application Pool) 단위로 작업자 프로세스(w3wp.exe)가 관리됩니다. 제니퍼 닷넷 에이전트는 w3wp.exe 내부에 활성화되기 때문에 IIS와 마찬가지로 응용 프로그램 풀 별로 모니터링 단위를 관리합니다.

예를 들어, 다음 화면에는 ".NET 웹 응용 프로그램"이 있는 응용 프로그램 풀이 "cshtml_web", "DefaultAppPool", "Jennifer40.WebSiteTest4"가 등록된 것을 보여줍니다.

IIS에 등록된 응용 프로그램 풀(Application Pool) 목록

그림에서 보면, ".NET v4.5", ".NET v4.5 Classic"은 등록된 웹 응용 프로그램이 없으므로 제니퍼 닷넷이 설치될 수 없습니다.

이런 환경에서 /bin/IISConfigHelper.exe 도구를 실행하면 다음과 같이 제니퍼 닷넷이 활성화 가능한 3개의 응용 프로그램 풀 이름을 "IIS" 노드에 보여줍니다.

제니퍼 닷넷이 설치 가능한 응용 프로그램 풀 목록

설치를 원하는 응용 프로그램 풀을 마우스로 선택하고 우측 버튼을 누르면 "Install" 메뉴가 나오고, 그 메뉴를 선택해서 실행하면 다음 화면과 같이 필수 설정 값들을 채울 수 있는 화면이 나옵니다.

선택된 응용 프로그램 풀에 제니퍼 닷넷 에이전트를 적용

필수 입력 값 설명

필드 명

설명

Jennifer Server

9net.jennifersoft.com


(제니퍼 데이터 서버가 설치된 컴퓨터의 DNS 또는 IP 주소)

Domain Id

프로모션 메일에 포함된 domain_id 값

Start Instance Id

제니퍼 에이전트가 활성화되는 응용 프로그램에 대한 고유 식별자.


데이터 서버에 연결된 모든 에이전트들의 ID는 고유해야 하며 1개의 Domain 당 최대 100개의 Instance 접속이 가능. (100개 이후의 Instance가 설정된 경우 새로운 에이전트는 접속이 거부됩니다.)


IIS 웹 응용 프로그램의 경우 "Web Garden" 설정에 따라 여러 개의 w3wp.exe 프로세스가 활성화 될 수 있으므로 범위를 지정하게 됩니다.

Auto ID

설정하면 에이전트의 Instance ID를 서버로부터 자동 할당합니다.

Auto Select

IIS 웹 응용 프로그램인 경우에만 옵션이 활성화되며, 이를 선택해 두면 해당 응용 프로그램 풀(Application Pool)에 속한 모든 웹 애플리케이션을 모니터링합니다.


이 설정을 해제하면, 하단의 목록 상자에 나열된 웹 애플리케이션 중 원하는 항목을 선택해 모니터링하는 것이 가능합니다.

원하는 값을 설정하면 이를 반영하기 위해 반드시 "저장(Save)" 버튼을 눌러줍니다. 설정된 값은 [에이전트 설치 폴더]\config\iis 폴더 하위에 [응용 프로그램 풀].conf 파일로 저장됩니다.

리눅스 - .NET Core/5/6 환경

리눅스 환경에서 설치를 진행하려면 .NET Core 3.1 이상의 런타임이 설치되어 있어야 하고 다음과 같이 명령어를 수행하면,

$ sudo dotnet agent-installer.dll

정상적으로 설치된 경우 하위에 다음의 디렉터리들이 생성됩니다.

디렉터리 설명

디렉터리

설명

bin/

에이전트 실행 파일이 있는 디렉터리

config/

에이전트가 적용되는 응용 프로그램들의 구성 설정 파일을 보관하는 디렉터리

logs/

에이전트 로그 파일이 있는 디렉터리

utility/

유틸리티 실행 파일이 있는 디렉터리

모니터링을 위한 설정 파일 구성

리눅스 환경에서 응용 프로그램 모니터링을 위해서는 2가지 작업을 해야 합니다. 첫 번째는 conf 파일을 생성하는 것이고, 두 번째는 해당 응용 프로그램에 적용할 환경 변수를 구성합니다.

./config 디렉터리에 conf 파일 생성

이제 어떤 응용 프로그램을 모니터링해야할지 결정하고 그에 대해 config 디렉터리 내에 응용 프로그램 이름과 대응하는 conf 구성 정보 파일을 만들어야만 제니퍼 닷넷 에이전트가 동작하게 됩니다. 이때 conf 파일명은 응용 프로그램의 실행 유형에 따라 정해집니다. 대표적으로 .NET Core 응용 프로그램은 2가지 유형으로 나뉘는데,

[dotnet 실행 파일에 호스팅되는 경우]
$ dotnet [...net.dll...]

예)
$ dotnet CoreCoreLin.dll
[ELF 실행 파일에 호스팅되는 경우]
$ [...net_elf...]

예)
$ .\CoreCoreLin

첫 번째 유형의 경우 CoreCoreLin.dll.conf 파일로, 두 번째라면 CoreCoreLin.conf 파일로 지정합니다. conf 파일의 내용은 app_pool.conf의 내용을 복사해 제니퍼 데이터 서버의 환경에 따른 설정으로 변경합니다.

server_address = 9net.jennifersoft.com
server_port = 5000
domain_id = ... 프로모션 메일에 포함된 domain_id 값 ...
inst_id = ... 에이전트 ID ...
inst_id_pool = 1
환경 변수 구성

프로세스에 다음의 환경 변수가 적용되어야 합니다.

CORECLR_ENABLE_PROFILING=1
CORECLR_PROFILER={6C7CAF0F-D0E5-4274-A71B-6551761BBDC8}
CORECLR_PROFILER_PATH=libAriesProfiler.so

만약 shell 파일을 통해 실행하는 닷넷 응용 프로그램이라면 .sh 파일 내에 다음과 같이 export 명령어를 포함합니다.

export CORECLR_ENABLE_PROFILING=1
export CORECLR_PROFILER={6C7CAF0F-D0E5-4274-A71B-6551761BBDC8}
export CORECLR_PROFILER_PATH=libAriesProfiler.so

대개의 경우 리눅스에서 구동하는 .NET Core 웹 응용 프로그램은 /etc/systemd/system 디렉터리에 service 파일로 등록되었을 텐데, 이런 경우에는 service 파일 내에 다음과 같이 환경 변수 구성을 추가합니다.

[Service]
WorkingDirectory=/home/tusr/corecorelin
ExecStart=/usr/share/dotnet/dotnet /home/tusr/corecorelin/CoreCoreLin.dll
KillSignal=SIGINT
SyslogIdentifier=dotnet-corecorelin
Environment=CORECLR_ENABLE_PROFILING=1
Environment=CORECLR_PROFILER={6C7CAF0F-D0E5-4274-A71B-6551761BBDC8}
Environment=CORECLR_PROFILER_PATH=libAriesProfiler.so

닷넷 에이전트 적용 및 해제 방법

에이전트 설치를 하고 모니터링을 원하는 응용 프로그램에 대해 설정 파일을 만들었다면 이후 프로세스를 다시 실행할때 부터 모니터링이 진행됩니다. (예를 들어, IIS 웹 사이트라면 "iisreset" 명령으로 w3wp.exe를 재시작합니다.)

반대로 닷넷 에이전트 적용을 해제하고 싶다면 conf 설정 파일을 제거(또는 이름 변경)한 후 프로세스를 다시 실행만 하면 됩니다. (IISConfigHelper 응용 프로그램에서 제공되는 "Uninstall" 메뉴는 설정 파일만 제거하므로 프로세스 재시작은 별도로 수행해야 합니다.)

.NET 에이전트 제거

윈도우 환경

Installer.exe 실행 시 "/u" 인자를 주면 제거됩니다. (또는 Installer.exe로 설치했을 때 함께 생성된 uninstall.bat 파일을 실행합니다.)

> Installer.exe /u
또는
> uninstall.bat

이는 시스템에 등록된 정보만 제거하는 것으로 현재 모니터링 중인 프로세스는 여전히 제니퍼 에이전트의 모듈을 사용 중일 수 있습니다.

따라서, 기존에 모니터링되고 있는 프로그램이 있다면 프로세스(EXE) 종료 후 다시 실행해야 제니퍼 모듈이 완전하게 내려갑니다. (예를 들어, IIS 웹 사이트인 경우 반드시 "iisreset" 명령을 실행해야 합니다.)

제니퍼 닷넷이 설치된 폴더는 모든 프로세스에서 에이전트 사용이 해제되고 난 후에야 삭제할 수 있습니다.

만약 삭제가 안 된다면 제니퍼 모듈이 올라간 프로세스가 여전히 실행 중인지를 확인하고, 있다면 종료 후 다시 삭제를 시도합니다. (또는, 서버를 재부팅한 후 안전하게 삭제할 수 있습니다.)

리눅스 환경

agent-installer.dll 실행 시 "/u" 인자를 주면 제거됩니다. (또는 "dotnet agent-installer.dll"로 설치했을 때 함께 생성된 uninstall.sh 파일을 실행해도 됩니다.)

$ sudo dotnet agent-installer.dll /u

또는

$ sudo ./uninstaller.sh

이는 시스템에 등록된 정보만 제거하는 것으로 현재 모니터링 중인 프로세스는 여전히 제니퍼 에이전트의 모듈을 사용하고 있는 중입니다.

따라서, 기존에 모니터링되고 있는 프로그램이 있다면 프로세스 종료 후 다시 실행해야 제니퍼 모듈이 완전하게 내려갑니다.

JENNIFER 따라하기

아래 '실시간 데이터 조회하기', '과거 데이터 조회하기', '통계 보기'를 통해 JENNIFER의 컨셉과 간략한 사용법을 학습할 수 있습니다.

제니퍼를 처음 사용하시는 분들을 위해 원격 접속(http://113366.com/jennifer)을 통해 주요 사용 방법을 안내 합니다. promotion.kr@jennifersoft.com으로 연락 주시기 바랍니다.

매뉴얼을 통해 제니퍼의 기능 활용방법을 확인하실 수 있습니다. 매뉴얼은 모든 제니퍼 화면 우측 상단의 '?' 버튼으로 확인 가능합니다.

제니퍼기능사용하기

실시간 데이터 조회하기

액티브 서비스란 ASP.NET에서 처리 중인 요청을 의미합니다. 액티브 서비스 숫자가 10이라면 현재 처리 중인 요청의 수가 10이라는 것을 의미합니다.

과거 데이터 조회하기

분석 퍼스펙티브로 이동하면 JENNIFER에 저장된 과거 데이터를 조회할 수 있습니다.

통계 보기

통계 화면을 통해 일별, 월별 통계 데이터를 확인할 수 있습니다. 통계 퍼스펙티브로 이동해 일일 방문자, 운영시간 호출 건수등 통계 데이터를 확인하세요.

문제 리포트 및 개선 사항 수렴

JENNIFER .NET 기능에 문제가 있거나 개선할 점이 있으시면 언제든지 promotion.kr@jennifersoft.com 으로 연락 주시기 바랍니다.