公司很多应用部署在不同的服务器上。 想开发个简单的 web 应用能够简单监控不同服务器上的应用运行情况~ 求解题思路!
1
m31271n 2016-08-02 19:22:50 +08:00
给应用做好数据埋点,然后配合一些监控应用就可以(比如 https://prometheus.io/)。可以参考下这篇文章的思路 https://ruby-china.org/topics/23470
|
2
m31271n 2016-08-02 19:23:25 +08:00
给应用做好数据埋点,然后配合一些监控应用就可以(比如 https://prometheus.io/ )。可以参考下这篇文章的思路 https://ruby-china.org/topics/23470
|
3
knightdf 2016-08-02 21:04:24 +08:00
graphite 可以满足
|
4
ren2881971 OP 额。。 谢谢 ls 的兄弟回复。
但我想要的不是一个工具。 想要是通过代码怎么实现~ 比如 我能通过 nodejs 的 websocket 一直与应用保持长连接这种方式 来监控应用的运行情况么? |
5
GeekGao 2016-08-03 12:33:37 +08:00
可以写个简单的 agent 到应用服务器上收集状态信息发送到你的监控代理上,也可以由监控代理主动去请求应用的接口或页面做状态判断。
服务器监控的常见手段么,无非是: SNMP 、 WMI 、 HTTP Get 、 PING 等, lz 可以去了解下 Zabbix 等开源监控系统的架构 |
6
viila 2016-08-03 14:43:08 +08:00
healthcheck 。非侵入的话可以通过收 log 的方式来做。比如 logstash+graphite 。配置下即可
|
7
ren2881971 OP @GeekGao 监控代理主动请求应用的页面 只要 http 能返回正确 应该就可以了。
|
8
winglight2016 2016-08-03 16:02:22 +08:00
你这种需求,可以自己选择一个消耗最小的 url ,用 curl 发送 HEAD 请求, 200 回来就表示正常,以上。
|
9
ren2881971 OP @winglight2016 你这个不错~~~ 3q
|
10
wshcdr 2016-08-03 18:21:02 +08:00
nagios 就是专业干这个的...
|
11
thetcc 2016-08-03 20:05:07 +08:00
influxdb+telegraf+kapacitor+grafana
|