Procedure

Tuning de Banco, Tuning de SQL, Ferramentas de tuning
Responder
danielpbarros
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 67
Registrado em: Dom, 15 Jan 2012 9:34 pm
Contato:
Daniel Barros

Boa tarde,

Eu conseguiria um comando para saber quantas vezes uma procedure X foi executada?

abraços.
ruibarros
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 93
Registrado em: Qui, 29 Jan 2009 11:44 am
Localização: Cuiabá
Rui Barros
OCP - Oracle Certified Professional

Olá Daniel,
até aonde eu sei, não consegue ... O ideal era você criar uma tabela de log, e no inicio da procedure colocar um insert ou algo do tipo pra ir fazendo uma soma, ou um contador ...

Talvez uma trigger ajude também ... depende de cada caso ...

Abraço.
leandromiranda87
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 43
Registrado em: Ter, 20 Mar 2012 11:37 am
Localização: Campinas
Leandro L. Miranda

A idéia do Daniel é muito boa, mas não acho que a trigger seja uma boa. Já que é uma procedure, o código com update da tabela de log poderia ficar ao final do procedimento.. :D
Trevisolli
Moderador
Moderador
Mensagens: 2016
Registrado em: Qua, 12 Jan 2005 3:25 pm
Localização: Araraquara - SP
Abraço,

Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP

Brother,

Dá uma olhada nestes links abaixo, talvez lhe ajude na questão:

https://forums.oracle.com/forums/thread ... dID=669014
http://asktom.oracle.com/pls/asktom/f?p ... 0346667213

Qualquer dúvida, manda ai pra gente.
Avatar do usuário
heraldoaraujo
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 41
Registrado em: Dom, 19 Fev 2012 12:10 pm

Cria uma auditoria do oracle.
audit execute procedure on schema.procedure by access whenever successful

acho que é isso.
Avatar do usuário
fbifabio
Moderador
Moderador
Mensagens: 199
Registrado em: Ter, 22 Fev 2011 1:51 pm
Localização: São Paulo - SP
Contato:
Fábio Prado
www.fabioprado.net

danielpbarros,

É possível saber facilmente qtas vezes uma procedure foi executada, se a procedure ainda estiver na memória (SGA) do Oracle.

Segue abaixo uma consulta que você poderá executar para ver isso e q eu explico em detalhes em meus treinamentos de SQL Tuning:

Selecionar tudo

select        a.sql_id,
                      u.username,
                      sc.username as schemaname,                      
                      a.executions,                       
                      a.cpu_time/(1000000) "cpu_time (s)",
                      a.disk_reads,
                      a.elapsed_time/(1000000) "elapsed_time (s)",
                      (a.sharable_mem + a.persistent_mem + a.runtime_mem) /1024/1024 "used_memory (mb)",
                      a.first_load_time,
                      TO_CHAR(a.last_load_time,'dd/mm/yy HH24:mi:ss') last_load_time,
                      a.buffer_gets,
                      a.sorts,
                      a.loads,
                      a.application_wait_time/(1000000) "application_wait_time (s)",
                      a.concurrency_wait_time/(1000000) "concurrency_wait_time (s)",
                      a.user_io_wait_time/(1000000) "user_io_wait_time (s)",
                      a.plsql_exec_time/(1000000) "plsql_exec_time (s)",
                      a.rows_processed,
                      a.optimizer_mode,
                      a.optimizer_cost,                      
                      --a.sql_text,
                      DBMS_LOB.SUBSTR(a.SQL_FULLTEXT, 4000,1) sql_text,
                      b.value_string
        from          v$sqlarea a
        INNER JOIN    dba_users u
              ON      a.parsing_user_id = u.user_id
        INNER JOIN    dba_users sc
              ON      A.PARSING_SCHEMA_ID = SC.USER_ID
        INNER JOIN    v$sql_bind_capture b
              ON      a.address = b.address
              AND     a.hash_value = b.hash_value;
[]s

Fábio Prado
www.fabioprado.net
danielpbarros
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 67
Registrado em: Dom, 15 Jan 2012 9:34 pm
Contato:
Daniel Barros

Obrigado pelas resposta.
O select do Fábio me ajudou bastante.

abs.
Daniel.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 7 visitantes