服务器监控

          服务器监控
  最近经常出现服务器应用程序被关闭,而公司又没有监控程序,程序挂了都不知道。~~~基金公司连个监控系统都不买~~~吐槽中。
  没有监控系统怎么办,领导可不管那么多,出了问题找的是你,曾经一度只要手机响了就怕说是电话通知网站挂了呀,拿着白菜价的工资,操着卖白粉的心。我是程序员,你说怎么办,怎么办,自己写监控程序呗......
  说写就写,首先收集需求嘛
    1.监控进程
    2.监控端口
  什么,就这2点需求?这叫什么需求,我是java程序员,这个很简单嘛,写个程序监控一下很简单的嘛!但是还没写,我就打退堂鼓了,java写的程序必须要有运行环境,要安装jdk呀,还要主要版本呢,这叫什么事咯。


  然后呢,然后呢,没然后了,然后想了一个问题,监控程序提醒用什么,邮件?太麻烦,谁会实时注意邮件,反正我是不喜欢看邮件的。短信?收费呢,就算公司的,你哪能给你私人用呀,就这样被否决了。微信企业号不是可以发消息嘛,公司恰好有个企业号,说干就干,写了个简单的接口对接微信企业号,然后提供一个外网接口用于发送消息,等什么时候监控程序写好了,就直接用就行了。
  接口长成这样:http://xxx.com/xxx.do?content=?&toUser=?,

  是个程序员都懂吧,content是发送内容,toUser是发送对象,必须关注了我的企业号才行。
  废话了那么多,切入主题。脚本语言就能监控进程,window机器用vbs,linux 用shell脚本,都是系统自带的,不用什么运行环境。
  先来个windows下监控进程的,代码如下

start.vbs

 

stop.vbs

 1 CreateObject("WScript.Shell").Run "taskkill /f /im wscript.exe",1 

给个装逼的界面,因为脚本语言的限制,所以要点击确认后才能真正的执行后续的脚本。

要关闭监控,运行stop.vbs

 

手工关闭一个进程,监控立马报警,看如下

 

 

未完待续:

     1、监控端口

     2、linux上面脚本的编写

 

另外请一个会C的同事写了个监控程序,可以监控进程,监控端口,做的挺好的,界面如下:

   

 

~~~~~~

涉及到业务的监控,用java写了监控程序来监控,用企业号的这个接口来发送消息。

还啰嗦一下,有个不成熟的想法,不过暂时没去实行。

      如果机器挂了,监控程序本身挂了,该怎么及时提醒,如果应用开启后有端口的还好,我可以部署几个监控程序,相互监控,不可能所有的监控程序都挂了吧。

  提供一个统一接口 接收 监控程序的定时报告(包括内存,cpu等信息),然后用一个页面显示所有的服务器最新的情况,如果服务器有一段时间没更新监控状态了,就提醒是否机器已经失联。

 

posted @ 2016-06-30 15:47  xyun  阅读(1501)  评论(0)    收藏  举报