Zabbix6.0监控Freeswitch状态

news2024/11/13 15:54:02

一、前提环境说明

1、最终实现Freeswitch监控指标信息:

在这里插入图片描述

2、环境需求:

  • (1)需要使用Zabbix6.0及以上

  • (2)需要使用zabbix_agent2

二、实现步骤

1、zabbix_agent2添加监控键值

cat /etc/zabbix/conf.d/freeswitch.conf
UserParameter=fs.version,/etc/zabbix/shell/freeswitch.sh version
UserParameter=fs.calls,/etc/zabbix/shell/freeswitch.sh calls 
UserParameter=fs.regs,/etc/zabbix/shell/freeswitch.sh regs
UserParameter=fs.thread,/etc/zabbix/shell/freeswitch.sh thread
UserParameter=fs.cpu.usage,/etc/zabbix/shell/freeswitch.sh cpu
UserParameter=fs.memory.usage,/etc/zabbix/shell/freeswitch.sh memory
UserParameter=fs.uptime,/etc/zabbix/shell/freeswitch.sh uptime

2、添加脚本(键值都是通过脚本获取到的值)

cat /etc/zabbix/shell/freeswitch.sh
#!/bin/bash
fsPath="/usr/local/freeswitch/bin/fs_cli -x"
fsPid=$(ps -ef |grep -w ./freeswitch |grep -v grep|awk NR==1|awk '{print $2}')

# 当前注册分级数量
RegistrationNum(){
${fsPath} "sofia status profile internal reg"|grep -w "Total items returned:"|awk '{print $NF}'
}

# 当前通话数量
CallsNum(){
${fsPath} "show calls"|grep -w total.|awk '{print $1}' 
}

# FreeSwitch版本
FreeSwitchVersion(){
${fsPath} "version"|awk NR==1
}

# 线程数量
ThreadNum(){
ps -T -p ${fsPid}|wc -l
}

# FS进程内存使用率
MemoryUsage(){
ps -aux |grep -w ${fsPid}|grep -v grep|awk '{print $4}'
}

# FS进程CPU使用率
CpuUsage(){
ps -aux |grep -w ${fsPid}|grep -v grep|awk '{print $3}'
}

# FS运行时间
UpTime(){
ps -eo pid,comm,etime | grep -w ${fsPid}|awk '{print $NF}'
}

case $1 in 
        "uptime")
        UpTime
        ;;
        "regs")
        RegistrationNum
        ;;
        "calls")
        CallsNum
        ;;
        "version")
        FreeSwitchVersion
        ;;
        "thread")
        ThreadNum
        ;;
        "cpu")
        CpuUsage
        ;;
        "memory")
        MemoryUsage
        ;;
esac

3、重启zabbix_agent2

systemctl restart zabbix-agent2

4、导入模板,把模板内容保存到一个yaml结尾文件中,然后在zabbix导入中选择此文件

模板内容如下:

zabbix_export:
  version: '6.0'
  date: '2024-07-14T13:01:51Z'
  groups:
    - uuid: dc579cd7a1a34222933f24f52a68bcd8
      name: 'Linux servers'
  templates:
    - uuid: a16626cf7ef045c3a81271a0851e5eb8
      template: CCP
      name: CCP
      groups:
        - name: 'Linux servers'
      items:
        - uuid: f330cd7c74824042b817daccfdd4bd49
          name: FS_当前通话数量
          key: fs.calls
          delay: 5s
          triggers:
            - uuid: d4e3c70610ad4bd18b698a380ffce20b
              expression: last(/CCP/fs.calls)>20
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: last(/CCP/fs.calls)<20
              name: 'FS通话数量 > 20'
              priority: WARNING
              manual_close: 'YES'
        - uuid: 6ae520e19b51454c80d58506fc1ccdf6
          name: FS_CPU使用率
          key: fs.cpu.usage
          delay: 30s
          value_type: FLOAT
        - uuid: 6e09770ffc13411dad9b4fee482a6201
          name: FS_内存使用率
          key: fs.memory.usage
          delay: 30s
          value_type: FLOAT
        - uuid: c51803aaf6b94ea797ccf24508f3914b
          name: FS_分级注册数量
          key: fs.regs
          delay: 5s
          triggers:
            - uuid: 6cd4b619f9c14b999863ae1ded3e984a
              expression: last(/CCP/fs.regs)>20
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: last(/CCP/fs.regs)<20
              name: 'FS分级注册数量 > 20'
              priority: WARNING
              manual_close: 'YES'
        - uuid: fc755a6d0ec144fa8af674c1c8009c40
          name: FS_线程数
          key: fs.thread
          delay: 30s
          triggers:
            - uuid: aecd450798304e80a25689a055449471
              expression: last(/CCP/fs.thread)>500
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: last(/CCP/fs.thread)<500
              name: FS线程数大于500
              priority: WARNING
              manual_close: 'YES'
        - uuid: 78aff8d733bd4eb6b35d7af905d0c7ee
          name: FS_运行时间
          key: fs.uptime
          delay: 30s
          trends: '0'
          value_type: TEXT
        - uuid: 0d0c61ce5f194f569eafc6a2ca64670e
          name: FS_版本
          key: fs.version
          trends: '0'
          value_type: TEXT
        - uuid: ebb21ecc1a0846dc804533e09799e70f
          name: FS_38890端口
          key: 'net.udp.listen[38890]'
          delay: 30s
          triggers:
            - uuid: dbdba4b9b4dd4b83a7efa4a9bccdaf06
              expression: 'last(/CCP/net.udp.listen[38890])=0'
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: 'last(/CCP/net.udp.listen[38890])=1'
              name: 'FS 38890端口无法建立连接'
              priority: HIGH
              manual_close: 'YES'
        - uuid: 5b6c01fb6ddc414dbb4cde2019f96378
          name: FS_38891端口
          key: 'net.udp.listen[38891]'
          delay: 30s
          triggers:
            - uuid: 34885f3725c94583bbb667730d61b552
              expression: 'last(/CCP/net.udp.listen[38891])=0'
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: 'last(/CCP/net.udp.listen[38891])=1'
              name: 'FS 38891端口无法建立连接'
              priority: HIGH
              manual_close: 'YES'
  graphs:
    - uuid: 83074d6630964d65a8810c326c973444
      name: FS分级注册数量
      graph_items:
        - color: 199C0D
          calc_fnc: ALL
          item:
            host: CCP
            key: fs.regs
    - uuid: d4bb3c3e9fa24d1e92d6fed17e471394
      name: FS整体信息
      graph_items:
        - color: 199C0D
          calc_fnc: ALL
          item:
            host: CCP
            key: fs.regs
        - sortorder: '1'
          color: F63100
          calc_fnc: ALL
          item:
            host: CCP
            key: fs.calls
    - uuid: 0dadf47386de4b08a8b97663ccba72d5
      name: FS通话数量
      graph_items:
        - color: 199C0D
          calc_fnc: ALL
          item:
            host: CCP
            key: fs.calls

