Zabbix监控TCP status
监控原理
ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}'
LAST-ACK 5
ESTAB 348
FIN-WAIT-1 11
CLOSING 1
FIN-WAIT-2 41
TIME-WAIT 2447
LISTEN 8
状态值的解释
ESTABLISHED: The socket has an established connection.
SYN_SENT: The socket is actively attempting to establish a connection.
SYN_RECV: A connection request has been received from the network.
FIN_WAIT1: The socket is closed, and the connection is shutting down.
FIN_WAIT2: Connection is closed, and the socket is waiting for a shutdown from the remote end.
TIME_WAIT: The socket is waiting after close to handle packets still in the network.
CLOSED: The socket is not being used.
CLOSE_WAIT: The remote end has shut down, waiting for the socket to close.
LAST_ACK: The remote end has shut down, and the socket is closed. Waiting for acknowledgement.
LISTEN: The socket is listening for incoming connections.
CLOSING: Both sockets are shut down but we still don’t have all our data sent.
监控脚本
#!/bin/bash
# // pdd
# 未出现的状态值取0 status() {
ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}'
} case $ in
LISTEN)
listen=`status | grep "$1" | awk '{print $2}'`
[ -z "$listen" ] && echo || echo "$listen"
;;
SYN-SENT)
syn_sent=`status | grep "$1" | awk '{print $2}'`
[ -z "$syn_sent" ] && echo || echo "$syn_sent"
;;
SYN-RCVD)
syn_rcvd=`status | grep "$1" | awk '{print $2}'`
[ -z "$syn_rcvd" ] && echo || echo "$syn_rcvd"
;;
ESTAB)
estab=`status | grep "$1" | awk '{print $2}'`
[ -z "$estab" ] && echo || echo "$estab"
;;
FIN-WAIT-)
fin_wait_1=`status | grep "$1" | awk '{print $2}'`
[ -z "$fin_wait_1" ] && echo || echo "$fin_wait_1"
;;
CLOSE-WAIT)
close_wait=`status | grep "$1" | awk '{print $2}'`
[ -z "$close_wait" ] && echo || echo "$close_wait"
;;
FIN-WAIT-)
fin_wait_2=`status | grep "$1" | awk '{print $2}'`
[ -z "$fin_wait_2" ] && echo || echo "$fin_wait_2"
;;
LAST-ACK)
last_ack=`status | grep "$1" | awk '{print $2}'`
[ -z "$last_ack" ] && echo || echo "$last_ack"
;;
TIME-WAIT)
time_wait=`status | grep "$1" | awk '{print $2}'`
[ -z "$time_wait" ] && echo || echo "$time_wait"
;;
CLOSED)
closed=`status | grep "$1" | awk '{print $2}'`
[ -z "$closed" ] && echo || echo "$closed"
;;
*)
echo "Usage: LISTEN SYN-SENT SYN-RCVD ESTAB FIN-WAIT-1 CLOSE-WAIT FIN-WAIT-2 LAST-ACK TIME-WAIT CLOSED"
;;
esac
添加配置文件
userparameter_tcp.conf # 需要reload zabbix_agentd
# TCP
UserParameter=tcp.status[*],/usr/local/zabbix/scripts/tcp-status.sh $
添加监控模板

