Stops working after a week

Hi, after one week my speedtest-tracker stops working. Sometimes it just doesnt execute scheduled tests, sometimes i get a HTTP500. Has someone also noticed same behaviour?
Unfortunately no helpful logs are produced... I am watching 3 instances and all 3 crash nearly same moment from saturday to sunday

Yep, same on my side. It seems, that the scheduled task is still runnning, but I also get an HTTP 500 on the frontend.

Same here, only started the container yesterday around 15.00 (UTC+1), last run was at 23.00 (UTC+1), this morning I also saw the error 500.
Something happening on sat/sun night?
@michaelmittermair can you also confirm similar behavior?

Yes, look similar. I checked my container. It was running longer than just 1 day, but the last run was yesterday  (SAT) 23:47pm (UTC +1).

Same here, no logs that give any useful information. Last successful run was (SAT) 23:42 (UTC+1). Next run would have been at (SUN) 00:12 (UTC+1).
So it appears that something happened around midnight.

Same here

same here. logs don't indicate anything has gone wrong. simply after about a week, server crashes, and web ui only loads showing 500 | SERVER ERROR

@te5s3rakt could you do one additional check (as I believe this could narrow down the probleem a bit). Could you check if this happens after midnight on Saturdays?

@te5s3rakt could you do one additional check (as I believe this could narrow down the probleem a bit). Could you check if this happens after midnight on Saturdays?

sure thing. my local time?

Yes, what UTC offset are you in?

Yes, what UTC offset are you in?

UTC + 8
I've just restarted and updated my container. I'll check next weekend how the container is going.

I had this too this morning. A restart of my docker container restored access for me.
I noticed in the logs that Laravel was throwing an error saying that no application encryption key has been specified.

I had this too this morning. A restart of my docker container restored access for me.
I noticed in the logs that Laravel was throwing an error saying that no application encryption key has been specified.

I'm seeing this same error in the logs
[2024-01-23 16:30:35] production.ERROR: No application encryption key has been specified. {"exception":"[object] (Illuminate\Encryption\MissingAppKeyException(code: 0): No application encryption key has been specified. at /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php:79)

For the app key error: https://docs.speedtest-tracker.dev/faqs#i-get-a-warning-on-container-start-up-that-the-app_key-is-missing

i dont think that the app key is the reason for the server crash. I have
a key generated and dont have a warning on start.
My guess is that there is something wrong in: /app/Console/Kernel.php
     /**
      * Perform system maintenance weekly on Sunday morning,
      * start off the week nice and fresh.
      */
     $schedule->command(SystemMaintenance::class)->weeklyOn(0)
         ->timezone($settings->timezone ?? 'UTC');

I have also a 500 on one of my instances, got the following error:
<IP_ADDRESS> - - [24/Jan/2024:11:17:44 +0100] "GET /api/speedtest/latest HTTP/1.1" 200 386 "-" "-"
<IP_ADDRESS> - - [24/Jan/2024:11:17:45 +0100] "GET /api/speedtest/latest HTTP/1.1" 200 386 "-" "-"
[2024-01-24 10:17:58] production.ERROR: Unsupported cipher or incorrect key length. Supported ciphers are: aes-128-cbc, aes-256-cbc, aes-128-gcm, aes-256-gcm. {"exception":"[object] (RuntimeException(code: 0): Unsupported cipher or incorrect key length. Supported ciphers are: aes-128-cbc, aes-256-cbc, aes-128-gcm, aes-256-gcm. at /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php:55)
[stacktrace]
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php(32): Illuminate\Encryption\Encrypter->__construct()
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(908): Illuminate\Encryption\EncryptionServiceProvider->Illuminate\Encryption\{closure}()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\Container\Container->build()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(957): Illuminate\Container\Container->resolve()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\Foundation\Application->resolve()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(942): Illuminate\Container\Container->make()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(1066): Illuminate\Foundation\Application->make()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(982): Illuminate\Container\Container->resolveClass()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(943): Illuminate\Container\Container->resolveDependencies()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\Container\Container->build()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(957): Illuminate\Container\Container->resolve()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\Foundation\Application->resolve()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(942): Illuminate\Container\Container->make()
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(172): Illuminate\Foundation\Application->make()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(805): Illuminate\Pipeline\Pipeline->then()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(784): Illuminate\Routing\Router->runRouteWithinStack()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(748): Illuminate\Routing\Router->runRoute()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(737): Illuminate\Routing\Router->dispatchToRoute()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\Routing\Router->dispatch()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(144): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
#21 /var/www/html/vendor/livewire/livewire/src/Features/SupportDisablingBackButtonCache/DisableBackButtonCacheMiddleware.php(19): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Livewire\Features\SupportDisablingBackButtonCache\DisableBackButtonCacheMiddleware->handle()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull->handle()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#28 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\Foundation\Http\Middleware\TrimStrings->handle()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#30 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()
#31 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(99): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\Http\Middleware\HandleCors->handle()
#35 /var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(39): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#36 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\Http\Middleware\TrustProxies->handle()
#37 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#38 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\Pipeline\Pipeline->then()
#39 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
#40 /var/www/html/public/index.php(51): Illuminate\Foundation\Http\Kernel->handle()
#41 {main}
"}

My instance (Docker, using Postgres) just stopped responding at 00:00 EST (05:00 GMT) on Sunday morning. The same thing happened last Sunday. Logs seem to indicate some kind of issue connecting to Postgres. However, the Postgres server is running fine and connected to other apps. A restart of the Docker container fixes the issue.
The logs show the following:
[2024-01-28 05:00:42] production.ERROR: SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select * from `results` order by `created_at` desc limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select * from `results` order by `created_at` desc limit 1) at /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:822)
[stacktrace]
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(976): Illuminate\\Database\\Connection->runQueryCallback()
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(955): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(778): Illuminate\\Database\\Connection->handleQueryException()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(407): Illuminate\\Database\\Connection->run()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2751): Illuminate\\Database\\Connection->select()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2740): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3294): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2739): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(737): Illuminate\\Database\\Query\\Builder->get()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(721): Illuminate\\Database\\Eloquent\\Builder->getModels()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(333): Illuminate\\Database\\Eloquent\\Builder->get()
#11 /var/www/html/app/Http/Controllers/API/Speedtest/GetLatestController.php(18): Illuminate\\Database\\Eloquent\\Builder->first()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\API\\Speedtest\\GetLatestController->__invoke()
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Route.php(259): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Route.php(205): Illuminate\\Routing\\Route->runController()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(806): Illuminate\\Routing\\Route->run()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(144): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(159): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(125): Illuminate\\Routing\\Middleware\\ThrottleRequests->handleRequest()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(87): Illuminate\\Routing\\Middleware\\ThrottleRequests->handleRequestUsingNamedLimiter()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Routing\\Middleware\\ThrottleRequests->handle()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(805): Illuminate\\Pipeline\\Pipeline->then()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(784): Illuminate\\Routing\\Router->runRouteWithinStack()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(748): Illuminate\\Routing\\Router->runRoute()
#28 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(737): Illuminate\\Routing\\Router->dispatchToRoute()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#30 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(144): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#31 /var/www/html/vendor/livewire/livewire/src/Features/SupportDisablingBackButtonCache/DisableBackButtonCacheMiddleware.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Livewire\\Features\\SupportDisablingBackButtonCache\\DisableBackButtonCacheMiddleware->handle()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle()
#41 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(99): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(62): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()

