Bonjour,
J'utilise wazaari/monolog-mysql (https://packagist.org/packages/wazaari/monolog-mysql) pour mon système de log. Pas de problème il fonctionne très bien, j'ai un viewer, etc...
Je voudrais par contre créer des enregistrements à partir de class que j'ai créée mais je ne voias pas comment faire...
//Import class
use MySQLHandler\MySQLHandler;
//Create MysqlHandler
$mySQLHandler = new MySQLHandler($pdo, "log", array('username', 'userid'), \Monolog\Logger::DEBUG);
//Create logger
$logger = new \Monolog\Logger($context);
$logger->pushHandler($mySQLHandler);
//Now you can use the logger, and further attach additional information
$logger->addWarning("This is a great message, woohoo!", array('username' => 'John Doe', 'userid' => 245));
Je ne me vois pas refaire tout ça danc chaque classe où je souhaite l'utiliser...
Par avance, merci!
Histoire de continuer à chercher j'ai fait une petite class toute bête avec variables statice: logger et mySQLHandler que j'initialise dans mon index:
namespace App;
class logInstance
{
public static $logger;
public static $mySQLHandler;
}
Dans "index.php":
\App\logInstance::$mySQLHandler = new MySQLHandler($dbh, "log", array('context'), \Monolog\Logger::DEBUG);
\App\logInstance::$logger = new \Monolog\Logger('log');
Et lorsque je veux créer une entrée de log à partir d'une autre classe, je fais comme ça:
logInstance::$logger->pushHandler(logInstance::$mySQLHandler);
logInstance::$logger->addInfo(
'Un message informatif',
array('context' => '{"MsgErreur": "Un test de test..."}')
);
Ca marche mais je suppose que vous avez une méthode beaucoup plus "propre" que ça, et je suis donc preneur au cas où. :)