The list below provides the full release notes and changelogs for ZendHQ.
ZendHQ UI v1.3.2 (2023-01-23):
- Fixed crashing in Code Trace detail view when function call has an empty string as a parameter.
ZendHQ UI v1.3.1 (2022-12-19):
- Fixed showing stack trace in Monitoring Events.
ZendHQ UI v1.3.0 (2022-12-06):
- Added support for Code Tracing
- Monitoring rules UI now has 'Actions when triggered' option.
ZendHQ v1.2.0 (2022-12-08):
Added support for Code Tracing
- Implemented the zedhq_codetracing ZendHQ daemon module that implements Code Tracing support in the daemon.
- Implemented Code Tracing support in the PHP ZendHQ extension.
- Added the cttool command line tool that can be used to inspect and convert binary Code Tracing dump files.
Monitoring rules now support the "codetrace" action, which triggers the Code Tracing trace collection.
- Monitoring rule actions can now be clued to a specific condition. These actions are executed only if the specific condition is met.
- Fixed a memory leak and exit crash in PHP caused by internal functions that are not cached.
- The PDO PHP extension creates and destroys some methods at runtime. This caused a conflict in the ZendHQ extension that assumed that all the PHP internal functions and methods are persistent.
- Now all the PHP internal functions and methods marked with 'ZEND_ACC_NEVER_CACHE' are stored together with PHP user functions and released at the end of the request.
- Fixed a PHP crash caused by some internal PHP functions.
- PHP internal functions marked with 'ZEND_ACC_CALL_VIA_TRAMPOLINE' are now ignored. Their zend_function pointer becomes NULL in the function handler and we are not able to process function return, nor leave events.
- Added support for querying Monitoring issues and events by the request ID value.
- The mon.get_issues JSON RPC method now accepts the request_id optional parameter that can be used to filter all the Monitoring issues with events from the specified request.
- The mon.get_events JSON RPC method now accepts the request_id parameter that can be used to filter all the Monitoring issues with events from the specified request.
- Added optional execution time and memory usage to monitoring events and issues.
- JSON RPC methods mon.get_issue and mon.get_event now report the actual execution time in milliseconds in the exec_time_msec member for monitoring events types function-slow-exec and request-slow-exec.
- JSON RPC methods mon.get_issue and mon.get_event now report the actual memory usage in bytes in the memory_usage_bytes member for the monitoring event type request-high-mem-usage.
- mon.issue JSON RPC notification events are now sent out as well when Code Tracing status changes.
- Rewrote RSA decryption for ZendHQ license file so that it works with OpenSSL3 on Ubuntu 22.04.
- Fixed ZendHQ PHP extension request processing in case of a PHP fatal error.
- If PHP encounters a unrecoverable fatal error during the request, it bails out meaning that none of the function calls in the call stack return. The ZendHQ PHP extension now recovers from this situation and ensures that all of the information collected so far is still properly stored.
- Added PHP 8.2 support.
- Added git hash to the version information.
- The hash is extracted automatically from the source repository or can be given on the CMake command line with the -DZENDHQ_GIT_HASH=<hash> parameter.
ZendHQ v1.1.0 (2022-06-21):
- The ZendHQ PHP extension is now loaded as a Zend extension, and not a PHP module.
Note: When upgrading from an earlier version, change extension=zendhq.so to zend_extension=zendhq.so in the zendhq.ini file.
This fixes a PHP exit crash on some platforms where shutting down the PHP module completely removed the ZendHQ PHP extension from the memory, and crashed when the Zend extension part was shut down.
It also fixes opcache warnings caused by ZendHQ RINIT method that activated opcache too early. You must ensure that ZendHQ is loaded after opcache; this is only possible when ZendHQ is loaded as a Zend extension.
ZendHQ v1.0.1 (2022-06-08):
- Fixed potential Apache2 worker crash with php_module when Monitoring rules were changed, and ZendHQ PHP extension needed to re-initialize PHP user function filters.