监控系统开发总结

    为了实现对线上系统监控,方便大家了解线上机器的使用情况以及远程接口是使用情况,需要把我们需要的应用和需要数据在单独罗列出来。
    首先,数据都是从哈勃获得,哈勃掌握着整个淘宝的所有线上机器运行状况。我只通过http请求或者远程接口调用,获得他们的数据。大致了解他们的操作方式,以及如何实现机器监控。他们首先会对系统的情况或者机器的情况打到日志里面,然后每隔几分钟把日志post监控的机器上面。在监控机器上面对日志进行解析,以达到监控系统的效果。这个实时性看post的时间间隔。

   我获得机器情况,都是从哈勃获得解析后的数据。然后经过分析统计显示到自己的系统里面。
   过程中遇到了几个问题。首先由于都是实时的获取数据,所以以前没有数据库,都是实时的去获取数据分析。但是这次发现有些需求每次都是去重取数据,会非常的慢。所以考虑加入数据库。由于不想去维护数据库,就考虑使用能够自动生成表的ORM框架(公司使用的ibatis,便于DBA掌控数据库),我使用JPA,而且不想使用Hibernate这么复杂的东西,后来经过赛选,选择了openJPA,我spring用的2.5.6的版本,开始选用了是openJPA 2.0 的版本,发现总是跑出java.lang.AbstractMethodException,后来经过多次试验总是找不到问题的所在,后来把openJPA换成1.2版本的就好了。原来是spring 2.5.6不支持openJPA 2.0。要想要spring 3.0+openJPA 2.0。
   由于我是使用maven管理的,所以很多包都会自动的导入,其他依情况我也没有仔细看。
   然后是发邮件的功能,为了能更好的把应用状况通知到应用负责人,每天都会在凌晨3点发邮件给应用负责人。通过Spring时间程序实现。不多说。

你可能感兴趣的:(spring,maven,Hibernate,ibatis,jpa)