On Fri, Nov 30, 2018 at 6:44 PM Richard Katz <[email protected]> wrote:
>
> Hi,
>
> I was just trying to understand why these print out (or log) and what 
> controls this.    That is, is there a way the client can direct them to go to 
> a log directory? Or do they already do that?  Is there a log name for them 
> that has a level control  that would turn them on and off (Debug/Info etc)?

sure it goes through normal Python logging if you aren't using the
"echo" flags (which also use normal Python logging), a description of
the general idea is at
https://docs.sqlalchemy.org/en/latest/core/engines.html#configuring-logging

>
> Cheers,
>
> Rich
>
> On Mon, Nov 26, 2018 at 3:40 PM Mike Bayer <[email protected]> wrote:
>>
>> These are all commands that the SQLAlchemy Pymysql dialect emits to
>> the database the first time it connects, and they are normal.
>>
>> What is the actual problem you are trying to solve ?
>> On Mon, Nov 26, 2018 at 1:18 PM Richard Katz <[email protected]> wrote:
>> >
>> > Hi,
>> >
>> > I see the following messages during initialization of the engine.  I'm 
>> > using pymysql.
>> >
>> > SHOW VARIABLES LIKE 'sql_mode'
>> > SELECT VERSION()
>> > SELECT DATABASE()
>> > SELECT @@transaction_isolation
>> > show collation where `Charset` = 'utf8' and `Collation` = 'utf8_bin'
>> > SELECT CAST('test plain returns' AS CHAR(60)) AS anon_1
>> > SELECT CAST('test unicode returns' AS CHAR(60)) AS anon_1
>> > SELECT CAST('test collated returns' AS CHAR CHARACTER SET utf8) COLLATE 
>> > utf8_bin AS anon_1
>> >
>> > It appears on the 1st call to set up the engine, I get this series of 
>> > messages back.
>> >
>> > I have the following command
>> >
>> > engine = sqlalchemy.create_engine(self.connstring)
>> >
>> > I have tried: create_engine(self.connstring, echo_pool=False, echo=False)
>> >
>> > I traced this down to self.__connect(first_connect_check=True)
>> >
>> > It calls base.__init__ which calls raw_connection
>> > - which calls base._wrap_poop_connect
>> > - which calls pool.unique_connection
>> > - which calls pool._checkout
>> > - _wrap_pool_connect
>> > - pool._do_get
>> > - starts to return: self._create_connection()
>> > -  to return: _ConnectionRecord(self)
>> > - _ConnectionRecord  __init__:
>> >     calls
>> > - pool  self.__connect( first_connect_check=True)
>> >     calls pymysql Connect
>> >     returns self.dbapi.connect(*cargs, **cparams) <- cparams contains the 
>> > connection string parameters.
>> >     returns dialect.connect(*cargs, **cparams)
>> >
>> > to pool 671:  connection = pool._invoke_creator(self)
>> >
>> > pool 679 if first_connect_check:
>> >         681          exec_once(self.connection, self)
>> >
>> >
>> > attr exec_once which is from _CompoundListener _ListenerCollection: 
>> > <sqlalchemy.event.attr._ListenerCollection object at 0x0000014EDA188748>
>> >
>> >    executes a function fn which goes to langhelpers go if once:
>> >
>> >    where once contains:
>> >
>> >    <class 'list'>: [<function 
>> > DefaultEngineStrategy.create.<locals>.first_connect at 0x000001B3A579E598>]
>> >
>> >    dialect.initialize
>> >
>> >    It then calls self._detect_sql_mode(connection)
>> >
>> > which prints the  line: SHOW VARIABLES LIKE 'sql_mode' and
>> >
>> > SHOW VARIABLES LIKE 'sql_mode'
>> > SELECT VERSION()
>> > SELECT DATABASE()
>> > SELECT @@transaction_isolation
>> > show collation where `Charset` = 'utf8' and `Collation` = 'utf8_bin'
>> > SELECT CAST('test plain returns' AS CHAR(60)) AS anon_1
>> > SELECT CAST('test unicode returns' AS CHAR(60)) AS anon_1
>> > SELECT CAST('test collated returns' AS CHAR CHARACTER SET utf8) COLLATE 
>> > utf8_bin AS anon_1
>> >
>> > I'm guessing there must be some switch in PyMySQL - but I don't know.
>> >
>> >
>> > Thanks for any help.
>> >
>> > Cheers,
>> >
>> > Rich
>> >
>> > --
>> > SQLAlchemy -
>> > The Python SQL Toolkit and Object Relational Mapper
>> >
>> > http://www.sqlalchemy.org/
>> >
>> > To post example code, please provide an MCVE: Minimal, Complete, and 
>> > Verifiable Example. See http://stackoverflow.com/help/mcve for a full 
>> > description.
>> > ---
>> > You received this message because you are subscribed to the Google Groups 
>> > "sqlalchemy" group.
>> > To unsubscribe from this group and stop receiving emails from it, send an 
>> > email to [email protected].
>> > To post to this group, send email to [email protected].
>> > Visit this group at https://groups.google.com/group/sqlalchemy.
>> > For more options, visit https://groups.google.com/d/optout.
>>
>> --
>> SQLAlchemy -
>> The Python SQL Toolkit and Object Relational Mapper
>>
>> http://www.sqlalchemy.org/
>>
>> To post example code, please provide an MCVE: Minimal, Complete, and 
>> Verifiable Example.  See  http://stackoverflow.com/help/mcve for a full 
>> description.
>> ---
>> You received this message because you are subscribed to the Google Groups 
>> "sqlalchemy" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at https://groups.google.com/group/sqlalchemy.
>> For more options, visit https://groups.google.com/d/optout.
>
>
>
> --
> Richard Katz
> [email protected]
> (415) 336-9559
> https://www.linkedin.com/in/richardkatz/
> [email protected]
>
> --
> SQLAlchemy -
> The Python SQL Toolkit and Object Relational Mapper
>
> http://www.sqlalchemy.org/
>
> To post example code, please provide an MCVE: Minimal, Complete, and 
> Verifiable Example. See http://stackoverflow.com/help/mcve for a full 
> description.
> ---
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/sqlalchemy.
> For more options, visit https://groups.google.com/d/optout.

-- 
SQLAlchemy - 
The Python SQL Toolkit and Object Relational Mapper

http://www.sqlalchemy.org/

To post example code, please provide an MCVE: Minimal, Complete, and Verifiable 
Example.  See  http://stackoverflow.com/help/mcve for a full description.
--- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to