yywx001 发表于 2019-1-22 07:14:22

Zabbix企业级监控之监控TCP连接数

  1、获取TCP连接状态?
  ss、netstat都可以获取到连接状态
  2.shell脚本中获取连接数
vim /etc/zabbix/shell/monitor_tcp.sh#!/bin/bash
#被动打开
LISTEN() {
      ss -an | grep '^tcp' | grep 'LISTEN' | wc -l
}
#服务器接收到了客户端的请求
SYN_RECV () {
      ss -an | grep '^tcp' | grep 'SYN-RECV' | wc -l
}
#客户端第二次访问服务器的状态
ESTABLISHED() {
   ss -an | grep '^tcp' | grep 'ESTAB' | wc -l
}
#完成三次握手四次挥手的后的状态
TIME_WAIT() {
      ss -an | grep '^tcp' | grep 'TIME-WAIT' | wc -l
}
#SYN_SENT与SYN_RECV遥想呼应,当客户端socket执行CONNECT连接时,发送报文之后
#进入SYS_SENT状态,并等到服务器端发送三次握手的第二个报文
SYN_SENT() {
      ss -an | grep '^tcp' | grep 'SYN_SENT' | wc -l
}
#传参进,选择调用哪个函数
$1  3.添加agent模板
vim userparameter_my.confUserParameter=monitor_tcp
[*],/bin/bash /etc/zabbix/shell/monitor_tcp.sh "$1"参数解释:monitor_tcp
[*]:是自定义key,*是传参 是从server端自定义键值的时候传参传下来的
*在web端得键值就是monitor_tcp,调用agent端得函数方法
4.准备更新一个关于zabbix监控的专题,欢迎加入我们的Linux技术交流群:642921645,zabbix监控交流群:832462735 ,我们不定期去更新很多关于系统运维的资料在群里,期待你的加入!
5.文章也会推送到微信公众号
  http://s1.运维网.com/images/20180808/1533657649672691.jpg




页: [1]
查看完整版本: Zabbix企业级监控之监控TCP连接数