监控一个应用可以有很多好处,xxxxx 这里就不说了
不同应用的监控的出发点肯定不同,有些事为了看应用性能,有些为了监视外部系统,有些为了数据打点做数据分析等等。
因为出发点不同,应用不同,所以监控的数据结构肯定也不同,如果有一个通用的易扩展的又使可以自管理的监控应用,可以监控所有应用,满足各类需求,那是不是很好呢。
我想到的通用,最好就是不定义死数据结构,让应用负责人自己去定义,且数据采集的和数据消费的方式可以自定义,那就是无限扩展拉(可能我想得太简单了,欢迎拍砖!)。
于是我简单实践了下,写了一个监控的客户端,如下:
http://code.google.com/p/dragonfly-client/wiki/Guides 可以通过svn获取。
该客户端使用jmx管理监控本身的生命周期,使用log方式采集监控数据放入缓存中,通过定时器调度消费者消费数据。
这里log如何收集数据和消费者都提供扩展,包括缓存数据的方式,都可以扩展。
以后可以考虑把客户端注册到监控服务端,把数据发送到服务端,服务端通过定制化的数据展现插件,渲染监控数据报表。
甚至缓存可以扩展到redis,memcached等分布式缓存中保存,数据可以远程分发到,NOSQL 数据库或者hadoop等分布式数据库中, 用于数据分析和挖掘。
监控真是重要啊~ 有了监控,晚上可以安心睡觉拉~
项目还在开发中,欢迎有新需求,更欢迎对代码和设计上有任何建议~~
- 大小: 46.9 KB
分享到:
相关推荐
NULL 博文链接:https://xjg396.iteye.com/blog/1559978
zabbix自动发现JAVA进程,并进行自动添加监控JAVA 进程的JVM数据,统计分析告警监控。...支持多种中间件,tomcat、weblogic、微服务方式部署JAVA应用监控。 自带发现脚本和监控脚本,以及zabbix导入模板。
JavaMelody应用监控使用指南
针对复杂的java应用环境进行全方面的性能监控与管理,文章中引用了ca wily apm解决方案,阐述了如何利用外部工具帮助优化java应用系统的性能,确保用户使用体验,针对weblogic,websphere,jboss等主流java中间件...
java做的监控应用实例
WY(Java应用监控系统)是一款基于JDK8制作,适用于Java应用,具有堆内存监控、方法区监控、GC监控、类加载监控、类编译监控与线程监控功能的在线监控系统。
介绍通过Jconsole工具对Java的应用进行监控
javamelody.jar和jrobin-1.5.9.1.jar 博文链接:https://navylee.iteye.com/blog/746914
RedCube是用 Java开发的用于应用检测,主机检测(cpu,磁盘,内存), 数据库检测,可以提前解决隐藏问题的软件;该软件分服务端和客户端,可将客户端部署在多台主机,服务端负责收集数据并展示数据. 特点:支持APP...
Java实现服务器监控相关代码,使用Maven引入了系统服务jar包. 包含:CPU相关信息、內存相关信息、JVM相关信息、服务器相关信息、磁盘相关信息。 CPU相关信息:核心数 CPU总的使用率 CPU系统使用率 CPU用户使用率等
java 虚拟机监控,构建本地监控远程java虚拟机的visualvm应用,更加直观的分析java 应用的CPU、内存、堆/栈、线程等情况
java做的监控应用实例 初学者很好的实例
基于Java CS远程监控系统软件的设计与实现项目是一款基于Java语言开发的远程监控软件,主要应用Java Socket和Java AWT等技术,实现对远程设备的实时监控和控制。该系统可为企业、学校、政府等单位提供便捷和安全的...
通过向远程虚拟机内部JMX代理注册各种服务来获取虚拟机的信息以及虚机上的应用程序信息,所有的监控过程不用依靠应用来提供信息 通过虚拟机内置的jstat指令获取内存各种堆和非堆的大小及其内存使用量 通过...
专业java监控平台,提供以下特性: 1 JVM/OS cpu消耗监控 2 堆内存细分监控 3 非堆内存细分监控 4 GC耗时和次数监控 5 线程dump 6 堆dump 7 VM类加载及系统参数查看 8 实现了mini版本的long-polling,提供消息推送,...
Java Simon 是一个简单的监控 API ,可用于监控 Java 程序中的执行情况,监控代码直接植入应用程序中。例如下面的代码:// get us some stopwatch SimonStopwatch stopwatch = SimonManager.getStopwatch("org....
脚本运行在linux环境,执行后显示系统前5个cpu占用最大的java程序,并且把里面的异常信息打印出来
RedCube是用 Java开发的用于应用检测,主机检测(cpu,磁盘,内存), 数据库检测,可以提前解决隐藏问题的软件;该软件分服务端和客户端,可将客户端部署在多台主机,服务端负责收集数据并展示数据...
将视频整合成为思维导图,看着方便,节省时间。 内容包括:(1)基于JDK命令后工具的监控(2)基于Btrace的监控调试...(4)java代码层优化(5)JVM层GC调优(6)基于JVisualVM的可视化监控(7)tomcat性能监控和调优
java实现简单的远程控制,附源码。 主要应用socket robot image swing