설치및구동
2.1. 설치 방법
1. 패키지 다운로드
2. 시스템 환경 변수 설정
- 필수 환경 변수
- EXEM_DOTNET_PATH=exem 폴더까지의 경로 설정 ex)C:\workspace\package\exem
- EXEM_DOTNET_PROFILE_TARGET_PROCESS=Exem.DotNet.Profiler가 타겟으로 할 프로세스 설정 ex)w3wp.exe
- 선택 환경 변수
- EXEM_DOTNET_DEBUG=Exem.DotNet.Profiler의 디버그 로그 옵션 ex)true
- EXEM_DOTNET_DEBUG2=Exem.DotNet.Agent의 디버그 로그 옵션 (Agent Id 발급 이전 까지의 로깅) ex)true
3. 런타임 라이브러리 추가 및 DotNet 에이전트 설치
- 최신 Visual C++ 재배포 패키지 설치=tools/Visual Studio 2017 C++ Redistributable 폴더내에 프로세서에 맞는 아키텍처 설치
- Exem.DotNet.Profiler를 레지스트리 명령 구성 요소로 등록=tools/dll_regsvr/DLL_Install.bat 파일 관리자 권한으로 실행
- Exem.DotNet.Agent GAC 등록=tools/Assembly/assembly_regist.bat 파일 관리자 권한으로 실행 (x86의 경우 assembly_regist_x86.bat 실행)
- exem-dotnet-agent 서비스 등록=tools/profile_for_service_start.bat 파일 관리자 권한으로 실행
3-1. 3.0.3 패키지 이후에 설치 가능한 방법 (시스템 환경변수 설정 및 설치 간편화)
- 최신 Visual C++ 재배포 패키지 설치=tools/Visual Studio 2017 C++ Redistributable 폴더내에 프로세서에 맞는 아키텍처 설치
- netfw_agent_install.bat 배치파일 관리자 권한으로 실행
4. 게더 주소 설정
- config/net.conf 파일의 DG_ADDR 옵션에 IP:port 설정
2.2 제거 방법
1. 제거 전 확인 사항
- 관리자 권한 명령 프롬프트 또는 배치 실행 권한이 필요합니다.
- 대상 서비스 또는 IIS worker process가 동작 중이면 제거 직후 재기동 여부를 확인합니다.
- 패키지 경로가 유지된 상태에서 제거하는 것이 안전합니다. 제거 배치는
EXEM_DOTNETFW_HOME또는 시스템 레지스트리의 동일 값을 참조합니다.
2. 권장 제거 방법
tools/netfw_agent_uninstall.bat를 관리자 권한으로 실행
이 배치는 아래 작업을 순서대로 수행합니다.
Exem.DotNetFw.Service.exe --standalone-stop호출- GAC 등록된 어셈블리 제거
- profiler DLL COM 등록 해제
- 시스템 환경 변수 삭제
삭제 대상 환경 변수:
EXEM_DOTNETFW_HOMEEXEM_DOTNETFW_DEBUGEXEM_DOTNETFW_DEBUG2EXEM_DOTNET_PROFILE_TARGET_PROCESSEXEM_DOTNET_RETRY_COUNT
3. 수동 제거 방법
3-1. 에이전트 서비스 중지
tools/profile_for_service_stop.bat를 관리자 권한으로 실행
이 스크립트는 아래 명령을 호출합니다.
binary/Exem.DotNetFw.Service.exe --standalone-stop
3-2. GAC 등록 어셈블리 제거
- x64:
tools/Assembly/assembly_remove.bat - x86:
tools/Assembly/assembly_remove_x86.bat
제거 대상:
Exem.DotNetFw.Agentlog4netSystem.BuffersSystem.Runtime.CompilerServices.UnsafeSystem.MemoryGoogle.Protobuf
3-3. profiler DLL 등록 해제
tools/dll_regsvr/DLL_Remove.bat를 관리자 권한으로 실행
내부적으로 아래와 같이 동작합니다.
tools/dll_regsvr/DLL_Regsvr.bat -uExem.DotNetFw.Profiler.x86.dll,Exem.DotNetFw.Profiler.x64.dll등록 해제
3-4. 시스템 환경 변수 삭제
아래 시스템 환경 변수를 삭제합니다.
EXEM_DOTNETFW_HOMEEXEM_DOTNETFW_DEBUGEXEM_DOTNETFW_DEBUG2EXEM_DOTNET_PROFILE_TARGET_PROCESSEXEM_DOTNET_RETRY_COUNT
예시:
reg delete "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment" /v EXEM_DOTNETFW_HOME /f
reg delete "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment" /v EXEM_DOTNETFW_DEBUG /f
reg delete "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment" /v EXEM_DOTNETFW_DEBUG2 /f
reg delete "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment" /v EXEM_DOTNET_PROFILE_TARGET_PROCESS /f
reg delete "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment" /v EXEM_DOTNET_RETRY_COUNT /f