Yes, what UTC offset are you in?

UTC + 8
I've just restarted and updated my container. I'll check next weekend how the container is going.

Was right on time. Sunday morning container sh!t itself.

I get the same error after midnight Sunday, 500 | SERVER ERROR

Same again for me this Sunday. Error once again this one (when browsing to the server):
production.ERROR: No application encryption key has been specified

same problem here, running on RPi 4 with Postgres DB.
I can see these two error messages if that helps.
2024-01-28T07:58:15.918491042Z [previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Connection refused at /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:65)
2024-01-28T07:58:22.570684825Z [2024-01-28 07:58:22] production.ERROR: No application encryption key has been specified. {"exception":"[object] (Illuminate\Encryption\MissingAppKeyException(code: 0): No application encryption key has been specified. at /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php:79)
I have an app key specified, if I recreate the container it will work for a few days.

I get the same error after midnight Sunday, 500 | SERVER ERROR

I think mine also stops working every Sunday.

Same again for me this Sunday.  Anyone know if there are specific logs to check? I connected the container to another db container and that one seems to be reachable/working.

Same here.
My logs:
[2024-01-28 08:21:08] production.ERROR: No application encryption key has been specified. {"exception":"[object] (Illuminate\\Encryption\\MissingAppKeyException(code: 0): No application encryption key has been specified. at /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php:79) [stacktrace] #0 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/helpers.php(307): Illuminate\\Encryption\\EncryptionServiceProvider->Illuminate\\Encryption\\{closure}() #1 /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php(77): tap() #2 /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php(60): Illuminate\\Encryption\\EncryptionServiceProvider->key() #3 /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php(32): Illuminate\\Encryption\\EncryptionServiceProvider->parseKey() #4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(908): Illuminate\\Encryption\\EncryptionServiceProvider->Illuminate\\Encryption\\{closure}() #5 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\\Container\\Container->build() #6 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(957): Illuminate\\Container\\Container->resolve() #7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\\Foundation\\Application->resolve() #8 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(942): Illuminate\\Container\\Container->make() #9 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(1066): Illuminate\\Foundation\\Application->make() #10 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(982): Illuminate\\Container\\Container->resolveClass() #11 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(943): Illuminate\\Container\\Container->resolveDependencies() #12 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\\Container\\Container->build() #13 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(957): Illuminate\\Container\\Container->resolve() #14 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\\Foundation\\Application->resolve() #15 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(942): Illuminate\\Container\\Container->make() #16 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(172): Illuminate\\Foundation\\Application->make() #17 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #18 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(805): Illuminate\\Pipeline\\Pipeline->then() #19 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(784): Illuminate\\Routing\\Router->runRouteWithinStack() #20 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(748): Illuminate\\Routing\\Router->runRoute() #21 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(737): Illuminate\\Routing\\Router->dispatchToRoute() #22 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch() #23 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(144): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}() #24 /var/www/html/vendor/livewire/livewire/src/Features/SupportDisablingBackButtonCache/DisableBackButtonCacheMiddleware.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #25 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Livewire\\Features\\SupportDisablingBackButtonCache\\DisableBackButtonCacheMiddleware->handle() #26 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #27 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle() #28 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle() #29 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #30 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle() #31 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle() #32 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #33 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle() #34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(99): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #35 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle() #36 /var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #37 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Http\\Middleware\\HandleCors->handle() #38 /var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(39): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #39 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Http\\Middleware\\TrustProxies->handle() #40 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #41 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then() #42 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter() #43 /var/www/html/public/index.php(51): Illuminate\\Foundation\\Http\\Kernel->handle() #44 {main} "}  <IP_ADDRESS> - - [28/Jan/2024:08:21:08 +0000] "GET / HTTP/1.1" 500 6628 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36 OPR/<IP_ADDRESS>" [2024-01-28 08:21:08] production.ERROR: No application encryption key has been specified. {"exception":"[object] (Illuminate\\Encryption\\MissingAppKeyException(code: 0): No application encryption key has been specified. at /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php:79) [stacktrace] #0 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/helpers.php(307): Illuminate\\Encryption\\EncryptionServiceProvider->Illuminate\\Encryption\\{closure}() #1 /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php(77): tap() #2 /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php(60): Illuminate\\Encryption\\EncryptionServiceProvider->key() #3 /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php(32): Illuminate\\Encryption\\EncryptionServiceProvider->parseKey() #4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(908): Illuminate\\Encryption\\EncryptionServiceProvider->Illuminate\\Encryption\\{closure}() #5 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\\Container\\Container->build() #6 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(957): Illuminate\\Container\\Container->resolve() #7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\\Foundation\\Application->resolve() #8 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(942): Illuminate\\Container\\Container->make() #9 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(1066): Illuminate\\Foundation\\Application->make() #10 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(982): Illuminate\\Container\\Container->resolveClass() #11 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(943): Illuminate\\Container\\Container->resolveDependencies() #12 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\\Container\\Container->build() #13 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(957): Illuminate\\Container\\Container->resolve() #14 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\\Foundation\\Application->resolve() #15 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(942): Illuminate\\Container\\Container->make() #16 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(255): Illuminate\\Foundation\\Application->make() #17 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(213): Illuminate\\Foundation\\Http\\Kernel->terminateMiddleware() #18 /var/www/html/public/index.php(55): Illuminate\\Foundation\\Http\\Kernel->terminate() #19 {main} "}

yep i get this sunday morning problem. restarting the speedtest and db containers gets it running again.

yep i get this sunday morning problem. restarting the speedtest and db containers gets it running again.

I only restart my speedtest container. my db one never presents any issues with anything else I have connected to it.

same here (stopps with Error 500) Database is mariadb - restarting web container fixes the issue

yep i get this sunday morning problem. restarting the speedtest and db containers gets it running again.

I only restart my speedtest container. my db one never presents any issues with anything else I have connected to it.

i first tried restarting the speedtest container, but no joy. when i restarted both it worked again.

same here (stopps with Error 500) Database is mariadb - restarting web container fixes the issue

Same here.  First week with this running, discovered it stopped last night.  Restart of the Speedtest container fixed it.

As a workaround, you can add the following to your /etc/crontab on the docker host system to restart the container every sunday morning at 00:01:
2 0     * * 0   root            docker restart speedtest-tracker >/dev/null 2>&1

i dont think that the app key is the reason for the server crash. I have a key generated and dont have a warning on start. My guess is that there is something wrong in: /app/Console/Kernel.php /** * Perform system maintenance weekly on Sunday morning, * start off the week nice and fresh. */ $schedule->command(SystemMaintenance::class)->weeklyOn(0) ->timezone($settings->timezone ?? 'UTC');

I agree this is probably the source of the issue. SystemMaintenance is sourced from app/console/commands/SystemMaintenance.php. I suspect the issue must be in one of these two commands;
    /**
     * Clear and refresh the cache.
     */
    protected function refreshCache(): void
    {
        Artisan::call('optimize:clear');

        Artisan::call('optimize');
    }

I can confirm that I can replicate the crash at a specific time by editing /app/console/Kernel.php and then restarting the container:
        $schedule->command(SystemMaintenance::class)->weeklyOn(0,'12:12')
This causes a crash at 12:12 local time.
If I comment out both calls to Artisan in refreshCache () (SystemMaintenance.php), the server stays up even through a scheduled maintenance. Leaving either one uncommented will still result in a crash. My guess is that the optimize command somehow clears out the app key, even for people who have specified one, leading to a crash.

@mmomjian nice observation. Is the key stored in the db? Could you check if it is indeed removed after the optimize/optimize:clear is called?

Just adding 'me too'. I see this issue happen roughly once a week, with scheduled checks set to ever half an hour.
[2024-01-28 10:23:56] production.ERROR: No application encryption key has been specified. {"exception":"[object] (Illuminate\\Encryption\\MissingAppKeyException(code: 0): No application encryption key has been specified. at /var/www/html/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php:79)
[stacktrace]

@nwagenmakers  I don't see any reference to the key in the postgres database, but I'm not sure exactly where to look.

Having the same issue that can also be solved by restarting the container. For me though, it looks like the automatic/scheduled speedtests aren't run when this error is present though

same here (stopps with Error 500) Database is mariadb - restarting web container fixes the issue

Same here. First week with this running, discovered it stopped last night. Restart of the Speedtest container fixed it.

MariaDB here as well. So probably explains why we both can just refresh the speedtest container to get it working, whereas others need to refresh both speedtest and their db containers.

@nwagenmakers I don't see any reference to the key in the postgres database, but I'm not sure exactly where to look.

I crawled mine twice and couldn't find it either.

@te5s3rakt I run Postgres and it’s never required a restart, so I’m not sure if that’s related.

I have also a 500 on one of my instances, got the following error:
Unsupported cipher or incorrect key length. Supported ciphers are: aes-128-cbc, aes-256-cbc, aes-128-gcm, aes-256-gcm.

I have the same exact error regardless of whether I'm accessing the service via HTTP or HTTPS.

@te5s3rakt I run Postgres and it’s never required a restart, so I’m not sure if that’s related.

I run Postgres as well and face a 500 error when trying to access the service via the browser directly, again regardless whether HTTP or HTTPS is used for browsing the service. Interestingly though, it worked earlier this day for a brief moment where I could see stats on the page, but since then I get the error quoted above.

And more surprisingly, the integration into homepage shows an active entry for the service which even updates slightly.

The problem therefore seems to only affect browser access (tested with Firefox 122.0 and Edge 121.0). The API seems to be working though.
The reported error stems from a TLS handshake failure where the target service called doesn't support the ciphers the client supports. aes-128-cbc indicates a TLS 1.2 secured endpoint. TLS 1.3 i.e. has dropped support of AES_CBC ciphers as they aren't up to modern security standards further. However, AES_GCM ciphers should be usable by TLS 1.3 AFAIK. As this error occurs when accessing the service either via HTTP or HTTPS I guess the cause of this error might be within the service itself. But I haven't looked at the internals of the service yet.

Getting this error too, later version + maria db + API_KEY set as ENV.
@mmomjian nice find.

Just to add my 'me too'. Speedtest front end is always visible. Speed tests stop working reliably each Sunday at 0000. The last test is always posted late Saturday night.

For those having an issue, follow the debug steps in this comment on #1035 https://github.com/alexjustesen/speedtest-tracker/issues/1035#issuecomment-1924907035

@alexjustesen here are my results. The cache driver is set to file. I installed using the docker compose instructions at (https://docs.speedtest-tracker.dev/getting-started/installation/installation)[the website]. Are we supposed to use the .env.example file from the github repo for the /config folder? My .env file is autogenerated as the instructions don't actually specify to create a .env file.
# php artisan about

  Environment ................................................................
  Application Name ......................................... Speedtest Tracker
  Laravel Version .................................................... 10.40.0
  PHP Version ......................................................... 8.2.14
  Composer Version ..................................................... 2.6.6
  Environment ..................................................... production
  Debug Mode ............................................................. OFF
  URL .............................................................. localhost
  Maintenance Mode ....................................................... OFF

  Cache ......................................................................
  Config .............................................................. CACHED
  Events .......................................................... NOT CACHED
  Routes .............................................................. CACHED
  Views ............................................................... CACHED

  Drivers ....................................................................
  Broadcasting ........................................................... log
  Cache ................................................................. file
  Database ............................................................. pgsql
  Logs ................................................................ stderr
  Mail .................................................................. smtp
  Queue ............................................................. database
  Session ........................................................... database

  Filament ...................................................................
  Packages ................... filament, forms, notifications, support, tables
  Version ............................................................ v3.1.47
  Views ........................................................ NOT PUBLISHED

  Livewire ...................................................................
  Livewire ............................................................ v3.3.5

  Speedtest Tracker ..........................................................
  Out of date ............................................................ Yes
  Version ............................................................ v0.14.4

@mmomjian correct, when you start up the container if a .env file doesn't exist it's copied from .env.production.
Start up code:
https://github.com/alexjustesen/speedtest-tracker/blob/main/docker/deploy/etc/s6-overlay/scripts/laravel-automations#L46-L53
If you change anything in this file make sure to restart your container so the changes are picked up. I can see your cache driver is set to file, because we don't mount the storage directory with the correct permissions you'll want to use the database cache driver.

@alexjustesen I am still on v0.14.4, I believe the bug you had linked to may be a different issue. The issue in this thread is a crash every Sunday morning at 00:00 local time. Do you want me to try setting the cache driver to database and see if it stays up this week? What is the correct environment variable to set to change the cache driver?

@alexjustesen I am still on v0.14.4, I believe the bug you had linked to may be a different issue, sorry for the confusion on my end. The issue in this thread is a crash every Sunday morning at 00:00 local time. Do you want me to try setting the cache driver to database and see if it stays up this week? What is the correct environment variable to set to change the cache driver?

Please do, it should be set to database.

I added to CACHE_DRIVER: 'database' to the docker compose file and I now get:
  Drivers ..........................................................................................................................................
  Broadcasting ................................................................................................................................. log
  Cache ................................................................................................................................... database

I'll report back on Sunday.

For those having an issue, follow the debug steps in this comment on #1035 #1035 (comment)

Environment ......................................................................................................................................
Application Name ............................................................................................................... Speedtest Tracker
Laravel Version .......................................................................................................................... 10.40.0
PHP Version ............................................................................................................................... 8.2.14
Composer Version ........................................................................................................................... 2.6.6
Environment ........................................................................................................................... production
Debug Mode ................................................................................................................................... OFF
URL ............................................................................................................................. spt.i.home.org
Maintenance Mode ............................................................................................................................. OFF
Cache ............................................................................................................................................
Config .................................................................................................................................... CACHED
Events ................................................................................................................................ NOT CACHED
Routes .................................................................................................................................... CACHED
Views ..................................................................................................................................... CACHED
Drivers ..........................................................................................................................................
Broadcasting ................................................................................................................................. log
Cache ....................................................................................................................................... file
Database ................................................................................................................................... mysql
Logs ...................................................................................................................................... stderr
Mail ........................................................................................................................................ smtp
Queue ................................................................................................................................... database
Session ................................................................................................................................. database
Filament .........................................................................................................................................
Packages ......................................................................................... filament, forms, notifications, support, tables
Version .................................................................................................................................. v3.1.47
Views .............................................................................................................................. NOT PUBLISHED
Livewire .........................................................................................................................................
Livewire .................................................................................................................................. v3.3.5
Speedtest Tracker ................................................................................................................................
Out of date .................................................................................................................................. Yes
Version .................................................................................................................................. v0.14.4

stopping the container and restarting fixes the issue

I can confirm this is happening every Sunday - probably exactly at 0:00 - restarting the container fixes this as reported.
It just happened again - I've now set up a cron job at 0:01 every Sunday that restarts the container as a workaround.
  Environment ......................................................................................................................................
  Application Name ............................................................................................................... Speedtest Tracker
  Laravel Version .......................................................................................................................... 10.43.0
  PHP Version ............................................................................................................................... 8.2.15
  Composer Version ........................................................................................................................... 2.6.6
  Environment ........................................................................................................................... production
  Debug Mode ................................................................................................................................... OFF
  URL .................................................................................................................................... localhost
  Maintenance Mode ............................................................................................................................. OFF

  Cache ............................................................................................................................................
  Config .................................................................................................................................... CACHED
  Events ................................................................................................................................ NOT CACHED
  Routes .................................................................................................................................... CACHED
  Views ..................................................................................................................................... CACHED

  Drivers ..........................................................................................................................................
  Broadcasting ................................................................................................................................. log
  Cache ................................................................................................................................... database
  Database ................................................................................................................................... mysql
  Logs ...................................................................................................................................... stderr
  Mail ........................................................................................................................................ smtp
  Queue ................................................................................................................................... database
  Session ................................................................................................................................. database

  Filament .........................................................................................................................................
  Packages ......................................................................................... filament, forms, notifications, support, tables
  Version .................................................................................................................................. v3.2.23
  Views .............................................................................................................................. NOT PUBLISHED

  Livewire .........................................................................................................................................
  Livewire .................................................................................................................................. v3.4.4

  Speedtest Tracker ................................................................................................................................
  Out of date ................................................................................................................................... No
  Version .................................................................................................................................. v0.14.6

For me, midnight on Sunday was just over an hour ago as of this post, and sure enough, I couldn't access the container. It was working fine earlier today (Saturday). I hasn't noticed this before, but I was checking the container's stability after I'd figured out the issue referenced in #1087. I simply restarted the container and all is well again.
There's definitely something still wrong here.

I’m EST and it was midnight 39 minutes ago and that’s when it stopped working for me again too. A reboot fixes it.

Died at 12:00am local time. It seems that the cache was reset to file.
# php artisan about

  Environment .....................................................................................................
  Application Name .............................................................................. Speedtest Tracker
  Laravel Version ......................................................................................... 10.40.0
  PHP Version .............................................................................................. 8.2.14
  Composer Version .......................................................................................... 2.6.6
  Environment .......................................................................................... production
  Debug Mode .................................................................................................. OFF
  URL ................................................................................................... localhost
  Maintenance Mode ............................................................................................ OFF

  Cache ...........................................................................................................
  Config ................................................................................................... CACHED
  Events ............................................................................................... NOT CACHED
  Routes ................................................................................................... CACHED
  Views .................................................................................................... CACHED

  Drivers .........................................................................................................
  Broadcasting ................................................................................................ log
  Cache ...................................................................................................... file
  Database .................................................................................................. mysql
  Logs ..................................................................................................... stderr
  Mail ....................................................................................................... smtp
  Queue .................................................................................................. database
  Session ................................................................................................ database

  Filament ........................................................................................................
  Packages ........................................................ filament, forms, notifications, support, tables
  Version ................................................................................................. v3.1.47
  Views ............................................................................................. NOT PUBLISHED

  Livewire ........................................................................................................
  Livewire ................................................................................................. v3.3.5

  Speedtest Tracker ...............................................................................................
  Out of date ................................................................................................. Yes
  Version ................................................................................................. v0.14.4

sunday morning here and, oddly, neither of my instances stopped working overnight. everything normal and fine

I still have this problem

+1 me too...

I still have the problem. Stopped exactly at midnight. Front end worked. Just no tests run.

oh, i just noticed, although neither of my instances stopped working, the scheduled behaviour changed after midnight.
One of my instances is scheduled to run 4 tests each day: at 2:01AM, 3:01AM, 4:01AM and 5:01AM
The other is also scheduled to run 4 tests each day: at 2:10AM, 3:10AM, 4:10AM and 5:10AM
As you can see here, this was happening fine all week, but then today (sunday) the first instance only ran two tests, both at exactly the same time (5:01:20AM)

And the second instance ran at the correct times, but only ran two tests instead of the scheduled four..

Another 'me too', stopped working at midnight. Using mariadb 10.

#1097 and v0.14.7 incoming which wraps the weekly system maintenance command in try block so it soft fails.
Let's see if this helps 🤞

Don't think this helped, unfortunately. Like before I added $schedule->command(SystemMaintenance::class)->weeklyOn(0,'14:09') in app/Console/Kernel.php to simulate a weekly run and it fails just like before with the debug trace in the docker logs. Running php artisan about before restarting the container gives:
In Connection.php line 829:

  SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select * from `cache` where `key` = laravel_cache_speedtest-remote-version limit 1)

In Connector.php line 65:

  SQLSTATE[HY000] [2002] Connection refused

I don't think the try/catch is the issue here, I think something about the Artisan cache clear is destroying some cached data that the app expects to still have.

@mmomjian from your about output above your cache driver is set to file. Set it to database, restart the container and run php artisan db:show to confirm the tables.

@alexjustesen here is some info to help. I had already changed the CACHE_DRIVER from earlier.
docker-compose.yaml
            CACHE_DRIVER: 'database'
        image: 'ghcr.io/alexjustesen/speedtest-tracker:v0.14.7'

Run a a fresh docker compose down and up
# php artisan db:show

  Postgres .........................................................................................................................................
  Database ........................................................................................................................ speedtesttracker
  Host ............................................................................................................... postgres.int-redir.momjian.me
  Port ........................................................................................................................................ 5430
  Username ........................................................................................................................ speedtesttracker
  URL ..............................................................................................................................................
  Open Connections .............................................................................................................................. 37
  Tables ........................................................................................................................................ 12
  Total Size ............................................................................................................................... 1.03MiB

  Table ................................................................................................................................. Size (MiB)
  migrations .................................................................................................................................. 0.02
  notifications ............................................................................................................................... 0.05
  results ..................................................................................................................................... 0.25
  cache ....................................................................................................................................... 0.11
  users ....................................................................................................................................... 0.05
  settings .................................................................................................................................... 0.05
  password_reset_tokens ....................................................................................................................... 0.02
  cache_locks ................................................................................................................................. 0.02
  jobs ........................................................................................................................................ 0.09
  personal_access_tokens ...................................................................................................................... 0.03
  sessions .................................................................................................................................... 0.33
  failed_jobs ................................................................................................................................. 0.02

# php artisan about

  Environment ......................................................................................................................................
  Application Name ............................................................................................................... Speedtest Tracker
  Laravel Version .......................................................................................................................... 10.43.0
  PHP Version ............................................................................................................................... 8.2.15
  Composer Version ........................................................................................................................... 2.6.6
  Environment ........................................................................................................................... production
  Debug Mode ................................................................................................................................... OFF
  URL .................................................................................................................................... localhost
  Maintenance Mode ............................................................................................................................. OFF

  Cache ............................................................................................................................................
  Config .................................................................................................................................... CACHED
  Events ................................................................................................................................ NOT CACHED
  Routes .................................................................................................................................... CACHED
  Views ................................................................................................................................. NOT CACHED

  Drivers ..........................................................................................................................................
  Broadcasting ................................................................................................................................. log
  Cache ................................................................................................................................... database
  Database ................................................................................................................................... pgsql
  Logs ...................................................................................................................................... stderr
  Mail ........................................................................................................................................ smtp
  Queue ................................................................................................................................... database
  Session ................................................................................................................................. database

  Filament .........................................................................................................................................
  Packages ......................................................................................... filament, forms, notifications, support, tables
  Version .................................................................................................................................. v3.2.23
  Views .............................................................................................................................. NOT PUBLISHED

  Livewire .........................................................................................................................................
  Livewire .................................................................................................................................. v3.4.4

  Speedtest Tracker ................................................................................................................................
  Out of date ................................................................................................................................... No
  Version .................................................................................................................................. v0.14.7

The website works fine.
I login to postgres:
speedtesttracker=# select * from cache;
                         key                          |     value     | expiration
------------------------------------------------------+---------------+------------
 laravel_cache_speedtest-remote-version               | s:8:"v0.14.7 +|<PHONE_NUMBER>
                                                      | ";            |
 laravel_cache_b9cf9c68906d10caefd1ea7b5136c281:timer | i:1707074189; |<PHONE_NUMBER>
 laravel_cache_b9cf9c68906d10caefd1ea7b5136c281       | i:1;          |<PHONE_NUMBER>
(3 rows)

I edit app/Console/Kernel.php to change the time of SystemMaintenance to 14:22 local time. At that time, the website returns a 500 error. Docker logs show:
[2024-02-04 19:22:11] production.ERROR: SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select * from `sessions` where `id` = WT19HvuZ137oyMU6ykIPiQuIn3FJHkHJPrAsZR85 lim
it 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select * from `sessions` where `id` = WT19
HvuZ137oyMU6ykIPiQuIn3FJHkHJPrAsZR85 limit 1) at /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:829)
[stacktrace]
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(983): Illuminate\\Database\\Connection->runQueryCallback()
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(962): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(785): Illuminate\\Database\\Connection->handleQueryException()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(414): Illuminate\\Database\\Connection->run()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2751): Illuminate\\Database\\Connection->select()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2740): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3294): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2739): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(333): Illuminate\\Database\\Query\\Builder->get()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2662): Illuminate\\Database\\Query\\Builder->first()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/DatabaseSessionHandler.php(97): Illuminate\\Database\\Query\\Builder->find()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Store.php(113): Illuminate\\Session\\DatabaseSessionHandler->read()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Store.php(101): Illuminate\\Session\\Store->readFromHandler()
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Store.php(85): Illuminate\\Session\\Store->loadSession()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(147): Illuminate\\Session\\Store->start()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/helpers.php(307): Illuminate\\Session\\Middleware\\StartSession->Illuminate\\Session\\Middleware\\{closure}()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(144): tap()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(116): Illuminate\\Session\\Middleware\\StartSession->startSession()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(64): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Session\\Middleware\\StartSession->handle()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(805): Illuminate\\Pipeline\\Pipeline->then()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(784): Illuminate\\Routing\\Router->runRouteWithinStack()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(748): Illuminate\\Routing\\Router->runRoute()
#28 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php(737): Illuminate\\Routing\\Router->dispatchToRoute()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#30 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(144): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#31 /var/www/html/vendor/livewire/livewire/src/Features/SupportDisablingBackButtonCache/DisableBackButtonCacheMiddleware.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Livewire\\Features\\SupportDisablingBackButtonCache\\DisableBackButtonCacheMiddleware->handle()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle()
#41 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(99): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(183): Illuminate\\Http\\Middleware\\HandleCors->handle()
#45 /var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(39): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()

