bref: FastCgiCommunicationFailed on every second request
Description:
I am seeing a 502 gateway error on every second request made to my api. In cloudwatch logs I can see the following:
START RequestId: 3711f7ba-56d6-41d6-9e70-decaa7f0fcdf Version: $LATEST
--
Error communicating with PHP-FPM to read the HTTP response. A root cause of this can be that the Lambda (or PHP) timed out, for example when trying to connect to a remote API or database, if this happens continuously check for those! Bref will restart PHP-FPM now. Original exception message: hollodotme\FastCGI\Exceptions\WriteFailedException Failed to write request to socket [broken pipe]
[18-Jan-2021 16:54:24] NOTICE: Terminating ...
[18-Jan-2021 16:54:24] NOTICE: exiting, bye-bye!
2021-01-18 16:54:24.566 +0000 (14 14) info: attempt daemon connection via 'newrelic-daemon.REDACTED:31339'
2021-01-18 16:54:24.568 +0000 (14 14) info: Daemon connection settings specify a host different from the local host. Daemon will not be started by the Agent.
2021-01-18 16:54:24.568 +0000 (14 14) info: New Relic 9.15.0.293 ("vanilla" - "bab8316e39f6") [daemon='newrelic-daemon.int.bdry.com:31339' php='7.4.14' zts=no sapi='fpm-fcgi' pid=14 ppid=7 uid=993 euid=993 gid=990 egid=990 backtrace=yes startup=init os='Linux' rel='4.14.203-112.332.amzn2.x86_64' mach='x86_64' ver='#1 SMP Wed Nov 4 20' node='169.254.153.173']
[18-Jan-2021 16:54:24] NOTICE: fpm is running, pid 14
[18-Jan-2021 16:54:24] NOTICE: ready to handle connections
3711f7ba-56d6-41d6-9e70-decaa7f0fcdf Invoke Error { "errorType": "Bref\\Event\\Http\\FastCgi\\FastCgiCommunicationFailed", "errorMessage": "", "stack": [ "#0 /var/task/vendor/bref/bref/src/Event/Http/HttpHandler.php(25): Bref\\Event\\Http\\FpmHandler->handleRequest()", "#1 /var/task/vendor/bref/bref/src/Runtime/Invoker.php(29): Bref\\Event\\Http\\HttpHandler->handle()", "#2 /var/task/vendor/bref/bref/src/Runtime/LambdaRuntime.php(102): Bref\\Runtime\\Invoker->invoke()", "#3 /opt/bootstrap(43): Bref\\Runtime\\LambdaRuntime->processNextEvent()", "#4 {main}" ] }
END RequestId: 3711f7ba-56d6-41d6-9e70-decaa7f0fcdf
REPORT RequestId: 3711f7ba-56d6-41d6-9e70-decaa7f0fcdf Duration: 37.85 ms Billed Duration: 38 ms Memory Size: 1024 MB Max Memory Used: 83 MB
Currently the endpoint simply returns a 200. There are no database connections. The only connection I can think of is to an internal fargate service running the new relic daemon (this support was just added recently to bref extensions).
How to reproduce:
Bref: 1.1.3 Extensions: bref:extra.newrelic-php-74 - 0.9.5 Application Framework: Slim 4 Runtime: provided.al2
I am also using a VPC with my Lambda function. It has 2 public and and private subnets with the expected NAT gateway.
About this issue
- Original URL
- State: open
- Created 3 years ago
- Comments: 16 (11 by maintainers)
Hi,
Sorry for the late reply. The issue could be related to me setting up a VPC with my functions. I mistakenly added both public and private subnets to the function when all I needed was private subnets. I haven’t seen this issue since.
Sorry if this doesn’t help anymore with this!
Thanks.