WEB页面导入模板

在这里插入图片描述

模板内容如下:
在这里插入图片描述

导入模板后,就可以针对主机使用此模板了!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1926532.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Git代码管理工具 — 3 Git基本操作指令详解

目录 1 获取本地仓库 2 基础操作指令 2.1 基础操作指令框架 2.2 git status查看修改的状态 2.3 git add添加工作区到暂存区 2.4 提交暂存区到本地仓库 2.5 git log查看提交日志 2.6 git reflog查看已经删除的记录 2.7 git reset版本回退 2.8 添加文件至忽略列表 1 获…

2.有限状态机

1. 标准三段式写法&#xff1a; 1.一段代表当前状态赋值&#xff1b; 2.一段代表下一个状态如何跳变 3.一段代表输出控制 一定要带上复位 前两段模板集合一样&#xff0c;第三段取决于具体需求 parameter IDLE_ST 4b0000&#xff1b; parameter TEST_ST 4b0001; ... re…

C++中链表的底层迭代器实现

大家都知道在C的学习中迭代器是必不可少的&#xff0c;今天我们学习的是C中的链表的底层迭代器的实现&#xff0c;首先我们应该先知道链表的底层迭代器和顺序表的底层迭代器在实现上有什么区别&#xff0c;为什么顺序表的底层迭代器更加容易实现&#xff0c;而链表的底层迭代器…

Ubuntu20.04 编译安装FFmpeg,出错分析以及解决方案

最近工程上需要对FFmpeg底层源码进行修改&#xff0c;需要重新编译&#xff0c;遇见不少坑&#xff0c;出篇教程记录一下。 文章目录 1.FFmpeg源码下载地址2.编译环境配置3.编译FFmpeg4.配置FFmpeg运行环境 1.FFmpeg源码下载地址 官方下载地址:Index of /releases (ffmpeg.or…

使用MovaXterm连接VMware的centos

一、确认局域网ip 检查虚拟机分配的网段是否一致 二、确认centos的ip 输入 ip addr 获得设备ip为192.168.153.130 三、用MovaXterm建立ssh连接 有同行可能会问&#xff0c;直接使用VMware操作centos系统不行吗&#xff1f;为什么要再多一步。 理由&#xff1a;1、测试环境c…

Zabbix6.0使用自带模板(MySQL by Zabbix agent 2)监控MySQL数据库

注意&#xff1a;Zabbix6.0使用MySQL by Zabbix agent 2 模板可直接监控MySQL数据库&#xff0c;只需要创建监控用户&#xff0c;模板宏中填写数据库账号信息即可&#xff0c;只需要3步&#xff0c;特简单&#xff01; 1、MySQL创建用户&#xff0c;用于收集数据库信息 creat…

HarmonyOS 界面开发基础篇

一、布局思路 ArkUI(方舟开发框架)是一套 构建 鸿蒙应用 界面 的框架。 构建页面的最小单位就是“组件”。 组件分类 基础组件&#xff1a;界面呈现的基础元素。 如&#xff1a;文字、图片、按钮等。容器组件&#xff1a;控制布局排布。 如&#xff1a;Row行、Column列等。…

