zabbix管理页面添加item项

voip_calls[auto_ssh_audiocode_102_49.sh]

vi /etc/zabbix/zabbix_agent.conf 添加自定义脚本

UserParameter=voip_calls[*],/usr/lib/zabbix/externalscripts/audiocode_calls_status $1

vi  auto_ssh_audiocode_102_49.sh

#!/usr/bin/expect -fset port 22
set user xxxxx
set password xxxxx
set host 172.24.102.49
set timeout 30#spawn ssh -D $port $user@$host
#spawn ssh $user@$host date
#spawn ssh $user@$host b failover show \; ip ad | grep 'inet 114.66.80.14'
##spawn ssh $user@$host show sessions
#spawn ssh $user@$host
spawn ssh -p $port $user@$hostexpect "Admin@172.23.102.49's password:"
send "$password\r"#expect "*assword:*" { send "$password\r" }
#expect "*assword:*"
#send "$password\r"#expect '*>*' { send "show sessions\r" }
##expect '*Mediant*>'#send "\r"
#expect '*1000>'
#send "show voip calls list\r"
#send "show voip calls active\r"expect "Mediant 1000>"
send "show voip calls statistics gw\r"expect "Mediant 1000>"
send "quit\r"expect eof

vi audiocode_calls_status.c

#include <stdio.h>
#include <stdlib.h>
#include <string.h>#define OK       0
#define WARNING  1
#define CRITICAL 2
#define UNKNOWN  3#define LEN 100//#define TCL_CMD "/home/weihu/tcl/"
//#define TCL_CMD "/usr/local/nagios/libexec/"
#define TCL_CMD "/usr/lib/zabbix/externalscripts/"int exitstatus=OK;
char *exit_status[4]={"OK","WARNING","CRITICAL","UNKNOWN"};char status_information[LEN];
char performance_data[LEN];//int parse_status(char *sh_cmd,char *active_count,char *high_count,char *total_count) {
int parse_status(char *sh_cmd,char *active_count) {int ret;FILE *fp;char readbuf[LEN];char *p,*str;int i=0;int line=0;int mark=0;int mark1=0;int mark2=0;//      fp=popen("/home/neo/check_log/tcl/auto_ssh.sh","r");fp=popen(sh_cmd,"r");if(fp==NULL) {fprintf(stderr,"popen() error. ");exitstatus=CRITICAL;printf("%s: - %s | %s\n",exit_status[exitstatus],status_information,performance_data);exit(exitstatus);}while(fgets(readbuf,LEN,fp)!=NULL) {//      printf("%s",readbuf);//      line++;if(strstr(readbuf,"No Active") || strstr(readbuf,"show voip calls")) {if(strstr(readbuf,"No Active")) {//      printf("111111111111111111\n");strcpy(active_count,"0");mark=1;}else if(strstr(readbuf,"Total Active Calls")) {else if(strstr(readbuf,"Active TDM channels")) {//      printf("22222222222222222\n");sscanf(readbuf,"Total Active Calls: %s",active_count);sscanf(readbuf,"Active TDM channels: %s",active_count);mark=1;}if(mark==1) {break;}}
//      printf("active_count=%s\n",active_count);ret=fclose(fp);if(fp==NULL) {fprintf(stderr,"popen() error.\n");return -1;}return 0;
}int main(int argc, char *argv[]) {int ret;char sh_cmd[LEN];char active_count[LEN];char high_count[LEN];char total_count[LEN];char active_ip_addr[LEN];if(argc<=1) {//      printf("%s %s\n",argv[0],"auto_ssh_audiocode_212_32.sh | auto_ssh_audiocode_212_32.sh");printf("example: %s %s\n",argv[0],"auto_ssh_audiocode_212_32.sh");exit(-1);}sprintf(sh_cmd,"%s%s",TCL_CMD,argv[1]);
//      printf("sh_cmd=%s\n",sh_cmd);memset(active_count,0,LEN);strcpy(active_count,"0");//      ret=parse_status(sh_cmd,active_count,high_count,total_count);ret=parse_status(sh_cmd,active_count);if(ret!=0) {fprintf(stderr,"parse_status() error.\n");exit(-1);}/*printf("active_count=%s\n",active_count);printf("high_count=%s\n",high_count);printf("total_count=%s\n",total_count);
*/exitstatus=OK;
//      sprintf(status_information,"active_count=%s, high_count=%s, total_count=%s",active_count,high_count,total_count);sprintf(status_information,"active_count=%s",active_count);
//      sprintf(performance_data,"active_count=%s;;;; high_count=%s;;;; total_count=%s;;;;",active_count,high_count,total_count); sprintf(performance_data,"active_count=%s;;;;",active_count); //      printf("%s: %s | %s\n",exit_status[exitstatus],status_information,performance_data);printf("%s\n",active_count);return exitstatus;
}

zabbix监控之奥科语音网关M10K电话并发数相关推荐

  1. 使用zabbix监控数据并实现邮件、电话、微信报警

    前言 zabbix 作为一款优秀的企业级开源监控系统,它可以采集和处理所有类型的监控数据,具有灵活的报警机制.与cacti 与 nagios相比,cacti画图比nagios漂亮,但是报警相对较弱,而 ...

  2. zabbix监控系统进阶专题篇(企业微信报警,邮箱报警,电话报警,监控数据库,监控磁盘性能)

    一:zabbix配置文件详解 1. zabbix-server配置文件 Zabbix 日志 默认用文件记录,也可以发送给我们的 rsyslog 日志记录系统,如果我们 选择默认,则日志存放在LogFi ...

  3. zabbix 监控 db2_zabbix实战 - abm

    参考: https://www.cnblogs.com/clsn/p/7885990.html#auto_id_15 https://my.oschina.net/logmm/blog/1844724 ...

  4. Zabbix监控笔记

    主流的开源监控平台介绍有: mrtg (Multi Router Traffic Grapher)通过snmp协议得到设备的流量信息,并以包含PNG格式的图形的HTML文档方式显示给用户. cacti ...

  5. 一篇文章带你入门zabbix监控系统

    目录 一.监控介绍 二.监控软件区别 三.zabbix监控架构 四.zabbix监控介绍 1.zabbix优点 2.zabbix缺点 3.zabbix监控系统监控对象 4.zabbix监控方式 五.z ...

  6. 【Zabbix监控一】zabbix的原理与安装

    目录 一.监控介绍 1.监控目的 2.监控方法 3.监控核心 二.zabbix概述 1.zabbix的主要特点 2.Zabbix是什么 3.zabbix监控对象 4.Zabbix架构 4.1 serv ...

  7. 【Zabbix监控原理】

    一.监控介绍 1.监控目的 监控是需要站在公司的业务角度去考虑,而不是针对某个监控技术的使用. 对系统不间断实时监控 实际上是对系统不间断的实时监控 实时反馈系统当前状态 监控某个硬件.或者系统,都是 ...

  8. 再有谁说不熟悉 Zabbix 监控系统,就把这个给他扔过去!

    关注公众号,回复"1024"获取2TB学习资源! 监控概述 为什么要监控 在需要的时刻,提前提醒我们服务器出问题了 当出问题之后,可以找到问题的根源 网站/服务器 的可用性 参考: ...

  9. 手把手教你使用zabbix监控nginx

    zabbix监控nginx,多亏了容哥(杨容)的帮忙,为了感谢容哥的帮助,写了这篇文章. 环境介绍: 服务器系统版本:CentOSrelease 6.6 (Final) 内核版本:Linux hk_n ...

最新文章

  1. 【转】gcc 编译使用动态链接库和静态链接库
  2. 【机器学习入门笔记2:OpenCV图片读取和展示】20190203
  3. ssh scp文件同步(先不搞了)
  4. matlab的guide怎么添加函数,整理:matlab如何添加m_map工具箱
  5. Vue——基础(对象、属性样式操作、条件、循环、事件、绑定)
  6. Spring Boot开发基础
  7. Shadow Map阴影贴图技术之探 【转】
  8. 电脑没有音频设备怎么办
  9. linux yml文件格式,YML 文件扩展名: 它是什么以及如何打开它?
  10. CentOS 7 校对时间 修改时区
  11. 一个关于意念(脑电波)的想法
  12. 小程序、APP、企业网站开发工具有哪些?如何使用软件开发工具?
  13. 在软件测试面试中,碰到这些「送命题」,大牛教你一招应对
  14. pgpool 主从流复制模式下的安装使用
  15. 华为机试2021答案
  16. android 球面 旋转 坐标系,天球坐标系和地球坐标系-GPS定位原理及应用-电子发烧友网站...
  17. 小学生图解排序算法:③直接插入排序
  18. 系统容错和容灾简要说明
  19. 8843 留学生form_报税季又来啦~2019留学生最新最详细的报税指南看过来!
  20. Ubuntu安装mwget

热门文章

  1. 计算线性SVM分类器的分类面方程
  2. 目标检测标签文件txt转成xml
  3. 因为一个Bug,差点损失了100w
  4. [BZOJ 1412] 狼与羊的故事
  5. 思科模拟器-交换机(switch)的命令行基本操作
  6. Switch Transformer
  7. 星河案例ㅣ中国电信 X 冲量在线:基于智算中心的隐私计算应用实践
  8. 小扎遭 Meta 员工炮轰:元宇宙将“杀死”公司
  9. 看看你是SAP几级?(转贴)
  10. Bayesian statistics