logger->error('Database error occurred', LogContext::withData([ 'exception_class' => get_class($exception), 'message' => $exception->getMessage(), 'code' => $exception->getCode() ])); return HandlerResult::create( handled: true, message: 'A database error occurred', data: [ 'error_type' => 'database', 'retry_after' => 60 // Suggest retry after 60 seconds ], statusCode: 500 ); } public function getName(): string { return 'database_error_handler'; } public function getPriority(): ErrorHandlerPriority { return ErrorHandlerPriority::HIGH; } }