C

collectd-plugin

ad8375d8 fix · by BuddyJack

1. 基础软件包安装
yum -y install libcurl libcurl-devel rrdtool rrdtool-devel perl-rrdtool rrdtool-prel libgcrypt-devel gcc make gcc-c++ liboping liboping-devel perl-CPAN net-snmp net-snmp-devel python-devel

yum install python-pip 
(若安装不成功,首先安装epel扩展源:

sudo yum -y install epel-release

然后再安装pip)

#安装java 1.8

#for mysql
yum install mysql-devel.x86_64
pip install MySQL-python
pip install DBUtils


#for redis
pip install redis

#for memcache
pip install python-memcached

#for rabbit
pip install pika
pip install requests




2.collectd 安装
./configure --with-data-max-name-len=512 --enable-debug
make; make install


3.自定义python插件安装
将python脚本与jar包 放到指定目录
python: /opt/collectd/include/python
jar: /opt/collectd/share/collectd/java/jmx-monitor.jar

4.配置自定义插件
LoadPlugin python (启用python插件模块)

<Plugin python>
	ModulePath "/opt/collectd/include/python"
	# cpu、io等基础指标采集
	Import 'PyBase' 
        <Module PyBase>
                host '192.168.102.45'
                interval 10
                ports '11211,2181,6379'
        </Module>

    #redis 指标采集
    Import 'PyRedis'
        <Module PyRedis>
                host '192.168.102.45'
                ports '6379'
                interval 10
                tags 'redis'
        </Module>
     #redis 自检
    Import 'PyRedisCheck'
        <Module PyRedisCheck>
                master_host '192.168.102.45'
                master_port 6379
                slave_host '192.168.102.76'
                slave_port 16379
                interval 10       
        </Module>
     #rabbit 自检
    Import 'PyRabbitCheck'
        <Module PyRabbitCheck>
                 host '192.168.102.45'
                 port 5672
                 user 'guest'
                 passwd 'guest'
                 interval 10
        </Module>
     #rabbit采集
    Import 'PyRabbit'
         <Module PyRabbit>
                 host '192.168.102.45'
                 port 15672
                 user 'guest'
                 passwd 'guest'
                 interval 10
        </Module>

      #cobar采集
     Import 'PyCobar'
         <Module PyCobar>
                 host '192.168.102.45'
                 port 9066
                 user 'yh_test'
                 pwd 'yh_test'
                 interval 10
         </Module>
       #mysql采集
     Import 'PyMysql'
         <Module PyMysql>
                 host '192.168.102.76'
                 port 3306
                 user 'root'
                 pwd '123456'
         </Module>

         #zookeeper采集
      Import 'PyZK'
        <Module PyZK>
               hosts '192.168.102.76,192.168.102.45'
               port 2181
        </Module>

        	# memcached采集
        Import 'PyMemcached'
        <Module PyMemcached>
               host '192.168.102.45'
               port 11211
               interval 10
        </Module>

        	#nginx 日志采集
        Import 'PyTailNginx'
         <Module PyTailNginx>
                 filepath  "/Data/logs/nginx/api.yoho.cn_access.log" "/Data/logs/nginx/service.yoho.cn_access.log" "/Data/logs/nginx/api.yoho.cn_error.log" "/Data/logs/nginx/service.yoho.cn_error.log"
                 interval  2
                 host '192.168.102.45'
         </Module>

         	#udp——write 配置
         Import "write_json"
         <Module write_json>
                 TypesDB "/opt/collectd/share/collectd/types.db"
                 #UDP "192.168.103.34" "7777"
      		 UDP "172.16.6.61" "7777"
        </Module>
</Plugin>

#jmx 配置
<Plugin java>
       JVMArg "-Djava.class.path=/opt/collectd/share/collectd/java/collectd-api.jar:/opt/collectd/share/collectd/java/jmx-monitor.jar"
       LoadPlugin "com.yoho.ops.JMXMonitor"
       <Plugin "com.yoho.ops.JMXMonitor">
              <Connection '192.168.102.76'>
      			ServiceURL "service:jmx:rmi:///jndi/rmi://192.168.102.76:9602/jmxrmi"
                        tag "tomcat"
    	      </Connection>
       </Plugin>
</Plugin>


4.配置type_DB
增加4种类型
fvalue              value:GAUGE:0:9223372036854775807.0
f2value              value:GAUGE:0:9223372036854775807.0 value:GAUGE:0:9223372036854775807.0
f3value             value:GAUGE:0:9223372036854775807.0 value:GAUGE:0:9223372036854775807.0 value:GAUGE:0:9223372036854775807.0
f4value             value:GAUGE:0:9223372036854775807.0 value:GAUGE:0:9223372036854775807.0 value:GAUGE:0:9223372036854775807.0 value:GAUGE:0:9223372036854775807.0