zoukankan      html  css  js  c++  java
  • zabbix 自定义采集网络连接状态

    Python版本:

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    import subprocess
    import sys
    import re
    
    status_dict = {}
    cmd= '/usr/sbin/ss -s'
    tmp_text = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE).communicate()[0]
    tmp_list = re.findall("(?<=[(]).*(?=[/])",tmp_text)[0].split(",")
    for i in tmp_list:
        status_dict[str(i.split()[0])] = int(i.split()[1])
    
    print status_dict[sys.argv[1]]
    

    Bash版:

    #!/bin/bash
    NUM=$(/usr/sbin/ss -s| grep -oP "(?<=$1 )d+")
    echo ${NUM:-555}
    

    用法
    将脚本传到agent端,脚本加执行权,配置zabbix_agentd.conf。

    UserParameter=parallel[*],/workspace/shell/parallel.py $1
    

    zabbix WEB页面配置一个模板,在健值 key 这里配置一下parallel[estab]
    ss 这个命令提供了estab closed orphaned synrecv timewait 这些状态,
    所以estab就是采集系统的ESTABLISHED状态的连接数。

    orphaned 状态:不属于任何进程的socket连接数

  • 相关阅读:
    Insert into a Binary Search Tree
    Search in a Binary Search Tree
    Binary Search Tree Iterator
    Validate Binary Search Tree
    Serialize and Deserialize Binary Tree
    图的搜索
    codeforce vk cup2017
    hdu1160dp
    完全背包hdu1114
    最长递增子序列hdu1087
  • 原文地址:https://www.cnblogs.com/itflycat/p/4450847.html
Copyright © 2011-2022 走看看