本人目前开发的一个项目,改造ndoutils,主要是它的ndomod。

将性能、报警、配置文件使用JSON格式发送到RabbitMQ。

由于NEB(Nagios Event Broker)使用C开发,所以ndoutils_mq主要也是C语言。

项目地址:https://github.com/shelmesky/ndoutils_mq

项目的README:

注意:代码仍处于不断更新阶段,请随时更新。

对Nagios的Ndoutils增加向RabbitMQ Server发送消息的功能。

过程: 将消息转换为JSON格式后,通过RabbitMQ的C客户端发送到服务器。

有任何问题可联系:roy@rootk.com

安装方法:
按照正常方法安装ndoutils和RabbitMQ服务器,并将ndomod加载到Nagios中,设置配置文件为:/etc/nagios3/ndomod.cfg。
在ndomod.cfg配置文件中增加以下内容: # 是否打开NEB向RabbitMQ发送消息的功能
rabbitmq_enabled=1 # RabbitMQ主机
rabbitmq_hostname=127.0.0.1
# RabbitMQ端口
rabbitmq_port=5672
# RabbitMQ用户名
rabbitmq_username=guest
# RabbitMQ密码
rabbitmq_password=guest # RabbitMQ的virtualhost,默认为/
rabbitmq_virtualhost=/
# 发送消息使用的exchange名称
rabbitmq_exchange=nagios
# 发送消息使用的routing key
rabbitmq_routingkey=nagios 增加以上内容完毕保存,运行目录下的recv.py:
python recv.py 并重启nagios3服务,观察Nagios3的WEB控制台的Event Log有以下输出:
[2013-07-25 16:33:39] NEB message will send to RabbitMQ: [127.0.0.1:5672] [virtualhost:/ exchange:nagios routingkey:nagios]
[2013-07-25 16:33:39] RabbitMQ Init Success.
[2013-07-25 16:33:39] RabbitMQ Library Init... 表示功能正常工作,并可以看到python的客户端已经从RabbitMQ收到消息。

ndoutils_mq项目: 发送Nagios的性能、报警、配置文件到RabbitMQ的更多相关文章

  1. linux环境安装nagiosgraph将nagios的性能数据绘制成动态图表?

    需求描述: 在安装完成nagios之后,比如有监控磁盘负载信息的,连接数的,进程数的,可以通过安装nagiosgraph软件, 将nagios的性能数据绘制成图表,可以看到一段时间内数据的变化 环境说 ...

  2. Jenkins学习之——(3)将项目发送到tomcat

    本章节将讲解如何将项目发送到tomcat,实现自动部署. 我只将一个测试的maven项目托管到github上的,不了解git获github的朋友自己百度一下,我也写了一些关于git的文章,希望大家可以 ...

  3. ThinkPHP多应用/项目配置技巧(使用同一配置文件)--(十六)

    原文:ThinkPHP多应用/项目配置技巧(使用同一配置文件)--(十六) ThinkPHP多应用配置技巧(没有使用分组,这是通过入口文件产生的Home.Admin)----很实用! 比如:现在有Ho ...

  4. 用好lua+unity,让性能飞起来——关于《Unity项目常见Lua解决方案性能比较》的一些补充

    <Unity项目常见Lua解决方案性能比较>,这篇文章对比了现在主流几个lua+unity的方案 http://blog.uwa4d.com/archives/lua_perf.html ...

  5. 在服务端处理同步发送小消息的性能上Kafka>RocketMQ>RabbitMQ

    在发送小消息的场景中,三个消息中间件的表现区分明显: Kafka的吞吐量高达17.3w/s,远超其他两个产品.这主要取决于它的队列模式保证了写磁盘的过程是线性IO.此时broker磁盘IO已达瓶颈. ...

  6. Unity iOS 项目的一种性能评测方法

    [Unity iOS 项目的一种性能评测方法]

  7. Webpack探索【2】--- 安装、项目初始化、webpack.config.js配置文件

    本文主要讲安装.项目初始化.webpack.config.js配置文件方面的内容.

  8. Nagios 钉钉报警

    第一章 创建钉钉应用(用于发送报警信息给单独某个用户) 打开钉钉管理后台: https://oa.dingtalk.com 创建成功后需要记录三个值"AgentID"," ...

  9. 我是如何在实际项目中解决MySQL性能问题

    可能是本性不愿随众的原因,我对于程序员面试中动辄就是考察并发上千万级别的QPS向来嗤之以鼻,好像国内的应用都是那么多用户量一样,其实并发达到千万,百万以上的应用能有几个? 绝大多数的程序员面临的只是解 ...

随机推荐

  1. python16_day12【html、css】

    一.HTML 所有HTML标签操作 <!DOCTYPE html> <html lang="en"> <head> <!--编码--> ...

  2. change the color of a disabled TEdit?

    change the color of a disabled TEdit? Author: P. Below Category: VCL {Question:How can I change the  ...

  3. 在Windows上以服务方式运行 Redis

    ServiceStack.Redis 使用教程里提到Redis最好还是部署到Linux下去,Windows只是用来 做开发环境,现在这个命题发生改变了,在Windows上也可以部署生产环境的Redis ...

  4. Codeforces - 55D Beautiful numbers (数位dp+数论)

    题意:求[L,R](1<=L<=R<=9e18)区间中所有能被自己数位上的非零数整除的数的个数 分析:丛数据量可以分析出是用数位dp求解,区间个数可以转化为sum(R)-sum(L- ...

  5. 2018 Multi-University Training Contest 1 - B Balanced Sequence (贪心)

    题意:对N个由(,)组成的字符串,求拼接后得到的最大的balance序列的长度.balance序列:空串/ A+B(A,B都是b序列)/ (+A+),A为b序列.此三种情况. 分析:在读入N每个字符串 ...

  6. gif 命令大全

    git init # 初始化本地git仓库(创建新仓库) git config --global user.name "xxx" # 配置用户名 git config --glob ...

  7. 负载均衡集群ipvsadm命令及基本用法

    ipvsadm是LVS在应用层的管理命令,我们可以通过这个命令去管理LVS的配置.需要使用yum单独安装. 基本用法: ipvsadm COMMAND [protocol] service-addre ...

  8. MySQL-5.7 游标及DECLARE

    1.cursor游标 用来声明一个数据集 游标的声明必须在变量和条件声明之后,在handler声明之前 游标特性: 不灵敏:服务器可以或不复制其结果 只读:不可更新 不可滚动的:只能在一个方向上遍历, ...

  9. win vista系统的ReadyBoost性能测试

    如果想提高电脑的性能,大家通常会选择升级处理器.内存或是相关硬件,而新一代Windows Vista操作系统中增加的ReadyBoost功能,号称只需一个USB接口的闪存盘(俗称U盘),就能达到加快系 ...

  10. 如何编写自己的虚拟DOM

    要构建自己的虚拟DOM,需要知道两件事.你甚至不需要深入 React 的源代码或者深入任何其他虚拟DOM实现的源代码,因为它们是如此庞大和复杂--但实际上,虚拟DOM的主要部分只需不到50行代码. 有 ...