Jak nastavit maxQueries v ConnectionPanel?
- newbie
- Člen | 31
Potřeboval bych změnit výchozí hodnotu:
/** @var int */
class ConnectionPanel extends Nette\Object implements Tracy\IBarPanel
{
/** @var int */
public $maxQueries = 100;
nejlépe v config.neon
Tracy vypisuje prvních 100 dotazů a místy jich mám víc.
Editoval newbie (8. 1. 2015 14:18)
- trejjam
- Backer | 65
Když je public můžeš ji s klidným svědomím přepsat zvenčí
/**
* @var Nette\Database\Diagnostics\ConnectionPanel @inject
*/
public $connectionPanel;
function updateMaxQueries($max=200) {
$this->connectionPanel->maxQueries=$max;
}
Případně ji podědit a zaregistrovat místo ConnectionPanel (v neonu) ← což by se mi zamlouvalo víc.
Ale osobně bych se spíše zamyslel nad tím proč pokládáš tolik dotazů, nejde to nějak optimalizovat?
- newbie
- Člen | 31
Nette 2.2.7
/**
* @var Nette\Bridges\DatabaseTracy\ConnectionPanel @inject
*/
public $connectionPanel;
function updateMaxQueries($max = 200)
{
$this->connectionPanel->maxQueries = $max;
}
Nejdřív řvalo že mu chybí Nette\Bridges\DatabaseTracy\ConnectionPanel v services. Po nahození do services jsem nevěděl kde volat updateMaxQueries(). V BasePresenteru bylo asi pozdě.
No ale vyřešeno pomocí podědění a přidání do configu:
nette:
debugger:
bar:
- myProject\ConnectionPanel2
services:
- myProject\ConnectionPanel2
<?
namespace myProject;
use Nette\Bridges\DatabaseTracy\ConnectionPanel;
class ConnectionPanel2 extends ConnectionPanel{
public $maxQueries = 600;
}
Je to mnoho dotazů, většinou ale v administrační části kde mě to dvakrát netíží. Děkuji za navedení.
Editoval newbie (8. 1. 2015 16:25)