2011-11-22 12 views
5

Non riesco a vedere i file di registro in framwork Yii. Di default salva in "protected/runtime". Qui è il mio config nella principale:Impossibile vedere il file di registro in Yii

'log'=>array(
      'class'=>'CLoCFileLogRoutegRouter', 
      'routes'=>array(
       array(
        'class'=>'CFileLogRoute', 
        'levels'=>'error, warning, info', 
        'categories'=>'system.*', 
       ))), 

e questo è come sto accedendo:

Yii::log("Index Checkout", "profile", 'system.web.CController'); 
Yii::trace('IndexCheckout', 'system.web.CController'); 

Non ottenendo alcun errore, ma non riesce a trovare alcun file di log.

Qualche idea? Grazie.

risposta

6

può essere qualcosa di sbagliato con il vostro nome classe Log CLoCFileLogRoutegRouter. Dovrebbe essere CLogRouter

'log' => array(
    'class' => 'CLogRouter', 
     'routes' => array(
      array(
       'class' => 'CFileLogRoute', 
        'levels' => 'error, warning, info', 
        'categories'=>'system.*', 
       ), 
+2

Sembra che abbia digitato un nuovo nome di classe nel mezzo di uno vecchio, accidentalmente senza rimuoverlo prima. :) Mi chiedo però perché non è stato segnalato alcun errore ... –

1

Questo è molto probabilmente un problema di autorizzazioni. La directory di runtime è scrivibile dal tuo server web (Apache)?

+0

Per aggiungere ulteriori informazioni, Im su WAMP e sì la directory ha già il permesso. – Arfeen

1

Si sta configurando il registro per registrare solo i messaggi relativi a 'errore, di avvertimento, e informazioni',

e si sta cercando di accedere, "traccia" (Yii :: traccia) e "profilo" livelli, ecco perché non si ottiene nulla.

anche: Non tentare di accedere cose "profilo" su di voi stessi, ci sono metodi specifici per questo, vale a dire Yii::beginProfile() e Yii::endProfile, saperne di più su profiling a the yii guide

6

Anche se la domanda è già una risposta

Si prega di considerare che Yii scrive i registri dopo che lo script principale è terminato, quindi se si termina lo script usando il comando die(), non si lascia mai scrivere a Yii. Per evitare tali problemi, è necessario terminare lo script utilizzando il comando Yii :: app() -> end().

For more information see here

+0

Grazie per aver risposto, ma se stai rispondendo ... spiegalo correttamente .. – Shivaay

+1

Spiega la tua definizione di correttamente, There is Cause (die()), Solution (Yii :: app() -> end()) e anche una dimostrazione (riferimento alla pagina framework). La domanda non riguarda un concetto, è solo un bug e non penso che siano necessarie ulteriori informazioni. –

+0

grazie! 'exit;' ha lo stesso effetto collaterale di 'die();' do – Sisyphus

Problemi correlati