php artisan about
[2024-02-04 19:23:31] production.ERROR: SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select * from `cache` where `key` = laravel_cache_speedtest-remote-version limit 1
) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select * from `cache` where `key` = laravel_ca
che_speedtest-remote-version limit 1) at /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:829)
[stacktrace]
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(983): Illuminate\\Database\\Connection->runQueryCallback()
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(962): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(785): Illuminate\\Database\\Connection->handleQueryException()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(414): Illuminate\\Database\\Connection->run()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2751): Illuminate\\Database\\Connection->select()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2740): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3294): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2739): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(333): Illuminate\\Database\\Query\\Builder->get()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/DatabaseStore.php(103): Illuminate\\Database\\Query\\Builder->first()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(99): Illuminate\\Cache\\DatabaseStore->get()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(388): Illuminate\\Cache\\Repository->get()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php(429): Illuminate\\Cache\\Repository->remember()
#13 /var/www/html/app/Services/SystemChecker.php(34): Illuminate\\Cache\\CacheManager->__call()
#14 /var/www/html/app/Services/SystemChecker.php(22): App\\Services\\SystemChecker->getRemoteVersion()
#15 /var/www/html/app/Services/SystemChecker.php(41): App\\Services\\SystemChecker->getVersions()
#16 /var/www/html/app/Providers/AppServiceProvider.php(38): App\\Services\\SystemChecker->isOutOfDate()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\\Providers\\AppServiceProvider->App\\Providers\\{closure}()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(81): Illuminate\\Container\\Util::unwrapIfClosure()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#21 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\\Container\\BoundMethod::call()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/AboutCommand.php(83): Illuminate\\Container\\Container->call()
#23 [internal function]: Illuminate\\Foundation\\Console\\AboutCommand->Illuminate\\Foundation\\Console\\{closure}()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Collections/Arr.php(558): array_map()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Collections/Collection.php(777): Illuminate\\Support\\Arr::map()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/AboutCommand.php(74): Illuminate\\Support\\Collection->map()
#27 [internal function]: Illuminate\\Foundation\\Console\\AboutCommand->Illuminate\\Foundation\\Console\\{closure}()
#28 /var/www/html/vendor/laravel/framework/src/Illuminate/Collections/Arr.php(558): array_map()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Collections/Collection.php(777): Illuminate\\Support\\Arr::map()
#30 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/AboutCommand.php(73): Illuminate\\Support\\Collection->map()
#31 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Foundation\\Console\\AboutCommand->handle()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#35 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\\Container\\BoundMethod::call()
#36 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#37 /var/www/html/vendor/symfony/console/Command/Command.php(326): Illuminate\\Console\\Command->execute()
#38 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#39 /var/www/html/vendor/symfony/console/Application.php(1096): Illuminate\\Console\\Command->run()
#40 /var/www/html/vendor/symfony/console/Application.php(324): Symfony\\Component\\Console\\Application->doRunCommand()
#41 /var/www/html/vendor/symfony/console/Application.php(175): Symfony\\Component\\Console\\Application->doRun()
#42 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(201): Symfony\\Component\\Console\\Application->run()
#43 /var/www/html/artisan(35): Illuminate\\Foundation\\Console\\Kernel->handle()
#44 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure()
#45 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#46 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\\Container\\BoundMethod::call()
#47 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#48 /var/www/html/vendor/symfony/console/Command/Command.php(326): Illuminate\\Console\\Command->execute()
#49 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#50 /var/www/html/vendor/symfony/console/Application.php(1096): Illuminate\\Console\\Command->run()
#51 /var/www/html/vendor/symfony/console/Application.php(324): Symfony\\Component\\Console\\Application->doRunCommand()
#52 /var/www/html/vendor/symfony/console/Application.php(175): Symfony\\Component\\Console\\Application->doRun()
#53 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(201): Symfony\\Component\\Console\\Application->run()
#54 /var/www/html/artisan(35): Illuminate\\Foundation\\Console\\Kernel->handle()
#55 {main}
"}

