如何获取 Oracle DB 的调用次数

如何获取 Oracle DB 的调用次数

我想监控应用程序 Oracle DB 发出的调用次数。我应该使用哪个计数器(来自 V$table)?

答案1

我可能会从这个开始,尽管你会加入 v$session 而不是 v$mystat,并过滤属于你的应用程序的会话。但如果会话在未使用时断开连接,这可能会“低估”。

select sid, name, value from v$sesstat s 
  join v$statname n on n.statistic# = s.statistic#
where s.sid in (select sid from v$mystat where rownum=1)
and value > 0
and name in ('user calls')
order by value desc;

另外,我不确定调用是否是一个特别好的指标。如果只能选择一个,我会选择“一致获取”(基本上是数据库块读取)。

最后警告。指标无法区分“由于代码/配置/任何问题,我们正在做更多工作”和“由于我们与客户开展了更多业务,我们在数据库中做了更多工作”。

相关内容