.NET Agent Release Notes
- 2026
- 2025
- 2024
2026-11-02
v2.5.7
Fixed OS가 비정상적인 CPU 누적값을 반환하면 에이전트를 재시작할 때까지 호스트 리소스 지표가 수집되지 않던 문제 수정
2026-08-03
v2.5.6
Fixed IL 재작성 시 여러 분기가 공유하는 반환 지점에서 반환값 저장 명령이 누락되어 유효하지 않은 IL이 생성되던 버그 수정
2026-07-10
v2.5.5
New SqlDataAdapter.Fill 계측 추가
New SqlDataAdapter.Update 계측 추가
- 건수는 실제 반영 행 수(
RecordsAffected)로 기록, 기존ExecuteNonQuery후킹과 중복되지 않음
Changed 로그 파일명을 {날짜}-{PID}.log → {날짜}-{GUID}.log로 변경
Fixed 네이티브 프로파일러 안정성 보완
Fixed 로깅 로직 안정성 보완
2026-06-09
v2.5.4
Feature HTTP 응답 상태 코드 수집 추가
- 모든 트랜잭션의 응답 코드(2xx-5xx) 노출
2026-04-21
v2.5.3
New trace_user_using_ip Boolean 옵션 추가
- 기본값
true false로 설정 시, 쿠키 기반 추적이 되도록 활성화
Fixed IIS AppPoolIdentity Global Mutex 권한 오류
- MutexSecurity로 Everyone에게 FullControl 부여, 낮은 권한 프로세스에서도 Global Mutex 생성/획득 가능
2026-02-24
v2.5.2
New Linux OS 지원
- Ubuntu 20.04 이상
Feature DB Step에서 Commit, Rollback 추적 추가
Fixed .NET Framework 미제공 어셈블리 리다이렉션으로 인한 로드 실패 수정
2026-01-26
v2.5.1
Fixed 도메인 데이터 수집 간에 비표준 포트도 함께 수집되도록 수정
2026-01-13
v2.5.0
New .NET Core 9.0 지원
Feature MongoDB(MongoDB.Driver.Core) 모니터링 지원 추가
Feature 모듈의존성 확인 기능 추가
Feature 웹 프레임워크 지원
WCFWebServiceWeb API
Changed 안정성 및 확장성 확보를 위한 에이전트 내부 아키텍처 리팩토링
Fixed AppDomain 리로드 시 메모리 누수가 발생하던 문제 수정
2025-07-22
v2.4.4
Fixed 순환 호출 발생 시, 트랜잭션이 정상적으로 종료되었음에도 불구하고 Lost Connection으로 표시되던 현상 수정
2025-06-25
v2.4.3
New 매트릭스 조회에서 app_context_stat 카테고리 추가
-
app_context_enabled Boolean
- 기본값
false true설정 시app_context_stat수집 기능 전체 활성화
- 기본값
-
app_context_parser
default, prefix, match중 사용default: 기본 파서(첫 번째 경로 세그먼트 추출)prefix: 접두사 매칭 파서(가장 유연함)match: 정확한 매칭 파서(완전 일치만)
-
app_context_parser_reset Number
- 기본값
0 - 파서의 내부 캐시와 설정을 강제로 재설정하는 카운터
- 기본값
app_context_path_depth Number
- 기본값
1 - URL에서 추출할 경로 세그먼트의 깊이 지정(default 파서에서만 사용)
- 기본값
app_context_path_set String
- 모니터링할 경로와 해당 이름을 정의하는 매핑 설정하고, 여러 개 설정할 경우
,(쉼표)로 구분함 - 예:
name1@url1,name2@url2,url3,name4@url4
- 모니터링할 경로와 해당 이름을 정의하는 매핑 설정하고, 여러 개 설정할 경우
New URL 정규화한 경우, 원본 URL이 step에서도 노출되는 옵션 추가
-
step_origin_url_enabled Boolean
- 기본값
false
- 기본값
Fixed URL 정규화한 경우, 레코드 요약에서 원본 URL이 노출되지 않던 현상 수정
2025-04-26
v2.4.2
New 설치되는 서버의 닷넷 런타임 버전에 따라서 자동으로 버전이 선택되도록 수정
Fixed ISAPI 필터 기반 트랜잭션에서 오류가 발생한 경우도 히트맵에 푸른색으로 표시되는 버그 수정
2025-03-21
v2.4.1
New ISAPI 필터 기반 트랜잭션 추적 기능 추가
2025-03-04
v2.4.0
New ISAPI 필터를 활용하여 WCF, ASP, CGI, ISAPI 등의 트랜잭션 모니터링 지원
Fixed WebForm에서 X-Forwarded-For가 적용되지 않는 문제 수정
2025-01-23
v2.3.9
Changed .NET framework 4.5 하위 호환성 개선
Changed Method hook 프로세스 개선
2025-01-15
v2.3.8
New LINQ to SQL(System.Data.Linq) 모니터링 지원
New 모니터링에서 제외할 section 이름을 선택할 수 있는 에이전트 옵션 추가
disabled_section_names=AspNetCoreMvc2,AspNetMvc,AspNetWebApi2
2개 이상의 값을 설정하려면 쉼표(,)를 구분자로 이용하세요.
선택할 수 있는 section 이름은 다음과 같습니다.
AspNetCoreMvc2, AspNetMvc, AspNetWebApi2, AspNetWebForm, DbCommand, IDbCommand, SqlCommand, OracleCommand, WebRequest, HttpMessageHandler, HttpClient, WebClient, ServiceStackRedis, StackExchangeRedis, StackExchangeRedis2, LINQ
옵션을 적용한 후 IIS 서비스를 재시작하세요.
2025-01-02
v2.3.7
New .NET Core에 MySQL 드라이버 지원 추가
ADO.NET을 통한 MySQL 드라이버뿐만 아니라 MySQL Connector/Net과 같은 직접적인 MySQL 데이터 공급자도 지원합니다.
Fixed .NET Core에서 클라이언트 IP 주소가 0.0.0.0으로 표시되는 오류 수정
2024-11-25
v2.3.6
New 에이전트 옵션 추가
webservice_method_prefix_realtime Boolean
Changed webservice_method_prefix 옵션을 통해 수집하는 트랜잭션 처리 방식 변경
-
재귀적인 호출에 의한 오류 발생을 방지하기 위해 트랜잭션 안에서 수집되는 다른
webservice_method_prefix메소드는 무시하도록 수정 -
완료되지 않은 트랜잭션은 무시하도록 수정
Changed 개별로 다운로드를 제공했던 .NET Framework와 .NET Core 환경의 설치 프로그램 병합
2024-11-04
v2.3.5
New .NET Core에서 User Transaction 기능 추가
-
다음 예시를 참조하세요. 접속자 수 모니터링이 필요하지 않을 경우 사용자 식별 항목에 빈 문자열을 입력하세요.
using System;
class Program
{
static void Main(string[] args)
{
// 트레이스 시작 (도메인, Url, 사용자식별)
WhatapDiagnostic.TraceStart("127.0.0.1", "/api/test", "user123");
try
{
// 스텝 시작
WhatapDiagnostic.StepStart("test Step");
// 사용자 코드 영역
// 스텝 종료
WhatapDiagnostic.StepStop();
}
catch (Exception ex)
{
// 예외 발생 시 진단 정보에 예외 기록
WhatapDiagnostic.SetExceptionForTrace(ex);
}
finally
{
// 트레이스 종료
WhatapDiagnostic.TraceStop();
}
}
}노트.NET Framework 지원은 준비 중입니다.
-
WhatapDiagnostic 코드는 다음과 같습니다. 형식은 상관없이
diagnosticSource.Write(…)내용만 정확하면 됩니다.using System.Diagnostics;å
public static class WhatapDiagnostic
{
private static readonly DiagnosticSource diagnosticSource = new DiagnosticListener("WhatapDiagnosticListener");
public static void TraceStart(string host, string url, string userId)
{
if (diagnosticSource.IsEnabled("Whatap.Diagnostic.Trace.Start"))
{
diagnosticSource.Write("Whatap.Diagnostic.Trace.Start", new { Host = host, Url = url, UserId = userId });
Console.WriteLine("Whatap.Diagnostic.Trace.Start!");
}
}
public static void SetExceptionForTrace(Exception exception)
{
if (diagnosticSource.IsEnabled("Whatap.Diagnostic.Trace.Exception"))
{
diagnosticSource.Write("Whatap.Diagnostic.Trace.Exception", exception);
}
}
public static void StepStart(string message)
{
diagnosticSource.Write("Whatap.Diagnostic.Step.Start", message);
}
public static void StepStop()
{
diagnosticSource.Write("Whatap.Diagnostic.Step.Stop", new { });
}
public static void TraceStop()
{
if (diagnosticSource.IsEnabled("Whatap.Diagnostic.Trace.Stop"))
{
diagnosticSource.Write("Whatap.Diagnostic.Trace.Stop", new { });
}
}
public static void UserLog(string message)
{
if (diagnosticSource.IsEnabled("Whatap.Diagnostic.UserLog"))
{
diagnosticSource.Write("Whatap.Diagnostic.UserLog", message);
}
}
}
New Method hook 지원
-
메소드 이름을 지정해서 모니터링할 수 있습니다. 다음 설정을 참조하세요.
hook_methods_enabled=true
hook_methods_prefix=System.Net.Http.HttpClient., System.Net.WebRequest., System.Data., System.Net.Http.
hook_methods_ignores=get,set-
hook_methods_enabled옵션의 값을true로 설정하세요. -
hook_methods_prefix옵션의 값은 앞부분 일치 시 모니터링 대상이 됩니다. 콤마(,)로 분리하세요. -
hook_methods_ignore옵션의 값은 앞부분 일치 시 모니터링 대상에서 제외됩니다.
-
New WebClient.DownloadString 메소드 모니터링 지원 추가
Changed response body 옵션 처리
-
문자열 인코딩 관련 오류가 발견되어 기본 설정 대신 활성화 옵션이 추가되었습니다.
-
profile_http_response_body_enabled옵션의 기본값은false입니다.
Changed .NET Framework 버전의 Redis 출력 포맷 변경
- .Net Core의 출력 방식과 통일하여 꾸미기 효과가 적용되었습니다.
Deprecate trace_db_command_methods 옵션 삭제
-
모니터링 대상 자동 처리로 현재 해당 옵션이 필요하지 않습니다.
-
모니터링 대상에서 제외된 메소드는 Method hook을 이용하여 처리할 수 있습니다.
hook_methods_enabled=true
hook_methods_prefix=System.Data., ...
2024-10-02
v2.3.4
Fixed 최근 추가된 모니터링 대상 중 CancellationToken 관련 메소드 임시 삭제
New .NET Core에서 expand_transaction_level 설정 지원 추가
-
expand_transaction_level Boolean
기본값
false해당 옵션을
true로 설정하면 트랜잭션 외부에서 발생하는 SQL 및 HTTP 호출을 트랜잭션으로 간주하여 히트맵에 표시합니다. -
expand_transaction_basetime Int
기본값
1000ms (1초)expand_transaction_level옵션이true로 설정된 경우, 지정한 시간보다 응답 시간이 오래 걸릴 요청만 데이터를 수집합니다. 초당 최대 100건의 데이터를 수집합니다. 최소값은100ms로 0.1초입니다.
New Desktop application 모니터링 지원 추가
-
expand_transaction_level옵션의 값을true로 설정하세요. -
어플리케이션 실행 전에 다음 명령을 프롬프트에 입력하세요.
SET COR_PROFILER={D76F1D76-A9E0-4C87-874F-C0AD93D4229B}
SET COR_ENABLE_PROFILING=1
SET CORECLR_PROFILER={21CAE18A-4E44-4578-83FD-0576AAA47E68}
SET CORECLR_ENABLE_PROFILING=1
SET DOTNET_STARTUP_HOOKS=C:\Program Files\WhaTap .NET\core\Whatap.Startup.NetCore.dll
SET WHATAP_TRACE_IIS_ONLY=0
SET EXPAND_TRANSACTION_LEVEL=1
SET EXPAND_TRANSACTION_BASETIME=100 -
명령어 실행 후 대상 애플리케이션을 실행하세요.
2024-09-25
v2.3.3
New .NET Core에서 SQL 파라미터 모니터링 지원 추가
New .NET Core에서 Stored Procedure 모니터링 지원 추가
New System.Net.Http.HttpClient.SendAsync 모니터링 지원 추가
Fixed .NET Core 버전의 에이전트를 설치한 후 삭제하지 않은 상태에서, .NET Framework 버전을 추가로 설치하면 액티브 스택이 수집되지 않는 버그 수정
2024-09-05
v2.3.2
New 트랜잭션 수집에서 제외할 URL의 접미사(suffix)를 설정할 수 있는 에이전트 옵션 추가
trace_ignore_url_suffix String
Fixed Parameterized Query 추적 기능 추가
Fixed REST API 트랜잭션의 상태 코드(status code) 표시에서 발생하는 오류 수 정
Fixed System.Data.Common.DbCommand 관련 메서드 중 모니터링에 포함되지 않았던 메서드 추가
다음의 비동기 메서드 중에서 오버로딩된 메서드의 일부가 누락되어 추가하였습니다.
2024-08-26
v2.3.1
New 트랜잭션 외부에서 일어나는 트레이스 정보 수집 기능 추가
-
expand_transaction_level Boolean
기본값
false옵션값을
true로 설정하면 트랜잭션 외부에서 발생하는 SQL, HTTP 호출을 트랜잭션으로 취급해서 히트맵에 표시합니다. -
expand_transaction_basetime Int
기본값
1000(1초) / 최소값100(0.1초)expand_transaction_level옵션이true인 경우, 설정한 시간보다 응답 시간이 오래 걸릴 때에만 데이터를 수집합니다. 초당 최대 100건까지 수집합니다.
New DB 연결 정보 표시: 데이터베이스를 사용하는 트랜잭션은 데이터베이스 연결 정보를 표시하는 기능 추가
Changed 오류가 아닌 경우에도 트랜잭션의 상태 코드를 표시하도록 수정
2024-07-05
v2.2.9
Feature 멀티트랜잭션 모니터링 지원: 와탭 모니터링 플랫폼의 프로젝트로 등록된 애플리케이션 서비스 간의 호출을 추적할 수 있습니다.
2024-06-19
v2.2.8
New .NET 6, 7, 8 버전 추가 지원
-
ASP.NET core 지원
-
HTTP Call, Redis, WCF client, 사용자 로그, Active Stack, SQL 지원
-
별도의 설치 링크로 다운로드하세요. whatap_dotnet_core.exe
Changed trace_http_client_ip_header_key 옵션의 기본값을 X-Forwarded-For로 변경
2024-06-10
v2.2.7
Changed 지원 환경 분석 툴(WhaTapDotnetScan.exe) 개선
-
닷넷이 설치되지 않은 환경에서도 실행될 수 있도록 개선
-
낮은 버전의 닷넷 런타임을 사용하거나 닷넷 런타임이 설치되지 않은 경우 발생하는 오류 수정
Fixed 처리 허용량을 넘어선 트랜잭션을 제거하는 과정에서 시작 시점만 남고 종료 시점이 삭제되는 버그 수정
2024-05-24
v2.2.6
Feature 에이전트 옵션 추가
-
trace_ignore_url_set String
트랜잭션 추적에서 제외할 URL을 설정합니다. 2개 이상의 값을 설정하려면 쉼표(,)를 구분자로 이용하세요.
-
trace_ignore_url_prefix String
트랜잭션 수집 예외 URL prefix를 설정합니다. 설정한 값과 앞부분이 일치하는 url은 트랜잭션 성능을 수집하지 않습니다. 2개 이상의 값을 설정하려면 쉼표(,)를 구분자로 이용하세요.
Changed System.Data.Common.DbCommand 모니터링 여부를 에이전트 설정 옵션으로 선택하도록 변경
-
일부 고객의 경우 오래된 어셈블리의 영향으로 오류가 발생하는 현상을 발견했습니다. 오류를 재현할 완벽한 원인을 찾지 못해서 모니터링 대상에서 제외했습니다.
-
모니터링 대상에 추가하기 위해서는 다음 에이전트 옵션을 설정하고 IIS를 재시작하세요.
팁trace_db_command_methods String
모니터링할 메소드 이름을 입력하세요. 2개 이상의 값을 설정하려면 쉼표(,)를 구분자로 이용하세요. 모든 메소드를 모니터링하려면 아래와 같이 적용하세요.
whatap.conftrace_db_command_methods=ExecuteReader, ExecuteReaderAsync, ExecuteNonQuery, ExecuteNonQueryAsync, ExecuteScalar, ExecuteScalarAsync
2024-05-08
v2.2.5
Fixed 서버의 CPU 성능에 여유가 없을 때 모니터링 메시지가 지연되어 쌓이면서 병목을 가속하는 오류 수정
2024-04-30
v2.2.4
Feature 바이트 코드 처리 프로세스 성능 개선
Feature 로그 처리 프로세스 성능 개선
Feature UDP 패킷 프로세스 성능 개선
Feature ASP.NET MVC 라이브러리 처리 프로세스 성능 개선
2024-04-24
v2.2.3
Fixed Rest API 모니터링 중 특정 조건에서 CPU 사용률이 증가하는 버그 수정
-
특정 고객에게서 CPU 사용량이 증가하는 이슈가 발생해 해당 버그를 수정합니다.
-
증상이 나타나지 않는 고객이라도 에이전트를 업그레이드할 것을 권장합니다. 성능 향상에 도움이 됩니다.
2024-04-18
v2.2.2
New DataAdapter.Fill() 메소드 모니터링 추가
New WebForm 모니터링 지원, 페이지 이동 이벤트를 트랜잭션으로 처리
Feature 에이전트 옵션 trace_http_client_ip_header_key 추가, 자세한 내용은 다음 문서를 참조하세요.
Fixed IP 주소 표시 오류로 동시 접속자가 제대로 표시되지 않는 현상 수정
Deprecated 에이전트가 body를 읽는 동안 충돌이 일어날 가능성이 있어 profile_http_body_enabled 옵션 지원 중단
2024-04-09
v2.2.1
Feature 에이전트 옵션 추가
-
prepend_app_pool_name Boolean
기본값
false옵션값을
true로 설정하면 트랜잭션의 URL 앞에 애플리케이션의 전체 이름을 표시합니다.
Changed 오래된 버전의 호환성을 높이기 위해서 설치 파일 분리
-
.NET 4.6.1 버전 이상의 런타임을 사용하는 경우: whatap_dotnet.exe
-
.NET 4.6.1 버전 미만의 런타임을 사용하거나 Windows Server 2012 미만의 경우: whatap_dotnet_450.exe
노트Windows Server 2008부터 지원합니다.
Fixed webservice_method_enabled 옵션: 메소드가 중첩으로 실행되는 경우 모니터링되지 않는 버그 수정
Fixed 32비트 닷넷 런타임에서 whatap.conf 파일을 찾지 못하는 문제 수정