Support the ongoing development of →
Requests Input
Last updated 2 years ago.

put the full stack trace.

probably the reason is you're trying to cache (store) a closure, closures cannot be serialized.


I'm pretty sure the SuperClosure package allows closures to be serialized (although I have no idea what that really means).

FatalErrorException in SerializableClosure.php line 117: Uncaught exception 'ErrorException' with message 'Serialization of closure failed: Serialization of 'Closure' is not allowed' in /Users/me/Data/Solutions/site.local/
Stack trace:
#0 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleError(1024, 'Serialization o...', '/Users/me/Da...', 117, Array)
#1 /Users/me/Data/Solutions/site.local/ trigger_error('Serialization o...', 1024)
#2 [internal function]: SuperClosure\SerializableClosure->serialize()
#3 /Users/me/Data/Solutions/site.local/ serialize(Object(SuperClosure\SerializableClosure))
#4 /Users/me/Data/Solutions/site.local/ SuperClosure\Serializer->serialize(Object(Closure))
#5 /Users/ch

That's all it shows.


This is still happening. Laravel used to throw helpful errors, but it doesn't anymore. Why?

[Fri Oct  7 16:21:18 2016] ::1:49194 [500]: / - Uncaught Exception: Serialization of 'Closure' is not allowed in /Users/chris/Data/Solutions/t-log-viewer/vendor/laravel/framework/src/Illuminate/Queue/Queue.php:86
Stack trace:
#0 /Users/chris/Data/Solutions/t-log-viewer/vendor/laravel/framework/src/Illuminate/Queue/Queue.php(86): serialize(Object(Closure))
#1 /Users/chris/Data/Solutions/t-log-viewer/vendor/laravel/framework/src/Illuminate/Queue/SyncQueue.php(37): Illuminate\Queue\Queue->createPayload(Object(Closure), '', NULL)
#2 /Users/chris/Data/Solutions/t-log-viewer/vendor/laravel/framework/src/Illuminate/Queue/QueueManager.php(263): Illuminate\Queue\SyncQueue->push(Object(Closure))
#3 /Users/chris/Data/Solutions/t-log-viewer/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(237): Illuminate\Queue\QueueManager->__call('push', Array)
#4 /Users/chris/Data/Solutions/t-log-viewer/app/Providers/LogServiceProvider.php(34): Illuminate\Support\Facades\Facade::__callStatic('push', Array)
#5 [internal function] in /Users/chris/Data/Solutions/t-log-viewer/vendor/laravel/framework/src/Illuminate/Queue/Queue.php on line 86

This it the code that seems to be causing the issue at the moment:

$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture()

However, every exception throws that except same message. Makes things very hard to troubleshoot.

Last updated 7 years ago.

Resolved. It's got nothing to do with Laravel in itself - it's the method I was using to log errors to my database throwing the error, whenever an app exception occurred. The root cause is me using an old logging class that doesn't work with Laravel 5 (worked fine with Laravel 4).

So, because the error logging class itself was the issue, there wasn't any other option than to show the error above whenever an app exception occurred.



Sign in to participate in this thread!


Your banner here too?


We'd like to thank these amazing companies for supporting us

Your logo here?

The Laravel portal for problem solving, knowledge sharing and community building.

© 2024 - All rights reserved.