Andre e Chiappa eu agradeço a atenção de vc´s, muito obrigado.
att Anderson --- Em oracle_br@yahoogrupos.com.br, "Andre Santos" <[EMAIL PROTECTED]> escreveu > > Anderson > > Considerando isso que o Chiappa nos explicou, então teria que tentar > contornar o problema... talvez utilizando a package DBMS_APPLICATION_INFO > (com SET_CLIENT_INFO) para preencher o campo CLIENT_INFO da V$SESSION. > > [ ] > > André > > > > Em 30/07/07, jlchiappa <[EMAIL PROTECTED]> escreveu: > > > > Muito ** muuuuito *** provável bug no cacareco do 8i, veja o exemplo > > abaixo (que, É CLARO, eu ** não criei ** no SYS, é absolutamente > > CONTRA-RECOMENDADO vc mexer com o SYS, SYS não é um schema teu, é > > particular da própria Oracle, só objs NATIVOS DO BANCO deveriam estar > > lá, ** E QUE ** logicamente NÂO TEM commit,. como documentado vc não > > deve fazer transações em triggers a não ser com autonomous > > transacts), sendo banco 8.1.7.4 PE : > > > > [EMAIL PROTECTED]:SQL>CREATE OR REPLACE TRIGGER scott.T_REG_LOG_ACCESS > > AFTER LOGON ON DATABASE > > declare > > wmod varchar2(60); > > BEGIN > > select substr(module,1,60) > > into wmod > > from v$session > > where audsid=userenv('sessionid'); > > -- > > insert into scott.log_acesso ( > > NO_DBUSER, > > NO_OSUSER, > > NO_APLICACAO, > > NO_HOST, > > NM_IP, > > DT_ACESSO, > > ID_PERMISSAO > > ) > > values( > > user, > > sys_context('USERENV','os_user'), > > wmod, > > sys_context('USERENV','HOST'), > > sys_context('USERENV','IP_ADDRESS'), > > sysdate, > > 'S' > > ); > > END; > > > > Gatilho criado. > > > > ==> ok, vou conectar via sqlplus em outra sessão : > > > > [EMAIL PROTECTED]:SQL>@conn scott/[EMAIL PROTECTED] > > Conectado. > > > > ==> consulto a tabela : > > > > [EMAIL PROTECTED]:SQL>select * from scott.log_acesso; > > > > NO_DBUSER NO_OSUSER NO_APLICACAO NO_HOST > > NM_IP DT_ACESSO I > > --------- --------- ------------ -------------------------- ----- ----- > > -- ------------------- - > > SCOTT jlchiappa meudominioSP\microjl039476 > > aa.bb.cc.ddd 30/07/2007 11:21:28 S > > > > ==> realmente não trouxe... Pra reforçat totalmente a chance de que é > > problema na hora do trigger acessar a v$session na coluna module, > > trunco a tabela de log, e vou guardar TODO O REGISTRO da v$session > > numa outra tab que criei : > > > > [EMAIL PROTECTED]:SQL>create table log_sessao as (select * from v$session > > where 1=2); > > > > Tabela criada. > > > > [EMAIL PROTECTED]:SQL>CREATE OR REPLACE TRIGGER scott.T_REG_LOG_ACCESS > > AFTER LOGON ON DATABASE > > declare > > wmod varchar2(60); > > BEGIN > > select substr(module,1,60) > > into wmod > > from v$session > > where audsid=userenv('sessionid'); > > -- > > insert into scott.log_acesso ( > > NO_DBUSER, > > NO_OSUSER, > > NO_APLICACAO, > > NO_HOST, > > NM_IP, > > DT_ACESSO, > > ID_PERMISSAO > > ) > > values( > > user, > > sys_context('USERENV','os_user'), > > wmod, > > sys_context('USERENV','HOST'), > > sys_context('USERENV','IP_ADDRESS'), > > sysdate, > > 'S' > > ); > > insert into log_sessao (select * from v$session where > > audsid=userenv('sessionid') ); > > END; > > > > Gatilho criado. > > > > ==> conecto como SCOTT em outra sessão, novamente veja que o select > > * da v$session trouxe tudo ** menos ** o module : > > > > [EMAIL PROTECTED]:SQL>select * from scott.log_sessao; > > > > SADDR SID SERIAL# AUDSID PADDR USER# USERNAME COMMAND > > OWNERID TADDR LOCKWAIT STATUS SERVER SCHEMA# SCHEMANAME > > OSUSER PROCESS MACHINE TERMINAL > > PROGRAM TYPE SQL_ADDR SQL_HASH_VALUE PREV_SQL PREV_HASH_VALUE > > MODULE MODULE_HASH ACTION ACTION_HASH CLIENT_INFO > > FIXED_TABLE_SEQUENCE ROW_WAIT_OBJ# ROW_WAIT_FILE# > > ROW_WAIT_BLOCK# ROW_WAIT_ROW# LOGON_TIME > > LAST_CALL_ET PDM FAILOVER_TYPE FAILOVER_M FAI RESOURCE_CONSUMER_GROUP > > PDML_STA PDDL_STA PQ_STATU > > -------- --- ------- ------ -------- ----- --------- ------- ---- ---- > > -- -------- -------- -------- --------- ------- ---------- ------ --- - > > -------- -------------------------- ------------- ------------ -- -- -- > > ------ -------------- -------- --------------- -------- --------- -- -- > > ----- ----------- ----------- -------------------- ------------- ----- > > --------- ------------------ ------------------ ----------------- -- -- > > ---------------- --- ------------- ---------- --- --------------- ----- > > --- -------- -------- -------- > > 021C4F20 15 35 214 0219FAD4 34 SCOTT 2 > > 2147483644 023CD1D0 ACTIVE DEDICATED 34 SCOTT > > jlchiappa 3848:1664 meudominioSP\microjl039476 microjl039476 > > sqlplusw.exe USER 03C2D07C 4061851594 00 > > 0 0 > > 0 66 -1 > > 0 0 0 30/07/2007 > > 11:24:38 0 NO NONE NONE NO > > DEFAULT_CONSUMER_GROUP DISABLED ENABLED ENABLED > > > > ==> notar que se eu fizer o acesso diretamente lá na sessão logada o > > campo vem normal : > > > > [EMAIL PROTECTED]:SQL>select * from v$session where audsid=userenv > > ('sessionid'); > > > > SADDR SID SERIAL# AUDSID PADDR USER# USERNAME COMMAND > > OWNERID TADDR LOCKWAIT STATUS SERVER SCHEMA# SCHEMANAME > > OSUSER PROCESS MACHINE TERMINAL > > PROGRAM TYPE SQL_ADDR SQL_HASH_VALUE PREV_SQL PREV_HASH_VALUE > > MODULE MODULE_HASH ACTION ACTION_HASH CLIENT_INFO > > FIXED_TABLE_SEQUENCE ROW_WAIT_OBJ# ROW_WAIT_FILE# > > ROW_WAIT_BLOCK# ROW_WAIT_ROW# LOGON_TIME > > LAST_CALL_ET PDM FAILOVER_TYPE FAILOVER_M FAI RESOURCE_CONSUMER_GROUP > > PDML_STA PDDL_STA PQ_STATU > > -------- --- ------- ------ -------- ----- --------- ------- ---- ---- > > -- -------- -------- -------- --------- ------- ---------- ------ --- - > > -------- -------------------------- ------------- ------------ -- -- -- > > ------ -------------- -------- --------------- -------- --------- -- -- > > ----- ----------- ----------- -------------------- ------------- ----- > > --------- ------------------ ------------------ ----------------- -- -- > > ---------------- --- ------------- ---------- --- --------------- ----- > > --- -------- -------- -------- > > 021C4F20 15 35 214 0219FAD4 34 SCOTT 2 > > 2147483644 023CD1D0 ACTIVE DEDICATED 34 SCOTT > > jlchiappa 3848:1664 meudominioSP\microjl039476 microjl039476 > > sqlplusw.exe USER 03C2D07C 4061851594 00 0 > > SQL*Plus 0 > > 0 66 -1 > > 0 0 0 30/07/2007 > > 11:24:38 0 NO NONE NONE NO > > DEFAULT_CONSUMER_GROUP DISABLED ENABLED ENABLED > > > > > > ==> e pra finalizar e reforçar a possibilidade de bug no 8i, no meu > > banco 9.2.0.5 EE, mesmo código, eis o resultado trazendo o módulo : > > > > [EMAIL PROTECTED]:SQL>select * from scott.log_acesso; > > > > NO_DBUSER NO_OSUSER NO_APLICACAO NO_HOST > > NM_IP DT_ACESSO I > > --------- --------- ------------ -------------------------- ----- ----- > > -- ------------------- - > > SCOTT jlchiappa sqlplusw.exe meudominioSP\microjl039476 > > aa.bb.cc.ddd 30/07/2007 12:36:23 S > > > > []s > > > > Chiappa > > > > --- Em oracle_br@yahoogrupos.com.br <oracle_br% 40yahoogrupos.com.br>, " > > anderson.castro_16" > > <anderson.castro_16@> escreveu > > > > > > Então André, seu eu fizer a consulta fora da trigger ele me tráz os > > > dados, está muito estranho. > > > > > > > > > --- Em oracle_br@yahoogrupos.com.br <oracle_br% 40yahoogrupos.com.br>, > > "Andre Santos" > > > <andre.psantos.ti@> escreveu > > > > > > > > Anderson > > > > > > > > Se não me engano, a informação "module" da V$SESSION nem sempre > > > está > > > > preenchida. > > > > Depende das informações passadas pela aplicação na conexão > > > (conforme a > > > > biblioteca/método de acesso). > > > > > > > > [ ] > > > > > > > > André > > > > > > > > > > > > Em 30/07/07, anderson.castro_16 <anderson.castro_16@> escreveu: > > > > > > > > > > O owner da trigger é sys! > > > > > > > > > > att > > > > > > > > > > Anderson Castro > > > > > > > > > > --- Em oracle_br@yahoogrupos.com.br <oracle_br% 40yahoogrupos.com.br><oracle_br% > > > 40yahoogrupos.com.br>, > > > > > "Alex Fernando Kirsten" > > > > > <alex.kirsten@> escreveu > > > > > > > > > > > > grant select any dictionary to OWNER_DA_TRIGGER > > > > > > > > > > > > []'s > > > > > > > > > > > > > > > > > > Alex Fernando Kirsten > > > > > > Oracle 9i Database Administrator Certified Professional > > > > > > Depto. de Tecnologia > > > > > > Operacional Têxtil > > > > > > > > > > > > ----- Original Message ----- > > > > > > From: anderson.castro_16 > > > > > > To: oracle_br@yahoogrupos.com.br <oracle_br% 40yahoogrupos.com.br><oracle_br% > > > 40yahoogrupos.com.br> > > > > > > Sent: Monday, July 30, 2007 10:07 AM > > > > > > Subject: [oracle_br] Problema trigger na V$session > > > > > > > > > > > > > > > > > > Pessoal estou com problemas na trigger abaixo, pois a mesma > > não > > > > > está > > > > > > inputando a informação do Module, da v$session na tabela que > > > > > criei > > > > > > com outro usuário. > > > > > > > > > > > > Alguém pode me ajudar é uma banco Oracle 8i. > > > > > > > > > > > > att > > > > > > > > > > > > Anderson Castro > > > > > > > > > > > > CREATE OR REPLACE TRIGGER SYS.T_REG_LOG_ACCESS > > > > > > AFTER LOGON ON DATABASE > > > > > > declare > > > > > > > > > > > > wmod varchar2(60); > > > > > > > > > > > > BEGIN > > > > > > > > > > > > select substr(module,1,60) > > > > > > into wmod > > > > > > from v$session > > > > > > where sys_context('USERENV','SESSIONID') = audsid; > > > > > > > > > > > > insert into sisadm.log_acesso ( > > > > > > NO_DBUSER, > > > > > > NO_OSUSER, > > > > > > NO_APLICACAO, > > > > > > NO_HOST, > > > > > > NM_IP, > > > > > > DT_ACESSO, > > > > > > ID_PERMISSAO > > > > > > ) values( > > > > > > user, > > > > > > sys_context('USERENV','os_user'), > > > > > > wmod, > > > > > > sys_context('USERENV','HOST'), > > > > > > sys_context('USERENV','IP_ADDRESS'), > > > > > > sysdate, > > > > > > 'S' > > > > > > ); > > > > > > commit; > > > > > > END; > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram > > > removidas] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] >