cacti memcache监控自己改造基于php的api数据收集

最近 memcache老是出问题,所以想着把memcache的运行状态监控起来,所以就想着挂到cacti上面.
在网上找了找好多都是基于python的api去获取mc状态的,由于是现成的php环境不想再去搭建python的监控.
所以想着把他memcache.py 改造一下.直接用现在有php去获取数据.

原文教程是http://dealnews.com/developers/cacti/memcached.html
在这里下载的包里面有 cacti_memcached_host_template.xml,
还是需要安装python的类库,用于读取mc状态.
下面是安装完的python获取数据的结果
cacti memcahce
我改造了一个简单的php版本

<?php
error_reporting(0);
try{
        $dataHash = array('total_items','bytes_written','uptime','bytes','cmd_get','curr_items','curr_connections','connection_structures',
         'limit_maxbytes','rusage_user','total_connections','cmd_set','time','get_misses','bytes_read','rusage_system', 'get_hits');
        $memcache_obj = new memcache();
        $memcache_obj->addServer('192.168.0.176', 11211);
        $stats = reset($memcache_obj->getExtendedStats());

        foreach ($dataHash as $item) {
                echo $item,':',$stats[$item],' ';
        }

}catch (Exception $e) {
        die('error');
}

去掉了hostname的传参,返回值和python保持一致,测试成功.
我就把外国朋友的xml改了下,数据源改成这个php的
下面是改造的php和xml,分享给需要的人~
cacti_memcache_template

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Captcha Code