千家信息网

使用zabbix_sender

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,1、zabbix_sender是用来给zabbix_server端发送数据的命令。zabbix_server的捕获信息工具会根据捕获的信息创建对应项目,传入的数据仅仅会被指定主机item使用。当你需要
千家信息网最后更新 2026年11月01日使用zabbix_sender

1、zabbix_sender是用来给zabbix_server端发送数据的命令。zabbix_server的捕获信息工具会根据捕获的信息创建对应项目,传入的数据仅仅会被指定主机item使用。

当你需要运行一些统计脚本或者在另一台机器获取数据,却想把监控统一做到一台机器,就要用到zabbix_sender。

2、用法:

[root@salt-master ~]# /usr/local/zabbix/bin/zabbix_sender -husage:  zabbix_sender [-v] -z server [-p port] [-I IP-address] -s host -k key                -o value  zabbix_sender [-v] -z server [-p port] [-I IP-address] [-s host] [-T] [-r]                -i input-file  zabbix_sender [-v] -c config-file [-z server] [-p port] [-I IP-address]                [-s host] -k key -o value  zabbix_sender [-v] -c config-file [-z server] [-p port] [-I IP-address]                [-s host] [-T] [-r] -i input-file

-c --config 指定配置文件

-z --zabbix_server zabbix_server的主机名或ip地址

-p --port 指定zabbix_server的trapper的端口,默认为10051

-s --host 指定主机名,zabbix_agent配置文件中定义的hostname

-I --source-address 指定源地址

-k --key 指定item key

-o --value item key的值,可以是具体的值,也可以是执行脚本的结果

-i --input-file 从指定的文件加载value。按行获取标准的输入,空格是分隔符

格式:

-T --with-timestamps 如果想在文件中指定key的时间,可以使用这个选项,这里的时间是unix的 时间戳。格式:

-r --real-time 发送的key以真实时间为标准,不用指定值


3、一个例子

根据需求,需要每天统计一次某项目的"总人数","每天活跃用户","最大同时在线人数","新增玩家数"。

(1) 通过脚本获取值,是通过查询数据库获取数据的,可能不太合理,仅仅是个例子:

[root@salt-master ~]# cat /etc/zabbix/scripts/test_count.sh#!/bin/bash# Shell EnvUSER="test"PASSWD="test"HOST="localhost"DAY=$(date -d"yesterday" +"%F")# Shell Usageshell_usage(){    echo "Usage $0: [ total_players | daily_active | new_player | max_online ]"}Total_players(){    mysql -u $USER -h $HOST -p$PASSWD -e "select count(*) from test.player" | grep [0-9]}Daily_active_players(){    mysql -u $USER -h $HOST -p$PASSWD -e "select count(*) from test.player where LastLoginTime >= unix_timestamp('$DAY 00:00:00') and LastLoginTime <= unix_timestamp('$DAY 23:59:59')" | grep [0-9]}Newly_added_player(){    mysql -u $USER -h $HOST -p$PASSWD -e "select count(*) from test.Player where RegisterTime >= unix_timestamp('$DAY 00:00:00') and RegisterTime <= unix_timestamp('$DAY 23:59:59')" | grep [0-9]}Max_online_number(){    mysql -u $USER -h $HOST -p$PASSWD -e "select onlinecount from test.onlinelog where datetime >= unix_timestamp('$DAY 00:00:00') and datetime <= unix_timestamp('$DAY 23:59:59') order by onlinecount desc limit 1" | grep [0-9]}main(){    case $1 in        total_players)            Total_players;        ;;        daily_active)            Daily_active_players;        ;;        new_player)            Newly_added_player;        ;;        max_online)            Max_online_number;        ;;                        *)            shell_usage;    esac}main $1

尝试运行一次脚本:

[root@salt-master ~]# /etc/zabbix/scripts/test_count.sh Usage /etc/zabbix/scripts/test_count.sh: [ total_players | daily_active | new_player | max_online ][root@salt-master ~]# /etc/zabbix/scripts/test_count.sh total_players296

(2) 在使用zabbix_sender向server端发送数据之前,需要在zabbix页面创建对应的items,否则会发送失败。

Name: 指定item的名字

Type:需要选择"zabbix_trapper"

Key:

Applications:将统计数据统一放到一个"applications"中


(3) 计划在每天的凌晨2时,统计一次数据。将多条zabbix_sender放在一个脚本,在凌晨2时执行,这样只需要在crontab中写一条计划就可以了:

[root@salt-master ~]# cat /etc/zabbix/test_cron.sh #!/bin/bashfor key in total_players daily_active new_player max_online    do        /usr/local/zabbix/bin/zabbix_sender -s salt-master -z 1.1.1.1 -k "test_count[$key]" -o `/etc/zabbix/scripts/pdk_count.sh $key`    done

尝试运行一次test_cron.sh脚本:

[root@salt-master ]# sh /etc/zabbix/scripts/test_count.sh info from server: "processed: 1; failed: 0; total: 1; seconds spent: 0.000035"sent: 1; skipped: 0; total: 1info from server: "processed: 1; failed: 0; total: 1; seconds spent: 0.000053"sent: 1; skipped: 0; total: 1info from server: "processed: 1; failed: 0; total: 1; seconds spent: 0.000037"sent: 1; skipped: 0; total: 1info from server: "processed: 1; failed: 0; total: 1; seconds spent: 0.000027"


添加计划任务:

[root@salt-master ~]# crontab -l0 2 * * * sh /etc/zabbix/test_cron.sh





数据 脚本 文件 时间 统计 主机 运行 人数 例子 信息 地址 机器 标准 格式 项目 尝试 统一 配置 最大 不用 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 中关村互联网科技集团 广州百单互联网科技有限公司 中国互联网科技工作委员会毛军 金融科技 互联网金融 深圳互联网络科技有限公司 互联网科技公司电话 浩特互联网科技 银优互联网科技有限公司 腾讯科技 互联网女皇 广州凡科互联网科技 友谊互联网络科技 深圳天众互联网科技公司 深圳卡尔迅互联网科技有限公司怎么样 乌苏新华互联网科技做什么的 浙南科技城互联网大厦建设工程 烟台灵鸽互联网科技有限公司 北京市互联网新科技 云鲸互联网络科技有限公司 青岛互联网科技园 山东亿川互联网科技有限责任公司 广州互联网科技公司 互联网金融与金融科技 互联网科技的未来发展 大白互联网科技 重庆互联网医院沙龙医盟信息科技 速维有品互联网信息科技(苏州)有限公司 广西互联网科技孵化中心 佛山市拉法互联网科技有限公司 南博望互联网科技有限公司 利用互联网等科技手段
0