PHP Agent v2.5.0
Release date: 2022-05-18
Fixed (bug fixing)
Fixed the problem where CPU and memory are displayed with negative values in the transaction list of active transactions.
The PHP monitoring calculates CPU and memory usages at the point of transaction completion. The negative values for CPU and memory usages of the active transactions to be retrieved have been adjusted to 0.
Changes from resource type to object type in PHP 8.0 or later
In PHP 8.0 or later, the resource type handle of some libraries has been changed to the object type handle. We fixed the problem where the information details are not collected with the handle of the previous resource type.
For example, the curl_init
function returns the resource ID until PHP 7.4, and returns the CurlHandle object type in PHP 8.0 or later.
Fixing the problem where URIs ending with "/" are normalized during normalization of transaction URIs
If /{AAA}
is registered in the settings during transaction URI normalization, both URIs, /aaa.php
and /
are all normalized as /{AAA}
. Afterwards, only /aaa.php
is normalized to /{AAA}
.
Fixing the user_agent and referer collection problems
The collection limit option has been deleted inside the PHP extension. The whatap-php service daemon determines whether or not to process collected data.
Change (update)
Collecting the bind parameters
The bind parameters of DB-related libraries are collected. The parameters are collected when the whatap.profile_sql_param_enabled
option is enabled. The maximum number of collections is 20.
Parameter Name
- It can collect up to 256 bytes.
Parameter Value
- In case of the string type, it collects up to 256 bytes.
- In case of the array type, only the string, "ARRAY" is displayed.
- The data other than number and text is not collected.
Adding the odbc_do function
Added the alias function that does the same as odbc_exec.
Excluding the transaction collection for the set URI and 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
Added the query_string_keys option
With query_string_enabled
, you can add the Get parameter to the URI to display it as a service URL. When there are many Get parameters, the order of the parameters may change each time and may be too long, so you can specify the parameter name to display.
If only the specified parameters are collected, the service URL is simplified and more accurate information can be checked in the statistical data.
-
query_string_keys
-
Default : ""
-
Type: string
-
Specify multiple parameters by separating them with comma (,). The collected parameters appear in the same setting sequence.
If the parameter name has not been specified, all Get parameters are added to the service URL as before.
All parameters are collected.
whatap.query_string_enabled=true
whatap.query_string_keys=
Collection is made as /aaa.php?aaa=2&bbb=3&cccc=4&dddd=5
. Only the cccc parameter is collected.
whatap.query_string_enabled=true
whatap.query_string_keys=cccc
Collection is made as /aaa.php?ccc=4
.
Changing to automatically configure the cURL header
The function that was modified in 2.4.0 to manually set the Whatap header for multi-transaction tracing has been modified back to the automatic addition method.
When setting the HTTP header (CURLOPT_HTTPHEADER) through the curl_setopt
and curl_setopt_array
functions, if duplicate settings are made, the previous data is initialized and the new data is set.
The Whatap header has been added when it does not exist after setting the user's cURL Header.
When the multi-transaction (whatap.mtrace_enabled=true
) setting is enabled, the Whatap header is set after calling the curl_init()
function. (x-wtap-mst
, x-wtap-sp1
, x-wtap-po
) Before calling the curl_exec()
function, check the header and add the WhaTap header if it does not exist.