zabbix_sender是什么?有什么作用

zabbix获取key值有超时时间,如果自定义的key脚本一般需要执行很长时间,这根本没法去做监控,那怎么办呢?使用zabbix监控类型zabbix trapper,需要配合zabbix_sender给它传递数据

关于trapper的用法,我们来弄个实例。

执行超长时间脚本,如:脚本去几十台服务器拉去数据,每个日志都上G,然后日志整合在一起,统计出返回值。这种脚本比如超时,所以我们必须改成让客户端提交数据的方式。

zabbix_sender命令详解

语法

 
1
usage: zabbix_sender [-Vhv] {[-zpsI] -ko | [-zpI] -T -i <file> -r} [-c <file>]

使用参数

 
1
2
3
4
5
6
7
8
9
10
11
  -c --config <file>                   配置文件绝对路径
  -z --zabbix-server <server>            zabbix server的IP地址
  -p --port <server port>                   zabbix server端口.默认10051
  -s --host <hostname>                    主机名,zabbix配置文件中配置的主机名(不是服务器的hostname),不能使用ip地址
  -I --source-address <IP address>    源IP
  -k --key <key>                              监控项的key, 自定义
  -o --value <key value>                   key值
  -i --input-file <input file>                从文件里面读取hostname(-s)、key(-k)、value(-o) 一行为一条数据,使用空格作为分隔符,如果主机名带空格,那么请使用双引号包起来
  -T --with-timestamps                      一行一条数据,空格作为分隔符: <hostname> <key> <timestamp> <value>,配合 --input-file option,timestamp为unix时间戳
  -r --real-time                                 将数据实时提交给服务器
  -v --verbose                                  详细模式, -vv 更详细

zabbix_sender使用实例

 
1
2
3
# ./zabbix_sender -s 127.0.0.1 -z 127.0.0.1 -k "ttlsa.trapper" -o 1
info from server: "processed: 0; failed: 1; total: 1; seconds spent: 0.000024"
sent: 1; skipped: 0; total: 1

ttlsa.trapper:是我们定义好的key

-0 1:1是key值

failed:错误数,说了-s不能用ip地址,那么我们改成配置文件中得主机名吧

 
1
2
3
# ./zabbix_sender -s "Zabbix server" -z 127.0.0.1 -k "ttlsa.trapper" -o 1
info from server: "processed: 1; failed: 0; total: 1; seconds spent: 0.000035"
sent: 1; skipped: 0; total: 1

zabbix_sender批量传递key值

 
1
2
3
4
5
6
7
8
9
#cat f.txt
"Zabbix server" ttlsa.trapper 10
"Zabbix server" ttlsa.trapper 20
"Zabbix server" ttlsa.trapper 30
"Zabbix server" ttlsa.trapper 40
"Zabbix server" ttlsa.trapper 1
# ./zabbix_sender -z 127.0.0.1 -i f.txt
info from server: "processed: 5; failed: 0; total: 5; seconds spent: 0.000085"
sent: 5; skipped: 0; total: 5

每行对应一个key值,一般是不同的主机名、不同的key、不同的key值。这边方便测试,所以都用了同一个key

官方示例:

Example(s):
zabbix_sender -z 127.0.0.1 -s "Linux DB3" -k db.connections -o 43

zabbix_sender -z 127.0.0.1 -s "Linux DB3" -k db.connections -o 43 \
  --tls-connect cert --tls-ca-file /home/zabbix/zabbix_ca_file \
  --tls-server-cert-issuer \
    "CN=Signing CA,OU=IT operations,O=Example Corp,DC=example,DC=com" \
  --tls-server-cert-subject \
    "CN=Zabbix proxy,OU=IT operations,O=Example Corp,DC=example,DC=com" \
  --tls-cert-file /home/zabbix/zabbix_agentd.crt \
  --tls-key-file /home/zabbix/zabbix_agentd.key

zabbix_sender -z 127.0.0.1 -s "Linux DB3" -k db.connections -o 43 \
  --tls-connect psk --tls-psk-identity "PSK ID Zabbix agentd" \
  --tls-psk-file /home/zabbix/zabbix_agentd.psk

