Error Report mailem (500)

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Losos
Člen | 5
+
0
-

Nevíte někdo prosím jak efektivně ošetřit aby error report chodil na určené emaily, a nejlépe jen Error 500?

Díky za odpověď.

one-two
Člen | 80
+
+1
-
Debugger::$email = 'admin@example.com';
Losos
Člen | 5
+
-1
-

one-two napsal(a):

Debugger::$email = 'admin@example.com';

Dobře, díky, ale to potom chodí všechny errory, nejen 500… ne? A kam se umístí tato část?

one-two
Člen | 80
+
+1
-

Např do bootstrapu

Lépe asi takto (tamto sem vytáhl z doc samostatné tracy):

$configurator->enableDebugger($logDir, 'admin@example.com');

nebo v configu
https://doc.nette.org/cs/configuring#…

Losos
Člen | 5
+
0
-

one-two napsal(a):

Např do bootstrapu

Lépe asi takto (tamto sem vytáhl z doc samostatné tracy):

$configurator->enableDebugger($logDir, 'admin@example.com');

nebo v configu
https://doc.nette.org/cs/configuring#…

Díky za příspěvek, ale to pořád neošetřuje aby mail chodil jen na Error 500 … a asi mám někde něco špatně protože mi ani s tímto nechodí mail na žádnej error.

one-two
Člen | 80
+
+1
-

Jestli máš error presenter z sandboxu, tak se tam volá metoda Debugger::log, která posílá případně ten email. Tak si tam uprav podmínku podle vyjímky, případně prioritu, viz https://github.com/…y/Logger.php#L43

Filip Procházka
Moderator | 4668
+
+5
-

Však správně bys měl řešit všechny chyby, nejenom fataly! Copak v aplikaci toleruješ warningy a notices? To jsou taky chyby a měl bys je opravit!

Nette tě správně upozorňuje na všechny, neřeší typ chyby. Chyba je chyba. Pokud je mi známo, tak nijak jednoduše to změnit nejde.

Losos
Člen | 5
+
0
-

Filip Procházka napsal(a):

Však správně bys měl řešit všechny chyby, nejenom fataly! Copak v aplikaci toleruješ warningy a notices? To jsou taky chyby a měl bys je opravit!

Nette tě správně upozorňuje na všechny, neřeší typ chyby. Chyba je chyba. Pokud je mi známo, tak nijak jednoduše to změnit nejde.

Ten mail na 500 chci hlavně kvůli včasnému zjištění, že na serveru tato chyba nastala. Tímto svým dotazem přece netvrdím, že řeším jen Fatal chyby.
Díky za příspěvek

amik
Člen | 118
+
0
-

Pokud se nemýlím, tak chyba 500 je pro nette jakákoli chyba na straně PHP – notice, warning, error, cokoliv.

  • všechny tyto by ti měly chodit, jsou v tvém kódu.
  • chyby 4xx se na serveru neukládají do logu ani neposílají e-mailem, to je přece chyba na straně klienta (stránka nenalezena, chybný požadavek, neautorizováno atd).

Takže vlastně nechápu, co tu řešíte :) Nette ve výchozím nastavení posílá jen chyby 500. Losos: mohl bys případně prosím poslat příklad konkrétní chyby (ne chybový kód), která se ti posílá a myslíš si, že by se posílat neměla/nechceš ji dostávat?