Hvordan lage tilpassede sql innlogging symfony to og lære to?

stemmer
2

Jeg må legge til sql logging for å jobbe i native WebProfileBundle. Når jeg gjør en standard tilkobling i søknad config, ser jeg SQL-spørringer i min logg. Men søknaden min bruker mange forbindelser til mange db servere, så jeg kan ikke legge alle mulige forbindelser til config fil.

Jeg oppretter runtime tilkoblinger, dvs:

$config = array(
        'user' => 'user1',
        'password' => 'pass1',
        'driver' => 'pdo_mysql',
        'port' => 3306,
);
$conn = DriverManager::getConnection($config);

så tror jeg skal være kommando noe sånt som dette

$conn->getConfiguration()->getSQLLogger($someLoggerObject);

Jeg har prøvd å løse dette problemet med DependencyInjection, tok DoctrineBundle som eksempel. Men har uten hell.

Alle hjelpe med levende kode eller lenke til skikkelig dokumentasjon ville være stor

Publisert på 19/10/2010 klokken 18:17
kilden bruker
På andre språk...                            


1 svar

stemmer
1

Jeg har dette i min conf:

$config = new Configuration;
/** configuration stuff */
$config->setSQLLogger(MyLogger::getInstance());

$connectionOptions = array(
            'driver' => 'pdo_mysql',
            'user' => DB_USER,
            'password' => DB_PASS,
            'host' => DB_HOST,
            'dbname' => DB_NAME,
            'charset' => 'utf8',
            'driverOptions' => array(
                    'charset' => 'utf8'
            )
    );
$em = EntityManager::create($connectionOptions, $config);

Jeg bruker Zend + Doctrine2 og det er i min bootstrap, er min logger singel (dvs hvorfor getInstance). Jeg har aldri bruker DriverManager, men jeg håper dette hjelper.

Svarte 18/10/2011 kl. 00:44
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more