verificar validar saber registros registro existe eliminar datos consultas buscar php laravel-4 monolog

php - validar - Registro de Laravel: corchetes adicionales al final de las líneas de registro?



validar si un registro existe en la base de datos laravel (2)

Soy nuevo en Laravel, y me he dado cuenta cuando uso su registro basado en Monolog, por ejemplo, Log::info(''blah blah'') , las líneas que escribe en mi archivo de registro tienen el sufijo con dos conjuntos vacíos de corchetes. ¿Para qué son y cómo puedo desactivarlos? No son útiles en lo más mínimo. Intenté profundizar en el código fuente y buscar en Google un poco, pero no veo ninguna explicación.

Ejemplo:

[2013-11-12 09:13:16] log.INFO: Hello world [] []

[2013-11-12 09:13:31] log.INFO: Mi tonto mensaje de registro [] []

¡Gracias!


Aquí hay una solución que combina la respuesta de curtisdf con esta respuesta de Seldaek , y no requiere la subclasificación de LineFormatter de Monolog.

Asumiendo que su archivo app/start/global.php contiene:

Log::useFiles(storage_path() . ''/logs/laravel.log'');

Reemplace eso con:

use Monolog/Handler/StreamHandler; use Monolog/Logger as MonologLogger; use Monolog/Formatter/LineFormatter; // Use custom LineFormatter, with ignoreEmptyContextAndExtra enabled Log::getMonolog()->pushHandler( (new StreamHandler( storage_path() . ''/logs/laravel.log'', MonologLogger::DEBUG ))->setFormatter(new LineFormatter(null, null, true, true)) );


Después de más investigaciones, veo que esto sucede en Monolog/Formatter/LineFormatter . En resumen, los corchetes son una representación JSON de una matriz vacía. Desafortunadamente, no parece que Laravel ofrezca una forma fácil de salir de este, así que terminé subclasificando a Monolog. Publiqué los detalles en esta publicación SO . Pero dado que esa publicación no es específica de Laravel, pensé que compartiría cómo usar un LineFormatter personalizado en un contexto de Laravel.

En su app/start/global.php , por defecto hay una sección que define el registro. Se parece a esto:

Log::useDailyFiles(storage_path().''/logs/log-''.php_sapi_name().''.txt'');

Reemplázalo con esto:

$handler = new Monolog/Handler/StreamHandler( storage_path().''/logs/log-''.php_sapi_name().''.txt''); $handler->setFormatter(new My/Fancy/Monolog/LineFormatter()); Log::getMonolog()->pushHandler($handler);

¡Disfrutar!