In Connection.php line 829:

  SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select * from `cache` where `key` = laravel_cache_speedtest-remote-version limit 1)

In Connector.php line 65:

  SQLSTATE[HY000] [2002] Connection refused

speedtesttracker=# select * from cache;
 key | value | expiration
-----+-------+------------
(0 rows)

# php artisan db:show
[2024-02-04 19:24:08] production.ERROR: SQLSTATE[HY000] [2002] Connection refused {"exception":"[object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Connection refused at /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:65)
[stacktrace]
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(65): PDO->__construct()
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(83): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate\\Database\\Connectors\\Connector->tryAgainIfCausedByLostConnection()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(184): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#5 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1339): call_user_func()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1288): Illuminate\\Database\\Connection->getPdo()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Console/ShowCommand.php(47): Illuminate\\Database\\Connection->getDoctrineConnection()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\ShowCommand->handle()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#13 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\\Container\\BoundMethod::call()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#15 /var/www/html/vendor/symfony/console/Command/Command.php(326): Illuminate\\Console\\Command->execute()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#17 /var/www/html/vendor/symfony/console/Application.php(1096): Illuminate\\Console\\Command->run()
#18 /var/www/html/vendor/symfony/console/Application.php(324): Symfony\\Component\\Console\\Application->doRunCommand()
#19 /var/www/html/vendor/symfony/console/Application.php(175): Symfony\\Component\\Console\\Application->doRun()
#20 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(201): Symfony\\Component\\Console\\Application->run()
#21 /var/www/html/artisan(35): Illuminate\\Foundation\\Console\\Kernel->handle()
#22 {main}
"}

In Connector.php line 65:

  SQLSTATE[HY000] [2002] Connection refused

@mmomjian can you share your .env file and docker-compose.yml file? My guess is you're missing an env variable because it's trying to connect to a mysql db instead of pgsql

Docker compose is below. The env file is just the postgres connection parameters.
  speedtest-tracker:
        <<: [ *throttle-micro, *nonew, *rsus ]
        container_name: speedtest-tracker
        hostname: speedtest-tracker
        ports:
            - '15781:443'
        networks:
            docknet_teal:
                ipv4_address: redacted
        environment:
            TZ: ${tz}
            PUID: '17683'
            PGID: '17683'
            DB_CONNECTION: 'pgsql'
            DB_HOST: ${pghost2}
            DB_PORT: ${pgport}
            DB_DATABASE: ${pgspeeddb}
            DB_USERNAME: ${pgspeeduser}
            DB_PASSWORD: ${pgspeedpw}
            FORCE_HTTPS: 'true'
            CACHE_DRIVER: 'database'
        labels:
          homepage.name: Speedtest Tracker
          homepage.group: Network
          homepage.href: redacted
          homepage.icon: mdi-speedometer
          homepage.widget.type: speedtest
          homepage.widget.url: redacted
        healthcheck:
         test: curl --insecure -fsS https://<IP_ADDRESS> | grep -c 'title>Dashboard - Speedtest Tracker</title' || exit 1
         <<: *healthdefault
        volumes:
            - '${dockerdata}/speedtest-tracker:/config'
            - '${redacted}/fullchain.pem:/etc/ssl/web/ssl.crt:ro'
            - '${redacted}/privkey.pem:/etc/ssl/web/ssl.key:ro'
        image: 'ghcr.io/alexjustesen/speedtest-tracker:v0.14.7'

Thanks I'll dig into this more later. In the meantime does your .env file have an APP_KEY?

Just updated my comment. There is a 31 character app key, in the format APP_KEY=base64:BzL.............ovk=

@mmomjian that's normal, make sure you generate your key correctly.

@alexjustesen I didn’t generate the key, that’s the automatically created one.

@alexjustesen I'm not sure what you mean by a problem with the key? As my last checking, the web portal stops replying at 00:00 local time every Sunday morning. Anything beyond that is just our guesses at what the problem could be. At 00:00, that DATABASE_CACHE seems to be changed from database to file base on php artisan about.

@mmomjian is there a problem with the key? If so want to keep on topic to make sure I've addressed the scheduler stopping.
@ReVoLt112 is OP so if they say it's resolved or others can confirm I'd like to get this issue closed.

i will report back on Sunday morning

@mmomjian is there a problem with the key? If so want to keep on topic to make sure I've addressed the scheduler stopping.
@ReVoLt112 is OP so if they say it's resolved or others can confirm I'd like to get this issue closed.

is there a way to "force" it to maintenance mode so we can try before Sunday morning ?
php artisan optimize:clear and  php artisan optimize didn't help

@Churator  @alexjustesen I have been simulating a maintenance by editing Kernel.php to change the time of the cron job to whenever I want (outlined above). I just did a test with v0.15.0 and the crash behavior (500 error, unable to connect to DB) is exactly the same as it was in the earlier version.

I've extensively triggered the error over the last few days manually. The conclusion I arrived at is that as soon as the system maintenance runs all settings that are set by docker environment variables are lost.
Steps I took:
Initially I got the error about the missing app key as soon as the error happened in the log.
I checked the .env-file - no app key set there (only through docker environment). So I deleted the .env file and restarted the container. Same error as before when the maintenance runs. Checked the new .env-file - app key was still empty.
Then I started looking around the source - apparently the key is loaded either from environment or from the .env-file - but it is never put from the docker environment in the .env-file.
So I manually put the same app key from docker environment in the .env-file and triggered system maintenance again.
I still got error 500 but this time the error log was different - it's now complaining about mysql refusing the connection.
I think it is trying to reach <IP_ADDRESS> which seems to be the default in source and not the one defined in the docker environment variables.
So I put my database-connection in the .env-file (all settings that are different from the default in the source code) and triggered system maintenance again and voila - the server seems to survive - no error 500 in the GUI and nothing in the docker log.
This leads me to the conclusion that with system maintenance running only the default settings from the source code and the settings from the .env-file come into play - docker environment variables are no longer used by the app (but still set - I checked with "set"-command).
Strange is that all this only happens when the maintenance commands are triggered by the source code. If I run php artisan optimize oder optimize:clear in the console the error never happens.

@Starfiresg1 this is an excellent writeup and it tracks exactly with my observations.
I can't quite seem to figure out what about the source code is causing this, since the same commands run in the console do not cause it. Could it be that running it from the console persists the env vars through the Shell and this allows artisan to retain the otherwise-lost variables through an interactive shell?

Once v0.15.2 is rolled out @Starfiresg1 mind running your tests again to confirm the fix?

Fixed on my end as well, using env vars, and the modified cron job time. Thanks @alexjustesen !

Putting a pin in it then! Thanks all


Prevent errors if jQuery is on compatibility mode

Currently if the website uses jQuery in compatibility mode (i.e. $ is not jQuery but something else) peek causes JS errors.
This do ($ = jQuery) -> wrapper should fix this issues.

Makes sense, thanks for the pull :+1:

Released this in v0.2.0 and pushed to Rubygems.


net/http: multipart ReadForm fails to remove temporary files on io.Copy error

I upload a rather large file to a http.Server as a value of a form in a http POST request. The server is a basic http.Server, set with its Server.ReadTimeout and Server.WriteTimeout at one second, i.e. way too short to handle the request. I am trying to get the file by calling
func (r *Request) FormFile(key string)
The function fails with a timeout error, which is perfectly expected, but it leaves in the temporary folder multipart-xxxxxx files. I think I have traced it back to mime\multipart\formdata.go, l 74:
file, err := ioutil.TempFile("", "multipart-")
			if err != nil {
				return nil, err
			}
			defer file.Close()
			_, err = io.Copy(file, io.MultiReader(&b, p))
			if err != nil {
				os.Remove(file.Name())
				return nil, err
			}

We notice that in this case, if io.Copy fails (which is what happens with my short timeouts) we are going to call os.Remove BEFORE calling file.Close, leading to a os.Remove failure. I confirmed this by adding some logs :
file, err := ioutil.TempFile("", "multipart-")
			if err != nil {
				log.Printf("Error at Tempfile: %+v\n", err)
				return nil, err
			}
			defer func() {
				log.Printf("File Closing : %s\n", file.Name())
				if fileCloseErr := file.Close(); fileCloseErr != nil {
					log.Printf("File close failed : %+v\n", fileCloseErr)
				}
			}()
			_, err = io.Copy(file, io.MultiReader(&b, p))
			if err != nil {
				log.Printf("Error at io.Copy: %v\n", err)
				if osRemoveErr := os.Remove(file.Name()); osRemoveErr != nil {
					log.Printf("os Remove failed: %+v\n", osRemoveErr)
				}
				return nil, err
			}

and this does confirm the error :
[2016-07-08 12:00:17] <Server> Error at io.Copy: multipart: Part Read: WSARecv tcp <IP_ADDRESS>:8084: i/o timeout
[2016-07-08 12:00:17] <Server> os Remove failed: remove C:\cygwin64\tmp\multipart-183404555: Le processus ne peut pas accéder au fichier car ce fichier est utilisé par un autre processus.
[2016-07-08 12:00:17] <Server> File Closing : C:\cygwin64\tmp\multipart-183404555

First line is the expected timeout error
Second line is the attempt to remove the file (French part on second line being the classic Windows error "The process cannot access the file because it is being used by another process")
Third line is defered function closing the file after we tried to delete it.

What version of Go are you using (go version)?
go 1.6.2 windows/amd64

What operating system and processor architecture are you using (go env)?
windows 10 64 bits

set GOBIN=
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows```

3. What did you do?
Tried to parse a file sent through a HTTP POST rquest with func `(r *Request) FormFile(key string)` on a http.Server with timeouts too short for the operation to suceed.

4. What did you expect to see?
multipart temporary files deleted

5. What did you see instead?
multipart files remain in temp folder.

Fix is basic, just manually close the file before os.Remove and move the defer file.Close() below this first error management but I'd love to see this fixed for go 1.7. Given the time frame you may fix it faster on your side than if it gets processed as a first-time submission, but if you'd rather have me submit a patch I'll look into the process early next week.

I think this is probably too late for 1.7, but @bradfitz can decide.

It's been like this for the past 6 releases, since Go 1.0 (https://github.com/golang/go/blob/release-branch.go1/src/pkg/mime/multipart/formdata.go#L78) so I think there's no rush doing this in Go 1.7.
It also only affects Windows, and leaving crap in $TMP should be fine in general: the operating system should be cleaning TMP regularly or as needed.
But we can fix it for Go 1.8.

Alright, thanks for the feedback!


New Weather - Cloudy, Very Cloudy, Fog

Cloudy is just a slight to a heavy dimming of the map compared to a bright day. Fog would be a grey sheen over the map.

I hadn't really thought about weather specific effects
You could tweak the values to emulate it (ie: make Dawn your Cloudy and Dusk your Fog), but then you might end up changing settings a lot.
There is a module that I haven't tested that adds additional weather effects. I've taken a quick glance over the code, and I think it should be compatible with Dynamic Illumination: https://gitlab.com/mesfoliesludiques/foundryvtt-fxmaster
It might be a more sophisticated option.


Constant red light when following Getting Started guide (sd card option)

Hi, I've been trying to get my Coral EdgeTPU board working as per the getting started guide..
I've verified the SHA256 of the download (enterprise-eagle-flashcard-20201208133741.zip) and it matches, balenaEtcher also verifies the with no errors (multiple times) I've tried this a few times to no avail (the red light stays on). The serial output is below. Would appreciate pointers as to what could be wrong.
U-Boot SPL 2019.04.1 (Apr 29 2020 - 18:40:05 +0000)
power_bd71837_init
Board id: 6
DDRINFO: start DRAM init
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
Normal Boot
Trying to boot from MMC2
hdr read sector 300, count=1

U-Boot 2019.04.1 (Apr 29 2020 - 18:40:05 +0000), Build: jenkins-enterprise.uboot-imx-1

CPU:   Freescale i.MX8MQ rev2.0 1500 MHz (running at 1000 MHz)
CPU:   Commercial temperature grade (0C to 95C) at 28C
Reset cause: POR
Model: Freescale i.MX8MQ Phanbell
DRAM:  1 GiB
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... *** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial

 BuildInfo:
  - ATF
  - U-Boot 2019.04.1

flash target is MMC:0
Net:
Warning: ethernet@30be0000 using MAC address from ROM
eth0: ethernet@30be0000
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot:  0
## Executing script at 40480000
Wrong image format for "source" command
## Starting auxiliary core at 0x00000000 ...

@mentarus sorry about that, it hard to tell exactly what went wrong, could you try manual flashing from our flash script as described here instead?
https://coral.ai/docs/dev-board/reflash/#flash-the-board

@mentarus sorry about that, it hard to tell exactly what went wrong, could you try manual flashing from our flash script as described here instead?
https://coral.ai/docs/dev-board/reflash/#flash-the-board

Thanks for the quick response @Namburger, tried that earlier on windows but never got the fastboot to see the device (yes I did go into fastboot mode as I have the old version of the board) tries on two windows machines with the same effect. Eventually tried on Linux and it fastboot saw the device straight away. Would be good to understand why the default method didn't work though!

Thanks for the quick response @Namburger, tried that earlier on windows but never got the fastboot to see the device (yes I did go into fastboot mode as I have the old version of the board) tries on two windows machines with the same effect. Eventually tried on Linux and it fastboot saw the device straight away. Would be good to understand why the default method didn't work though!

@mentarus I see, I have a feeling that the sdcard slot might be faulty, my suggestion is to check and see if you can mount anything form that sdcard slot at all. If it is ends up being a defective HW, we can definitely replace

@mentarus I see, I have a feeling that the sdcard slot might be faulty, my suggestion is to check and see if you can mount anything form that sdcard slot at all. If it is ends up being a defective HW, we can definitely replace

I too followed the getting started guide and got the identical output as @mentarus. I tried this on 2 different Coral boards and got the same output as shown above.

I too followed the getting started guide and got the identical output as @mentarus. I tried this on 2 different Coral boards and got the same output as shown above.

I solved it. I tried burning the flash image onto another SD card (new, out of box) and the install worked. So it looks like the problem was with the SD card. The previous failed attempt was using a card that had already been used so perhaps that was the issue.

I solved it. I tried burning the flash image onto another SD card (new, out of box) and the install worked. So it looks like the problem was with the SD card. The previous failed attempt was using a card that had already been used so perhaps that was the issue.

Once I flashed through fastboot, I could mount and read the card no problem. Hopefully it was just a corrupt SD card issue! Closing the issue for now can always re-open if I encounter it again.

Once I flashed through fastboot, I could mount and read the card no problem. Hopefully it was just a corrupt SD card issue! Closing the issue for now can always re-open if I encounter it again.


python311Packages.qcodes: 0.39.0 -> 0.39.1

Changelog: https://github.com/QCoDeS/Qcodes/releases/tag/v0.39.1
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 249139 run on x86_64-linux 1

12 packages built:

python310Packages.qcodes
python310Packages.qcodes-contrib-drivers
python310Packages.qcodes-contrib-drivers.dist
python310Packages.qcodes-loop
python310Packages.qcodes-loop.dist
python310Packages.qcodes.dist
python311Packages.qcodes
python311Packages.qcodes-contrib-drivers
python311Packages.qcodes-contrib-drivers.dist
python311Packages.qcodes-loop
python311Packages.qcodes-loop.dist
python311Packages.qcodes.dist