Zabbix监控TCP status的更多相关文章
- Zabbix监控nginx-rtmp status(json版)
与前面的文章 zabbix监控nginx-rtmp status(html版)区别只在于取值的页面不一样 http://127.0.0.1:81/control/get/all_streams sta ...
- zabbix监控tcp状态
Tcp的连接状态对于我们web服务器来说是至关重要的,从TCP的连接状态中可以看出网络的连接情况,服务器的压力情况,对服务器的并发有很好的直观反映:尤其是并发量ESTAB:或者是syn_recv值,假 ...
- zabbix监控tcp连接数的脚本!!
#!/bin/bash #this script is used to get tcp and udp connetion status #tcp status metric=$ tmp_file=/ ...
- zabbix监控tcp连接并发数
第一步,想在zabbix的web监控tcp连接数,那么要看zabbix-server的版本和zabbix-agent版本是否一致,不然TCP-status图没有数据 也会报错.下图就是版本不符合报错的 ...
- ZABBIX监控TCP连接状态
一.获取监控数据 # /bin/netstat -an|awk '/^tcp/{++S[$NF]}END{for(a in S) print a,S[a]}' LISTEN ESTABLISHED T ...
- zabbix 监控TCP状态连接数
1.zabbix客户端,监控TCP状态脚本,并保存到的定路径.(/usr/local/zabbix-agent/shells) # cat zabbix_linux_plugin.sh #!/bin/ ...
- Zabbix监控redis status
概述 zabbix采用Trapper方式监控redis status 原理 redis-cli info命令得到redis服务器的统计信息,脚本对信息分两部分处理: (1)# Keyspace部分为Z ...
- Zabbix监控php-fpm status
开启php-fpm status php-fpm.conf pm.status_path = /statusx45 nginx.conf location ~ /(statusx45)$ { incl ...
- Zabbix监控nginx status
nginx开启status ./configure --with-http_stub_status_module nginx.conflocation /statusx35 { stub_status ...
随机推荐
- 3.1 Templates -- Handlerbars Basics(Handlerbars基础知识)
一.简介 Ember.js使用Handlerbars模板库来强化应用程序的用户界面.它就像普通的HTML,但也给你嵌入表达式去改变现实的内容. Ember使用Handlerbars并且用许多新特性去扩 ...
- 33Sql数据删除与遍历
数据库的创建.添加.修改.查询.删除都是利用SQL语句和类QSqlQuery的结合. QSqlDatabase::database().可返回当前正在打开的数据库对象. 数据库的删除 //获取删除的名 ...
- nodejs+express工程 在npm install之后或使用npm install bootstrap命令安装bootstrap之后
nodejs+express工程 在npm install之后或使用npm install bootstrap命令安装bootstrap之后引入bootstrap文件 如果你的静态资源存放在多个目录下 ...
- Java实现文件上传到服务器(FTP方式)
Java实现文件上传到服务器(FTP方式) 1,jar包:commons-net-3.3.jar 2,实现代码: //FTP传输到数据库服务器 private boolean uploadServer ...
- 20155201 实验四《Java面向对象程序设计》实验报告
20155201 实验四<Java面向对象程序设计>实验报告 一.实验内容 1.基于Android Studio开发简单的Android应用并部署测试; 2.了解Android.组件.布局 ...
- linux内核启动时报错ubi0 error: validate_ec_hdr: bad data offset 256, expected 128
1.错误解析 ubi的EC header中有一个字段data_offset来记录数据偏移,数据偏移必须正确才能正确读取每一个物理擦除块中的数据 2.解决方法 擦除整块flash,然后再重新烧写包含ub ...
- ubuntu 18.04 64bit如何编译安装内核
1.获取 wget http://mirrors.163.com/kernel/v4.x/linux-4.15.13.tar.gz 2.解压 tar xvf linux-4.15.13.tar.gz ...
- POJ - 3254 Corn Fields(状压DP)题解
思路: 参照blog,用状压DP做,和题解稍微有点不一样,我这里直接储存了状态而不是索引. 这一题的问题是怎么判断相邻不能种,我们用2进制来表示每一行的种植情况.我们将每一行所能够造的所有可能都打表( ...
- Maven编译代码的时候跳过单元测试
Maven编译代码的时候跳过单元测试 <properties> <maven.test.skip>true</maven.test.skip> </prope ...
- BZOJ 3529 【SDOI2014】 数表
题目链接:数表 我们一起来膜PoPoQQQ大爷的题解吧Orz 首先我们来考虑没有\(a\)的限制该怎么做.显然交换\(n\),\(m\)答案不变,所以后面默认\(n \le m\). 我们定义两个函数 ...