设为首页 收藏本站
查看: 613|回复: 0

[经验分享] zabbix监控数据库

[复制链接]

尚未签到

发表于 2019-1-24 13:03:40 | 显示全部楼层 |阅读模式
目录:
zabbix && mongodb......1-1346
zabbix && redis........1349-3727
zabbix && mysql........3731-end
//zabbix 监控mongodb
cat /etc/zabbix/zabbix_agentd.d/userparameter_mongo.conf
UserParameter=mongo.service,ps -ef | grep mongo |grep -v grep |wc -l
UserParameter=mongo.mem_resident,echo "db.serverStatus().mem"| mongo|grep resident | cut -d ":" -f 2 |cut -d "," -f 1| cut -d " " -f 2
UserParameter=mongo.mem_virtual,echo "db.serverStatus().mem"| mongo|grep virtual | cut -d ":" -f 2 |cut -d "," -f 1| cut -d " " -f 2
UserParameter=mongo.mem_mapped,echo "db.serverStatus().mem"| mongo|grep '\bmapped\b' | cut -d ":" -f 2 |cut -d "," -f 1| cut -d " " -f 2
UserParameter=mongo.network
  • ,echo "db.serverStatus().network"|mongo | grep $1 | cut -d ":" -f 2 |cut -d "," -f1 |cut -d " " -f 2
    UserParameter=mongo.index
  • ,echo "db.serverStatus().indexCounters"|mongo | grep $1| cut -d ":" -f 2 |cut -d "," -f1 |cut -d " " -f 2
    UserParameter=mongo.connection_current,echo "db.serverStatus().connections"| mongo| grep current|cut -d ":" -f 2|cut -d "," -f 1|cut -d " " -f 2
    UserParameter=mongo.connection_available,echo "db.serverStatus().connections"| mongo| grep current| cut -d ":" -f 3|cut -d "," -f 1 |cut -d " " -f 2
    UserParameter=mongo.opcounters
  • ,echo "db.serverStatus().opcounters" |mongo | grep $1|cut -d ":" -f 2|cut -d "," -f 1 |cut -d " " -f 2
    UserParameter=mongo.rpstatus,echo "rs.status()"| mongo | grep myState| cut -d ":" -f 2| cut -d "," -f 1 |cut -d " " -f 2
    UserParameter=mongo.queue_write,echo "db.serverStatus().globalLock.currentQueue.writers"|mongo |sed -n 3p
    UserParameter=mongo.queue_reader,echo "db.serverStatus().globalLock.currentQueue.readers"|mongo |sed -n 3p
    UserParameter=mongo.backgroundFlush,echo "db.serverStatus().backgroundFlushing.last_ms" |mongo |sed -n 3p
    UserParameter=mongo.curosor_Totalopen,echo "db.serverStatus().cursors.totalOpen" |mongo |sed -n 3p
    UserParameter=mongo.curospr_timedOu,echo "db.serverStatus().cursors.timedOut" |mongo |sed -n 3p
    UserParameter=mongo.pagefaults,echo "db.serverStatus().extra_info.page_faults" |mongo|sed -n 3p
    UserParameter=mongo.oplog_storetime,echo "db.printReplicationInfo()"|mongo|sed -n 4p|cut -d "(" -f 2|cut -d "h" -f 1
    //根据xml文件直接导入模板++下载模板
    http://pan.baidu.com/s/1hsMkxiW

    +++++++++++++++++++++++++监控redis+++++++++++
    //配置文件
    cat userparameter_redis.conf
    # Redis
    # This content is licensed GNU GPL v2
    # Author: Alexey Dubkov
    # Discovery
    UserParameter=redis.discovery,/etc/zabbix/script/redis/zbx_redis_stats.py -p 6379 -a Cloudcc@2017 192.168.5.205 list_key_space_db
    # Return Redis statistics
    UserParameter=redis
  • ,/etc/zabbix/script/redis/zbx_redis_stats.py -p 6379 -a Cloudcc@2017 $1 $2 $3
    vim /etc/hosts
    //添加
    172.16.1.172    L-172.16.1.172
    //安装python依赖包
    yum -y install python-pip
    pip install argparse
    pip install redis
    mkdir -p /etc/zabbix/script/redis
    chmod +x /etc/zabbix/script/redis/zbx_redis_stats.py

    =================python程序============================
    cat /etc/zabbix/script/redis/zbx_redis_stats.py
    #!/usr/bin/python
    import sys, redis, json, re, struct, time, socket, argparse
    parser = argparse.ArgumentParser(description='Zabbix Redis status script')
    parser.add_argument('redis_hostname',nargs='?')
    parser.add_argument('metric',nargs='?')
    parser.add_argument('db',default='none',nargs='?')
    parser.add_argument('-p','--port',dest='redis_port',action='store',help='Redis server port',default=6379,type=int)
    parser.add_argument('-a','--auth',dest='redis_pass',action='store',help='Redis server pass',default=None)
    args = parser.parse_args()
    zabbix_host = '192.168.5.209'       # Zabbix Server IP
    zabbix_port = 10051             # Zabbix Server Port
    # Name of monitored server like it shows in zabbix web ui display
    redis_hostname = args.redis_hostname if args.redis_hostname else socket.gethostname()
    class Metric(object):
        def __init__(self, host, key, value, clock=None):
            self.host = host
            self.key = key
            self.value = value
            self.clock = clock
        def __repr__(self):
            result = None
            if self.clock is None:
                result = 'Metric(%r, %r, %r)' % (self.host, self.key, self.value)
            else:
                result = 'Metric(%r, %r, %r, %r)' % (self.host, self.key, self.value, self.clock)
            return result
    def send_to_zabbix(metrics, zabbix_host='127.0.0.1', zabbix_port=10051):
        result = None
        j = json.dumps
        metrics_data = []
        for m in metrics:
            clock = m.clock or ('%d' % time.time())
            metrics_data.append(('{"host":%s,"key":%s,"value":%s,"clock":%s}') % (j(m.host), j(m.key), j(m.value), j(clock)))
        json_data = ('{"request":"sender data","data":[%s]}') % (','.join(metrics_data))
        data_len = struct.pack('

  • 运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
    2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
    3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
    4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
    5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
    6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
    7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
    8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

    所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-667050-1-1.html 上篇帖子: Zabbix 自定义Item经常Not Supported解决 下篇帖子: CentOS 7.2安装Zabbix 3.2全攻略
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    扫码加入运维网微信交流群X

    扫码加入运维网微信交流群

    扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

    扫描微信二维码查看详情

    客服E-mail:kefu@iyunv.com 客服QQ:1061981298


    QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


    提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


    本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



    合作伙伴: 青云cloud

    快速回复 返回顶部 返回列表