Error reporting / posílání chyb na mail

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

Ahoj, po delší odmlce jsem se vrátil k Nette :)

Chtěl jsem teď na 2.1-dev zapnout reporting na mail, ale nic nechodí.

$configurator->enableDebugger(__DIR__ . '/../log', 'muj@mail.cz');

Fce mail() mi funguje.

mail("muj@mail", "test subject", "test body", "From: sender@sendaa.cz");

V konfigu nic pod nette.mailer nemám. Zkouším to přes

throw new \Exception(rand());

a přestože ./log/exception-* se hromadí, mail zeje prázdnotou.

Na serveru je sendmail, smtp ne. Jak se teď nově tohle zapíná v config.neon? Argumenty enableDebugger() jsem vykoukal z api, v dokumentaci to popsané není (?).

Dík

22
Člen | 1478
+
0
-

myslím:

	nette:
		debugger:
			email: mail@mail.cz

Editoval 22 (5. 8. 2012 22:23)

vvoody
Člen | 910
+
0
-

Jedine co mna napada je pozriet spamovy kos :D

Btw Logger defaultne pouziva mail() a na jeho zmenu treba nastavit callback. Myslim ze akekolvek nastavenie maileru v configu na toto odosielanie logov na mail nema vpliv (ak som nieco neprehliadol), dokial sa loggeru nenastavi callback kde bude ten mailer pouzity.

Mikulas Dite
Člen | 756
+
0
-

Bezva, takhle to funguje, dík :)

Škoda, že o tom není zmínka v dokumentaci, už to tam píšu.

A nedalo mi to, ale to API konfigurátoru je teda k ničemu, ne? https://github.com/…e/issues/723

Edit: Aha, částečně moje chyba, je o tom zmínka na https://tracy.nette.org/cs/#…, ale používá to

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

Měl jsem pocit, že tenhle zápis už je deprecated, tak jsem to přeskočil bez čtení.

Edit: ok přidal jsem to do Ladění, tak se to hodí víc než do Konfigurace (o trochu).

Editoval Mikulas Dite (5. 8. 2012 22:50)

Majkl578
Moderator | 1364
+
0
-

A nemáš problém někde jinde?

Když si projdeš zdrojáky, tak uvidíš, že při volání Configurator::enableDebugger se 2. argument předá do 3. parametru volání Debugger::enable a e-mail se nastaví. Úplně stejně, jako když to dáš do configu.

vvoody
Člen | 910
+
0
-

NetteExtension configu zrejme vzdy prepise email na NULL (tu) co je defaultna hodnota (tato) ak v configu email nieje uvedeny.

edit: Teoreticky ak by sme posunuli ennableDebugger az za addConfig, tak by to fungovalo spravne. (Nette\Diagnostics\Debugger::enable neprepisuje email na null ak je null)

Editoval vvoody (6. 8. 2012 1:02)

Majkl578
Moderator | 1364
+
0
-

To pochybuji, je to ošetřeno pomocí isset($config['debugger'][$key]), což pro výchozí NULL bude FALSE.

Teoreticky ak by sme posunuli ennableDebugger az za addConfig, tak by to fungovalo spravne.

Musel bys to dát až za volání createContainer.

vvoody
Člen | 910
+
0
-

Tak potom to berem spat. Preco sa ta funkcia nevola issetornull? :D Clovek sa ani na nazov funkcie nemoze spolahnut.