MySQL篇:日志

前言 MySQL中常见的日志&#xff1a; 重做日志&#xff08;Redo Log&#xff09;&#xff1a; 用途&#xff1a; 保证事务的持久性&#xff0c;记录事务对数据库所做的所有修改。 内容&#xff1a; 记录事务对数据页的物理修改&#xff0c;而不是逻辑修改。 配置&#xff1a; …

一款IM即时通讯聊天系统源码,包含app和后台源码

一款IM即时通讯聊天系统源码 聊天APP 附APP&#xff0c;后端是基于spring boot开发的。 这是一款独立服务器部署的即时通讯解决方案&#xff0c;可以帮助你快速拥有一套自己的移动社交、 企业办公、多功能业务产品。可以 独立部署&#xff01;加密通道&#xff01;牢牢掌握通…

《C专家编程》杂谈

库函数调用和系统调用的区别 系统调用比函数调用要慢很多&#xff0c;因为还要切换到内核模式。

防火墙综合实验之NAT和智能选路

目录 前言&#xff1a; 一、实验题目 二、实验操作 需求一 需求二 需求三 需求四、需求五 需求六 需求七 ​编辑 需求八 需求九 需求十 需求十一 三、需求测试 前言&#xff1a; 本篇文章是延续上一篇文章&#xff0c;简单来说就是防火墙实验的完善和延续&#…

【CUDA】CUDA中缓存机制对计时的影响

笔者在阅读知乎上一个关于CUDA编程的专栏时&#xff0c;发现作者写的很多文章中都会附带计时的模块用于评估程序的运行效率&#xff0c;然而笔者发现&#xff0c;在运行这篇文章中的代码时时&#xff0c;得到的结果和作者的结果有较大差异&#xff0c;主要体现在&#xff1a;使…

《战甲神兵》开发者报告:游戏崩溃问题80%发生在Intel可超频酷睿i9处理器上——酷睿i7 K系列CPU也表现出高崩溃率

在Intel持续面临第13代和第14代CPU崩溃问题的背景下&#xff0c;近日&#xff0c;《战甲神兵》(Warframe)的开发者们于7月9日披露了游戏崩溃的统计数据&#xff0c;并描述了诊断该问题的过程。根据开发团队的说法&#xff0c;一名未进行超频且使用全新PC的员工&#xff0c;即便…

网络安全设备——EDR

网络安全中的EDR&#xff08;Endpoint Detection and Response&#xff0c;端点检测与响应&#xff09;是一种主动式的端点安全解决方案&#xff0c;它专注于监控、检测和响应计算机和终端设备上的安全威胁。以下是EDR的详细解释&#xff1a; 一、定义与功能 EDR是一种网络安…

【C++】入门基础(引用、inline、nullptr)

目录 一.引用 1.引用的定义 2.引用的特性 3.引用的使用场景 4.const引用 5.引用和指针的区别 二.inline 三.nullptr 一.引用 1.引用的定义 引用不是新定义一个变量&#xff0c;而是给已经存在的变量取一个别名&#xff0c;编译器不会给引用变量开辟内存空间&#xff0c…

(实测可用)(3)Git的使用——RT Thread Stdio添加的软件包,github与gitee冲突造成无法上传文件到gitee

★硬件资源&#xff1a;本文章以STM32L431RCT6做主控芯片做验证&#xff1b; ★IDE开发环境&#xff1a;RT Thread stdio&#xff1b; ★RT Thread 版本&#xff1a;V4.0.3 一、RT Thread Stdio加载软件包 1、如下图所示&#xff0c;通过RT Thread Stdio加载的软件包&#…

[FPGA]-时序传输模型分析

时序传输模型分析 FPGA内部时钟树 clk到达每个寄存器的时间不一致。 内部时钟树内部示意图如下所示&#xff1a; 在实际FPGA芯片内部&#xff0c;时钟到达每个寄存器的时钟偏差很小&#xff0c;但仍然存在&#xff1b;比如clk到达REG1花费时间0.2ns&#xff0c;到达REG6花费…

【Linux】基于环形队列RingQueue的生产消费者模型

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 前言 环形队列的概念及定义 POSIX信号量 RingQueue的实现方式 RingQueue.hpp的构建 Thread.hpp Main.cc主函数的编写 Task.hpp function包装器的使用 总结 前言…

Torch-Pruning 库入门级使用介绍

项目地址&#xff1a;https://github.com/VainF/Torch-Pruning Torch-Pruning 是一个专用于torch的模型剪枝库&#xff0c;其基于DepGraph 技术分析出模型layer中的依赖关系。DepGraph 与现有的修剪方法&#xff08;如 Magnitude Pruning 或 Taylor Pruning&#xff09;相结合…

Python:setattr()函数和__setattr__()魔术方法

相关阅读 Pythonhttps://blog.csdn.net/weixin_45791458/category_12403403.html?spm1001.2014.3001.5482 setattr()是一个python内置的函数&#xff0c;用于设置一个对象的属性值&#xff0c;一般情况下&#xff0c;可以通过点运算符(.)完成相同的功能&#xff0c;但是getat…