Exceptions
Exception
Symfony\Component\HttpClient\Exception\ ClientException
if (500 <= $code) {throw new ServerException($this);}if (400 <= $code) {throw new ClientException($this);}if (300 <= $code) {throw new RedirectionException($this);}
in
vendor/symfony/http-client/Response/TraceableResponse.php
->
checkStatusCode
(line 103)
} finally {if ($this->event && $this->event->isStarted()) {$this->event->stop();}if ($throw) {$this->checkStatusCode($this->response->getStatusCode());}}}public function toArray(bool $throw = true): array
'hapikey' => $this->hubSpotKey,'after' => $after,],]);$result = json_decode($response->getContent(), true);} catch (HttpExceptionInterface $e) {$this->logger->error('Could not load blog posts from HubSpot', ['exception' => $e]);throw $e;}
if (!isset($this->posts)) {$beta = $bustCache ? INF : null;$this->posts = $this->cache->get('blog_posts', function (ItemInterface $item) {$item->expiresAfter(86400); // cache for 1 dayreturn $this->loadBlogPosts();}, $beta);}return $this->posts;}
in
vendor/symfony/cache/Adapter/TraceableAdapter.php
->
App\{closure}
(line 51)
$isHit = true;$callback = function (CacheItem $item, bool &$save) use ($callback, &$isHit) {$isHit = $item->isHit();return $callback($item, $save);};$event = $this->start(__FUNCTION__);try {$value = $this->pool->get($key, $callback, $beta, $metadata);
in
vendor/symfony/cache/LockRegistry.php
->
Symfony\Component\Cache\Adapter\{closure}
(line 108)
if ($locked || !$wouldBlock) {$logger && $logger->info(sprintf('Lock %s, now computing item "{key}"', $locked ? 'acquired' : 'not supported'), ['key' => $item->getKey()]);self::$lockedFiles[$key] = true;$value = $callback($item, $save);if ($save) {if ($setMetadata) {$setMetadata($item);}
in
vendor/symfony/cache/Traits/ContractsTrait.php
::
compute
(line 100)
}try {$value = ($this->callbackWrapper)($callback, $item, $save, $pool, function (CacheItem $item) use ($setMetadata, $startTime, &$metadata) {$setMetadata($item, $startTime, $metadata);}, $this->logger ?? null);$setMetadata($item, $startTime, $metadata);return $value;} finally {unset($this->computing[$key]);
in
vendor/symfony/cache-contracts/CacheTrait.php
->
Symfony\Component\Cache\Traits\{closure}
(line 72)
}}if ($recompute) {$save = true;$item->set($callback($item, $save));if ($save) {$pool->save($item);}}
in
vendor/symfony/cache/Traits/ContractsTrait.php
->
contractsGet
(line 107)
return $value;} finally {unset($this->computing[$key]);}}, $beta, $metadata, $this->logger ?? null);}}
in
vendor/symfony/cache-contracts/CacheTrait.php
->
doGet
(line 35)
** @return mixed*/public function get(string $key, callable $callback, float $beta = null, array &$metadata = null){return $this->doGet($this, $key, $callback, $beta, $metadata);}/*** {@inheritdoc}*/
in
vendor/symfony/cache/Adapter/TraceableAdapter.php
->
get
(line 56)
return $callback($item, $save);};$event = $this->start(__FUNCTION__);try {$value = $this->pool->get($key, $callback, $beta, $metadata);$event->result[$key] = get_debug_type($value);} finally {$event->end = microtime(true);}if ($isHit) {
public function getAllPosts(bool $bustCache = false): array{if (!isset($this->posts)) {$beta = $bustCache ? INF : null;$this->posts = $this->cache->get('blog_posts', function (ItemInterface $item) {$item->expiresAfter(86400); // cache for 1 dayreturn $this->loadBlogPosts();}, $beta);}
}public function getPosts(int $perPage = 3, int $page = 1, string $tag = '', string $author = ''): array{$offset = ($page - 1) * $perPage;$posts = $this->getAllPosts();if ($tag) {$postsFiltered = [];foreach ($posts as $post) {foreach ($post['tags'] as $tag2) {
#[Route(path: '/', name: 'landing', methods: ['GET'], options: ['in_sitemap' => true, 'sitemap_priority' => 1, 'sitemap_changefreq' => 'daily'])]public function index(Blog $blog): Response{return $this->render('landing.twig', ['logos' => $this->getCustomerLogos(),'latestBlogPosts' => $blog->getPosts(2),'badges' => $this->getAwardsBadges(),]);}private function getCustomerLogos(): array
in
vendor/symfony/http-kernel/HttpKernel.php
->
index
(line 152)
$this->dispatcher->dispatch($event, KernelEvents::CONTROLLER_ARGUMENTS);$controller = $event->getController();$arguments = $event->getArguments();// call controller$response = $controller(...$arguments);// viewif (!$response instanceof Response) {$event = new ViewEvent($this, $request, $type, $response);$this->dispatcher->dispatch($event, KernelEvents::VIEW);
in
vendor/symfony/http-kernel/HttpKernel.php
->
handleRaw
(line 74)
public function handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true){$request->headers->set('X-Php-Ob-Level', (string) ob_get_level());try {return $this->handleRaw($request, $type);} catch (\Exception $e) {if ($e instanceof RequestExceptionInterface) {$e = new BadRequestHttpException($e->getMessage(), $e);}if (false === $catch) {
in
vendor/symfony/http-kernel/Kernel.php
->
handle
(line 202)
$this->boot();++$this->requestStackSize;$this->resetServices = true;try {return $this->getHttpKernel()->handle($request, $type, $catch);} finally {--$this->requestStackSize;}}
Request::setTrustedHosts([$trustedHosts]);}$kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);$request = Request::createFromGlobals();$response = $kernel->handle($request);$response->send();$kernel->terminate($request, $response);
Logs
| Level | Channel | Message |
|---|---|---|
| INFO 01:09:27 | php |
User Deprecated: Since symfony/framework-bundle 5.3: The "session.storage.native" service is deprecated, use "session.storage.factory.native" instead. {
"exception": {}
}
|
| INFO 01:09:27 | php |
User Deprecated: Since symfony/framework-bundle 5.3: The "session.storage.metadata_bag" service is deprecated, create your own "session.storage.factory" instead. {
"exception": {}
}
|
| INFO 01:09:27 | request |
Matched route "_profiler". {
"route": "_profiler",
"route_parameters": {
"_route": "_profiler",
"_controller": "web_profiler.controller.profiler::panelAction",
"token": "52101b"
},
"request_uri": "http://invoiced.project-release.info/_profiler/52101b?panel=exception",
"method": "GET"
}
|
| INFO 01:09:27 | php |
User Deprecated: Since symfony/framework-bundle 5.3: The "session.storage.factory.service" service is deprecated, use "session.storage.factory.native", "session.storage.factory.php_bridge" or "session.storage.factory.mock_file" instead. {
"exception": {}
}
|
Stack Trace
|
ClientException
|
|---|
Symfony\Component\HttpClient\Exception\ClientException:
HTTP/2 401 returned for "https://api.hubapi.com/cms/v3/blogs/posts?hapikey=41d1972b-a2ce-454d-9e57-cd6355e00240".
at vendor/symfony/http-client/Response/TraceableResponse.php:212
at Symfony\Component\HttpClient\Response\TraceableResponse->checkStatusCode(401)
(vendor/symfony/http-client/Response/TraceableResponse.php:103)
at Symfony\Component\HttpClient\Response\TraceableResponse->getContent()
(src/Blog.php:228)
at App\Blog->loadBlogPosts()
(src/Blog.php:211)
at App\Blog->App\{closure}(object(CacheItem), true)
(vendor/symfony/cache/Adapter/TraceableAdapter.php:51)
at Symfony\Component\Cache\Adapter\TraceableAdapter->Symfony\Component\Cache\Adapter\{closure}(object(CacheItem), true)
(vendor/symfony/cache/LockRegistry.php:108)
at Symfony\Component\Cache\LockRegistry::compute(object(Closure), object(CacheItem), true, object(FilesystemAdapter), object(Closure), object(Logger))
(vendor/symfony/cache/Traits/ContractsTrait.php:100)
at Symfony\Component\Cache\Adapter\AbstractAdapter->Symfony\Component\Cache\Traits\{closure}(object(CacheItem), true)
(vendor/symfony/cache-contracts/CacheTrait.php:72)
at Symfony\Component\Cache\Adapter\AbstractAdapter->contractsGet(object(FilesystemAdapter), 'blog_posts', object(Closure), 1.0, array(), object(Logger))
(vendor/symfony/cache/Traits/ContractsTrait.php:107)
at Symfony\Component\Cache\Adapter\AbstractAdapter->doGet(object(FilesystemAdapter), 'blog_posts', object(Closure), 1.0, array())
(vendor/symfony/cache-contracts/CacheTrait.php:35)
at Symfony\Component\Cache\Adapter\AbstractAdapter->get('blog_posts', object(Closure), null, array())
(vendor/symfony/cache/Adapter/TraceableAdapter.php:56)
at Symfony\Component\Cache\Adapter\TraceableAdapter->get('blog_posts', object(Closure), null)
(src/Blog.php:208)
at App\Blog->getAllPosts()
(src/Blog.php:67)
at App\Blog->getPosts(2)
(src/Controller/MarketingController.php:260)
at App\Controller\MarketingController->index(object(Blog))
(vendor/symfony/http-kernel/HttpKernel.php:152)
at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
(vendor/symfony/http-kernel/HttpKernel.php:74)
at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
(vendor/symfony/http-kernel/Kernel.php:202)
at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
(public/index.php:34)
|