Log De Base De Dados

Tem uma operação que as vezes ‘não grava’ ou ‘some’ depois de ter gravado…

Sem uma pista ainda sobre alguma característica que provoca isso, mas isto ocorre na minoria das vezes…

Queria saber se tem como criar um recurso de log de banco de dados, automáticamente pelo Yii

Pelo que vi esse FrameWork é tão esperto que deve ter, mas não achei a informação ainda…

Basta adicionar uma rota de log no seu arquivo de configuração. Vai ficar ± assim (a parte que você vai adicionar é o segundo array em routes):




'log'=>array(

            'class'=>'CLogRouter',

            'routes'=>array(

                array(

                    'class'=>'CFileLogRoute',

                    'levels'=>'',

                ),

                array(

                    'class' => 'CFileLogRoute',

                    'levels' => 'trace, info',

                    'categories' => 'system.db.*',

                    'logFile' => 'database.log',

                )

            ),

        ),



Isso vai criar um segundo arquivo de log em protected/runtime chamando database.log.

Se você também quiser logar os parâmetros passados nas consultas, adicione o seguinte na sua configuração da conexão com o banco de dados: ‘enableParamLogging’ => true

Valew :D

Fiz as alterações e o arquivo não foi criado

Fiz adições e edições, também reiniciei o servidor pra ver se funcionava, mas não foi…

Aqui esta o meu código


		'log'=>array(

			'class'=>'CLogRouter',

			'routes'=>array(

				array(

					'class'=>'CFileLogRoute',

                    'levels'=>'',

//					'levels'=>'error, warning',

				),

                array(

                    'class' => 'CFileLogRoute',

                    'levels' => 'trace, info',

                    'categories' => 'system.db.*',

                    'logFile' => 'database.log',

                ),

			),

		),



Oq querá que esta faltando ? :unsure:

Verifique se a pasta "protected/runtime" está com permissão de escrita para gerar o arquivo database.log.