Zabbix监控nginx-rtmp status(html版)
nginx-rtmp开启stats
# nginx(--add-module=nginx-rtmp-module-master) nginx.conf:
server {
listen ;
location /stat {
rtmp_stat all;
}
}
http://127.0.0.1:81/stat

stat状态值详解
codec: 编码
bits/s: 码流
size: 分辨率
fps: 每秒传输帧数
freq: 音频频率
chan: 声道数
定义zabbix监控item key
vim etc/zabbix_agentd.conf.d/userparameter_live.conf
UserParameter=live.stream[*],/usr/local/zabbix-agent/scripts/stream.py $
stream.py # 判断In bits/s值(视音频合计码流)。0则rtmp断流,非0则正常
#!/usr/bin/python
# -*- coding: utf-8 -*-
# author pdd '''
curl的直播流状态值写入本地CACHE文件 后续具体的直播频道流值从该文件获取 CACHE文件根据ctime一分钟更新一次
''' import os
import re
import sys
import time
import urllib2 class Live(object): def __init__(self,url,CACHETTL,CACHE,STREAM):
self.url = url
self.CACHETTL = CACHETTL
self.CACHE = CACHE
self.STREAM = STREAM def generate_cache(self):
TIMENOW = int(time.time())
if os.path.isfile(self.CACHE) and os.path.getsize(self.CACHE) > 0:
TIMECACHE = int(os.path.getctime(self.CACHE))
else:
TIMECACHE = 0
if (TIMENOW - TIMECACHE) > self.CACHETTL:
try:
r = urllib2.urlopen(self.url,timeout=1)
with open(self.CACHE,'w') as f:
f.write(r.read())
except urllib2.URLError, e:
print 0 # 给zabbix触发直播流down报警的值
exit(1) # 退出程序 不让从CACHE文件获取值 def get_status(self):
self.generate_cache()
with open(self.CACHE,'r') as f:
r = f.read()
name = re.findall(r'<name>(.*_sd)</name>',r)
flow = re.findall(r'<bw_in>(.*)</bw_in>',r)[1:]
stream = dict(zip(name,flow))
print(stream[self.STREAM]) if __name__ == "__main__":
url = "http://127.0.0.1:81/stat" # 直播频道流状态值url
CACHETTL = 60 # 本地CACHE文件更新时间间隔
CACHE = "/tmp/nginx-rtmp-status.cache" # 本地CACHE文件绝对路径
STREAM = sys.argv[1] # 某个具体直播频道
status = Live(url,CACHETTL,CACHE,STREAM)
status.get_status()
重启zabbix_agentd客户端使监控key生效
客户端测试

服务器端 # 页面监控主机添加对应的application items
zabbix后台 Configuration->Hosts->被监控的数据库主机name->Applications Items

创建Graphs(视音频码流)
zabbix后台 Configuration->Hosts->被监控的主机name->Graphs

查看graph(视频码流)
zabbix后台 Monitoring->Graphs->对应的graph

Zabbix监控nginx-rtmp status(html版)的更多相关文章
- zabbix监控nginx status页面
在需要添加监控的nginx配置文件中添加下列配置 #zabbix监控nginx配置 location /nginx_status { stub_status on; access_log off; a ...
- Zabbix 监控 Nginx(四)
简介: 如何使用 Zabbix 监控 Nginx 状态 ? 1.获取 Nginx 状态( HTTP Stub Status ) [root@localhost ~]# /apps/product/ng ...
- Zabbix 监控 Nginx 状态
简介: 如何使用 Zabbix 监控 Nginx 状态 ? 1.获取 Nginx 状态( HTTP Stub Status ) shell > /usr/local/nginx/sbin/ngi ...
- 使用zabbix监控nginx
在zabbix agentd客户端上,查看nginx是否加载了--with-http_stub_status_module.因为zabbix监控nginx是根据 nginx的Stub Status模块 ...
- zabbix监控nginx连接状态(转)
zabbix监控nginx zabbix可以监控nginx的状态,关于一个服务的状态可以查看服务本身的状态(版本号.是否开启),还应该关注服务能力(例如以nginx的负载效果:连接数.请求数和句柄数) ...
- 使用zabbix监控nginx的活动连接数
使用zabbix监控nginx的活动连接数 1.方法简述 zabbix可以自定义很多监控,只要是能通过命令获取到相关的值,就可以在zabbix的监控中增加该对象进行监控,在zabbix中,该对象称之为 ...
- Zabbix监控nginx性能的另外一种方式
Zabbix监控nginx性能的另外一种方式 nginx和php-fpm一样内建了一个状态页,对于想了解nginx的状态以及监控nginx非常有用,为了后续的zabbix监控,我们需要先启用nginx ...
- Zabbix应用四:Zabbix监控Nginx
利用Zabbix监控Nginx 一.准备nginx监控模版: 1.1.下载nginx监控模版: 点此下载 1.2.导入模版: Zabbix管理页面,选择'配置'->'模版'->'导入': ...
- zabbix监控nginx的性能
1.nginx配置 需要使用zabbix监控nginx,首先nginx需要配置ngx_status,在nginx的配置文件中加入红框中的配置,然后重启nginx如下图所示: location /ngx ...
- 【zabbix告警监控】配置zabbix监控nginx服务
zabbix监控nginx,nginx需要添加--with-http_stub_status模块 使用zabbix监控nginx,首先nginx需要配置开启ngx_status.但是我这边nginx安 ...
随机推荐
- [C#6] 3-null 条件运算符
0. 目录 C#6 新增特性目录 1. 老版本的代码 namespace csharp6 { internal class Person { public string Name { get; set ...
- (转载)SQL Reporting Services (Expression Examples)
https://msdn.microsoft.com/en-us/library/ms157328(v=SQL.100).aspx Expressions are used frequently in ...
- 大数据系列(3)——Hadoop集群完全分布式坏境搭建
前言 上一篇我们讲解了Hadoop单节点的安装,并且已经通过VMware安装了一台CentOS 6.8的Linux系统,咱们本篇的目标就是要配置一个真正的完全分布式的Hadoop集群,闲言少叙,进入本 ...
- W3School-CSS 内边距 (padding) 实例
CSS 内边距 (padding) 实例 CSS 实例 CSS 背景实例 CSS 文本实例 CSS 字体(font)实例 CSS 边框(border)实例 CSS 外边距 (margin) 实例 CS ...
- web服务器选择Apache还是Nginx
首先我们来谈谈老朋友Apache,Apache HTTP Server(简称Apache)是世界使用排名第一的Web服务器软件,音译为阿帕奇,是Apache软件基金会的一个开放源码Web服务器,可以运 ...
- java中System.getenv和System.getProperties的区别
System.getenv获取的是系统的环境变量(就是用户在操作系统中设置的环境变量),windows和linux下环境变量的设置就不说了哦. System.getProperties获取的是系统的相 ...
- nginx 配置php
安装php yum install php yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php ...
- Linux一些经典书籍
一.linux之路 1.入门篇 <LINUX权威指南>书不错,写的很全面也比较广,涉及的不深,做为入门书籍不错,可以比较全面的了解linux .另外比较热门的也可以看看<鸟哥的私房菜 ...
- C++中的也能使用正则表达式
正则表达式Regex(regular expression)是一种强大的描述字符序列的工具.在许多语言中都存在着正则表达式,C++11中也将正则表达式纳入了新标准的一部分,不仅如此,它还支持了6种不同 ...
- mysql查询优化建议(百度)
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使 ...