Din kode er i et tilpasset navneområde:
namespace StatCollector;
så denne kode:
catch (Exception $ex)
leder efter en undtagelsesklasse \StatCollector\Exception
, som ikke er det, der kastes:\Exception
er.
Siden Error
og Exception
klasser er i roden navneområde, skal du gøre:
catch (\Exception $ex)
og/eller:
catch (\Error $ex)
eller bare:
catch (\Throwable $t)
så følg også Bill Karwins råd ovenfor.