We’ve been seeing these exact same errors when running v9.9.0.260 of the PHP agent (as well as some earlier v9 releases—we’ve been upgrading pretty regularly) using the install script, in an Alpine Linux Docker environment, with the agent and daemon in the same container. They’ve also been occurring in a long-running Laravel queue worker. Our memory usage always hovers around 15%. We’ve had a few deployments where the error doesn’t manifest itself, but when it does it’s immediately on deployment, so it doesn’t sound related to a memory leak. The only file that seems to show this weird behavior is the Guzzle Client
class, and it doesn’t matter if the instance is being built via the Laravel service container and the PHP reflection API or if we instantiate it directly.
We’ve since rolled back to v8.7.0.242 of the PHP agent and the errors disappeared.
Here’s another stack trace that seems to be the same thing:
{
"class": "InvalidArgumentException",
"message": "Magic request methods require a URI and optional options array",
"code": 0,
"file": "/home/www/app/vendor/guzzlehttp/guzzle/src/Client.php:81",
"trace": [
"/home/www/app/app/Services/SomeClass.php:29",
"{\"function\":\"__construct\",\"class\":\"App\\\\Services\\\\SomeClass\",\"type\":\"->\",\"args\":[]}",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:800",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:646",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:601",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:734",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:900",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:828",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:795",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:646",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:601",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:734",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:900",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:828",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:795",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:646",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:601",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:734",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:160",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:116",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:564",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php:94",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:116",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:104",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php:98",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php:49",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Queue/Jobs/Job.php:83",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Queue/Worker.php:326",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Queue/Worker.php:276",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Queue/Worker.php:118",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php:101",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php:85",
"{\"function\":\"handle\",\"class\":\"Illuminate\\\\Queue\\\\Console\\\\WorkCommand\",\"type\":\"->\",\"args\":[]}",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Container/Container.php:564",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Console/Command.php:179",
"/home/www/app/vendor/symfony/console/Command/Command.php:255",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Console/Command.php:166",
"/home/www/app/vendor/symfony/console/Application.php:908",
"/home/www/app/vendor/symfony/console/Application.php:269",
"/home/www/app/vendor/symfony/console/Application.php:145",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Console/Application.php:89",
"/home/www/app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:122",
"/home/www/app/artisan:35"
]
}
These stack traces always indicate strange execution paths that shouldn’t be possible, where Client::__call()
is invoked from Client::__construct()
.