본문으로 건너뛰기

PHP Agent v2.5.0

배포일: 2022-05-18

Fixed (버그 수정)

액티브 트랜잭션의 트랜잭션 목록에서 cpu, memory가 음수로 표기되는 문제 수정

PHP 모니터링은 트랜잭션이 완료 되는 시점에 cpu, memory가 계산됩니다. 진행 중에 조회하는 트랜잭션의 cpu, memory의 음수값을 0으로 조정했습니다.

php 8.0 이상 resource 타입이 object 타입으로 변경된 사항 적용

php8.0 버전 이후 부터 일부 라이브러리의 Resource 타입의 핸들이 Object 타입의 핸들로 변경되었습니다. 기존 Resource 타입의 핸들로 상세 정보를 수집 못하는 문제를 수정했습니다.

curl 라이브러리를 예로 들면, curl_init 함수는 php7.4 버전 까지는 resource id 를 반환하고, php8.0 이상 부터 CurlHandle Object 타입을 반환합니다.

트랜잭션 URI 정규화 중 '/'로 끝나는 URI의 경우에도 정규화되는 문제 수정

트랜잭션 URI 정규화 중 설정 상에 /{AAA} 로 등록하면, /aaa.php, / 두 URI 모두 /{AAA} 로 정규화되는 문제를 수정했습니다. 이후 /aaa.php/{AAA}로 정규화됩니다.

user_agent, referer 수집 문제 수정

PHP Extension 내부의 수집 제한 옵션을 삭제 했습니다. whatap-php 서비스 데몬에서 수집데이터에 대한 처리 여부를 결정합니다.

Change (업데이트)

bind parameter 수집

DB 관련 라이브러리들의 bind parameter를 수집합니다. whatap.profile_sql_param_enabled 옵션을 활성화하면 수집됩니다. 최대 수집 개수는 20개 입니다.

파라미터 이름

  • 256 bytes 까지 수집합니다.

파라미터 값

  • String 타입의 경우 256 bytes 까지 수집합니다.
  • Array 타입의 경우 "ARRAY" 문자열로 표기만 합니다.
  • 숫자형, 문자형 데이터 외에는 수집하지 않습니다.

odbc_do 함수 추가

odbc_exec 와 동일한 기능을 하는 별칭 함수를 추가했습니다.

지정한 Uri와 HTTP Method를 대상으로 트랜잭션 수집 제외

  • ignore_http_method_urls

    Default : ""

    Type : String

  • ignore_http_method

    Default : ""

    Type : String

whatap.ignore_http_method_urls=/index, /path
whatap.ignore_http_method=options, connect

query_string_keys 옵션 추가

query_string_enabled로 URI 에 Get 파라미터를 추가해서 서비스 URL로 표기할 수 있습니다.Get 파라미터가 많을 경우, 파라미터 순서가 매번 달라질 수 있고 너무 긴 경우가 있어서 표기할 파라미터 이름을 지정할 수 있도록 수정했습니다.

지정한 파라미터만 수집하면 서비스URL이 단순화 되어 통계정보에서 더 정확한 정보를 확인 할 수 있습니다.

  • query_string_keys

    • Default : ""

    • Type : String

콤마(,)로 구분해서 여러개의 파라미터를 지정합니다. 설정 순서와 동일하게 수집된 파라미터정보가 표시됩니다.

노트

파라미터 이름을 지정하지 않으면 기존과 동일하게 모든 Get 파라미터를 추가해서 서비스 URL로 표기합니다.

전체 파라미터가 수집됩니다.

whatap.query_string_enabled=true
whatap.query_string_keys=

/aaa.php?aaa=2&bbb=3&cccc=4&dddd=5로 수집됩니다. cccc 파라미터만 수집됩니다.

whatap.query_string_enabled=true
whatap.query_string_keys=cccc

/aaa.php?ccc=4 로 수집됩니다.

cURL header 자동 설정 변경.

2.4.0 에서 멀티트랜잭션 추적을 위한 WhaTap Header를 수동으로 설정하도록 변경된 기능을 다시 자동 추가 방식으로 수정했습니다.

curl_setopt, curl_setopt_array 함수를 통해 HTTP Header 설정(CURLOPT_HTTPHEADER)을 하는 경우, 중복 설정이 되면 이전 정보는 초기화되고 새로운 정보만 설정됩니다.

사용자의 cURL Header 설정 이후에 Whatap Header 가 없는 경우 추가합니다.

멀티 트랜잭션(whatap.mtrace_enabled=true) 설정이 활성화 되면, curl_init() 함수 호출 후에 WhaTap Header를 설정합니다. (x-wtap-mst, x-wtap-sp1, x-wtap-po) curl_exec() 함수 호출 전에 Header를 확인해서 WhaTap Header 가 없는 경우 추가 합니다.