Domanda
vorrei registrare alcune variabili quali $mageRunCode
prima che colpisca:
Mage::run($mageRunCode, $mageRunType);
Sembra che Mage::log
e anche la funzione di registrazione di Zend non sembrano uscire ad un'uscita file arbitrario qui. Come si potrebbe fare questo correttamente?
Soluzione
Qual è il motivo specifico che si ha a che fare prima di mago :: run viene chiamato in index.php? Siete preoccupati ottengono cambiato?
Il tentativo di accedere a quel punto richiederebbe di modificare file core (index.php), che non è una buona pratica.
Alcuni flusso:
In Mage :: gestito si ottiene:
self::$_app->run(array(
'scope_code' => $code,
'scope_type' => $type,
'options' => $options,
));
Le variabili a cui è interessato è invariato, a questo punto.
in Mage_Core_Model_App :: gestito si ottiene questa riga di codice:
Mage::register('application_params', $params);
dunque interni Magento ben salva i params utilizzati per voi nel Registro di sistema.
Per loro il login, è possibile utilizzare l'evento 'controller_front_init_before', che è uno dei primi eventi (utilizzabili) licenziato.
In tal caso si può tirare i params salvati, e registrare loro.
$params = mage::registry('application_params');
da notare è che questo avrebbe posto un overhead drastico sulle prestazioni siti, in quanto sarà il login su ogni richiesta. Curioso il motivo per cui si avrebbe bisogno di fare loro il login?
Altri suggerimenti
Io parto dal presupposto che si sta tentando di accedere roba in modalità sviluppatore / ambiente locale, e si vuole smanettare.
Se si desidera accedere qualcosa in Magento in un file di log personalizzato, è possibile utilizzare
Mage::log($myVariable, null, 'myVariable.log');
Per questo, è necessario avere la registrazione abilitato sul backend di amministrazione.
Questo registrerà roba da magento_root/var/log/myVariable.log
Suggerimento: È anche possibile stampare l'intero backtrace (per qualche altro codice profondamente prevista) utilizzando
Mage::log(Varien_Debug::backtrace(true, true), null, 'backtrace.log');
Il vantaggio di stampare l'intero backtrace è che si può vedere il flusso l'esatto metodo / xml la chiamata sta seguendo per raggiungere quel punto in esecuzione, ovunque all'interno del codice php.
Naturalmente, questo il risultato ai magento_root/var/log/backtrace.log