« oramon, 收集性能数据 »
Tools » http://www.anysql.net/tools/oramon_gather_perf_data.html 2009-04-14不管是以前做DBA技术支持给很多客户做服务, 还是这几年做专职DBA整天盯着一个系统的数据库, 都会收到数据库负载高的报警, 但等到我们打开电脑, 连上网络, 登录主机去看, 却发现负载高的现象已经过去了, 想去查找原因却无从入手, 不好为客户及公司一个很好的交待. 因此努力想编写一个程序, 一直在后台运行, 不停地收集并保存一些有用的性能数据, 可以用来进行事后详细分析原因, 为客户和公司提供更好的技术服务.
经过几年时间不断提炼, oramon最终定型, 从生产库以每时定的时间间隔获取性能数据, 并输出到几个文本文件, 大部份文件以等宽格式显示, 以方便在文本方式下备查, 分析某个问题的最终原因. 另外生成一个包括主要性能数据的文本文件, 可以用scanomon程序将数据实时装载到性能数据库, 然后用WebChart以图形或表格方式来展示这些数据, 进行更直观的性能分析. 其工作方式如下图所示.
oramon收集的数据, 都是经过精心挑选的, 不管是在Oracle 8i/9i还是在Oracle 10g/11g中这些数据, 都能很好地反应数据库的负载情况, 并不需要随着数据库版本的升级, 彻底改变查看性能的工具. 将收集的性能数据装载到性能数据库后, 可以利用WebChart进行灵活的显示定制, 如将不同数据库的Load信息显示在一个页面上, 象I3这样的工具虽然功能复杂, 但要进行定制显示就不是很容易了, OEM中要进行这样定制也不容易, 需要请原厂的开发人员进行定向开发.
当然最重要的是, 遇到性能问题, 总可以在事后分析出精确原因来, 这才是这个工具最有用的地方.


尝试了开源 Ningoo 的tbsql.
下一步,鄙人尝试用PL/SQL开源您的oramon. ^_^
PL/SQL不适合来开发这种程序,Perl都比PL/SQL合适。
咱就当作是做练习,重新熟悉一下系统性能方面的数据字典视图.
oramon+scanmon+webchart 可以整合为一个监控产品啊 可以搞成跟anyaul一样的服务模式
这不正在努力推广吗?