(52)zabbix_sender提交item数据的更多相关文章

  1. Jquery-ajax()方法提交json数据

    1.ajax()提交json数据代码 var strJson = getStrPayJson(); $.ajax({ type: "POST", url: "/userc ...

  2. servlet对form提交的数据进行XML转换后发送

    今天遇到一个项目,要求对form表单提交的数据进行以xml格式发送出去: 直接写XMLUtil工具类如下: package com.yfit.controller; import javax.serv ...

  3. Yii 开发微信 '您提交的数据无法被验证'

    使用Yii开发微信时,出现 [error][yii\web\HttpException:] exception 'yii\web\BadRequestHttpException' with messa ...

  4. 模拟提交API数据Pyqt版

    其实这个模拟提交数据之前已经写过篇: Python requests模拟登录 因为现在在做的项目中需要一个debug请求调试API,用PHP的CURL写了一个,又因Pyqt更能直观灵活的显示请求的参数 ...

  5. 解决Yii2 启用_csrf验证后POST数据仍提示“您提交的数据无法验证”

    一 CSRF 概念 CSRF(Cross-site request forgery跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XS ...

  6. asp.net 一次性提交大量数据,服务器会报错,要在 web.config 中设置一下

    web.config <?xml version="1.0" encoding="utf-8"?> <!-- 有关如何配置 ASP.NET 应 ...

  7. ngResource提交json数据如何带参数

    ngResource提交json数据如何带参数 直接使用ngResource和REST服务接口交互可以让程序显得简洁,前提是配置好跨域和OPTIONS请求的支持,与此同时,如果需要带些额外的参数,有两 ...

  8. [Android]使用AdapterTypeRender对不同类型的item数据到UI的渲染

    以下内容为原创,转载请注明: 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/3992843.html 本文讲的工具均放在AndroidBucket开源 ...

  9. HttpWebRequest提交(Post)数据

    protected void Page_Load(object sender, EventArgs e) { string sql = "select top 1 * from [user] ...

随机推荐

  1. Linux之expect非交互式功能

    我在上一篇博文linux之SSH密钥认证 提过ssh之间的相互认证,但是每次使用ssh登录到其它服务器还是要输入密码的. expect是用于提供自动交互的工具,自动连接被管理的服务器,不需要手动输入密 ...

  2. Cordova 系列之创建一个iOS项目

    1.打开终端 2.输入命令 $ cd Desktop (PS:Desktop表示放在桌面,你可以选择放任意位置) 3.$  cordova create HelloWorld com.example. ...

  3. python操作rabbitmq实现消息过滤接收

    目标: 代码实现(direct_product.py) # __author__ = 'STEVEN' import pika,sys #开启socket connection = pika.Bloc ...

  4. [CF1111D] Destory the Colony

    Portal 大致题意: 给定一个偶数长度(\(n \leq 10 ^ 5\))的字符串, 只包含大小写字母. 有q(\(q \leq 10 ^ 5\))次询问, 每次指定两个位置, 要求通过交换字符 ...

  5. 转 SecureCRT 使用X11 转发功能打开图形化窗口

    https://yq.aliyun.com/articles/53308 摘要: 有些时候,有些程序可能需要依赖图形界面才能启动,例如安装Oracle时(其实oracle支持命令行安装),例如需要启动 ...

  6. String的内存和intern()方法

    一.关于常量池 字符串在Java中用的非常得多,Jvm为了减少内存开销和提高性能,使用字符串常量池来进行优化. 在jdk1.7之前(不包括1.7),Java的常量池是在方法区的地方,方法区是一个运行时 ...

  7. go语言的特点

    Go语言保证了既能到达静态编译语言的安全和性能,又达到了动态语言开发维护的高效率 ,使用一个表达式来形容Go语言:Go = C + Python , 说明Go语言既有C静态语言程 序的运行速度,又能达 ...

  8. python_17(sql)

    第1章 MySQL安装 1.1 windows版下载地址 1.2 添加环境变量 1.3 初始化 1.4 启动mysql服务 1.5 链接mysql 1.6 制作mysql的windows服务 1.7 ...

  9. Storm编程入门API系列之Storm的Topology多个Executors数目控制实现

    前期博客 Storm编程入门API系列之Storm的Topology默认Workers.默认executors和默认tasks数目 Storm编程入门API系列之Storm的Topology多个Wor ...

  10. puppeteer 中国区的使用

    puppeteer 中国区的使用 [issues]https://github.com/GoogleChrome/puppeteer/issues/1426 两种方案 使用 cnpm .npmrc 中 ...