zoukankan      html  css  js  c++  java
  • zabbix监控大华NVR

    [root@ZBX2-HQ externalscripts]# cat zdahua_nvr.py
    from amcrest import AmcrestCamera
    import sys
    
    class DataNvr(object):
        def __init__(self,name):
            self.name = name
            self._data_dic = {
                "HF-NVR":["192.168.89.210", 80,"hehe", "hehe"],
                "SY-NVR": ["192.168.33.9", 80,"haha", "hehe"],
            }
            self._ipaddress = self._data_dic[self.name][0]
            self._port = self._data_dic[self.name][1]
            self._useradmin = self._data_dic[self.name][2]
            self._password = self._data_dic[self.name][3]
            self.cameras = AmcrestCamera(self._ipaddress, self._port,self._useradmin, self._password).camera
    
    
        @property
        def storage_used(self):
            used = self.cameras.storage_used[0]
            """(1639.49, 'GB')"""
            return used
    
        @property
        def storage_all(self):
            storage_all = self.cameras.storage_all
            """{'used_percent': 88.01, 'used': (1639.49, 'GB'), 'total': (1862.95, 'GB')}"""
            return storage_all
    
        @property
        def storage_total(self):
            total = self.cameras.storage_total[0]
            return total
        @property
        def storage_used_percent(self):
            percent = self.cameras.storage_used_percent
            return percent
    
        @property
        def ping_alive(self):
            from mass_ping import MassPing
            hosts = [self._ipaddress, ]
            ping = MassPing(hosts=hosts, thread_count=len(hosts), test_count=2)
            return 1 if ping.each_ping(self._ipaddress) else 0
    
    if __name__ == '__main__':
        msg_name  = sys.argv[1].strip()
        msg_case = sys.argv[2].strip()
        datanvr = DataNvr(msg_name)
        if hasattr(datanvr,msg_case):
            values = getattr(datanvr, msg_case)
            print(values)
    
    
  • 相关阅读:
    asd
    自勉
    php cli 参数
    编译
    WebMisSharp的协同开发
    WebMisDeveloper4.5.0 基于Ext.net,Extjs,MVC/简单三层的自动生成开发利器
    WebMisDeveloper更新专版
    外设驱动库开发笔记37:S13365BQ光敏二极管作为光度计驱动
    Java学习笔记之多线程 生产者 消费者
    Java学习笔记之IO流&Properties集合
  • 原文地址:https://www.cnblogs.com/wangxiang135/p/13332006.html
Copyright © 2011-2022 走看看