ganglia gweb events or "user defined markers"

简介:
在说gweb的event 前, 我先举个例子 : 
在办公室有时会听到NOC的同事大喊, 流量飙升了, 怎么回事?
然后一般会有同事回应可能是在跨机房拷贝一些文件或者数据什么的, 又或者是在做跨机房的数据备份什么的.
如果在流量图上有标记的话, 那么NOC的同事对待这种流量突变的情况也不会一惊一乍.
gweb支持配置event, 这里指的event就是用户定义的时间段标签.

例如 : 
配置文件目录和customize view的目录一样
/data01/web/ganglia-web/conf/events.json
包含的内容举例 : 
[
  { "event_id":"1234",   # 事件 ID
    "start_time":1308496361,  # 开始时间
    "end_time":1308496961,  # 结束时间
    "summary":"DB Backup",    # summary
    "description":"Prod daily db backup",  # 事件描述
    "grid":"*",
    "cluster":"*",
    "host_regex":"centos1"  # 主机名规则表达式
  },
  { "event_id":"2345",  # 第二个事件的内容
    "start_time":1308497211,
    "summary":"FS cleanup",
    "grid":"*",
    "cluster":"*",
    "host_regex":"centos1"
  }
]

当events很多时, 解析JSON可能会增加CPU负载, 可以考虑使用mdb2格式, 即将event存入MYSQL数据库. 需要修改conf.php
默认的conf.php中event相关的配置如下 : 
# What is the provider use to provide events.
# Examples: "json", "mdb2"
$conf['overlay_events_provider'] = "json";
# Where is the Overlay events file stored
$conf['overlay_events_file'] = $conf['conf_dir'] . "/events.json";

# If using MDB2, connection string:
$conf['overlay_events_dsn'] = "mysql://dbuser:dbpassword@localhost/ganglia";

$conf['overlay_events_color_map_file'] = $conf['conf_dir'] . "/event_color.json";


例子, 使用events.json添加event.
获得一个时间, 用于start_time
digoal=# SELECT EXTRACT(EPOCH FROM now()),now();
    date_part     |              now              
------------------+-------------------------------
 1410765863.10149 | 2014-09-15 15:24:23.101488+08
(1 row)

编辑events.json
[root@db-172-16-3-221 conf]# vi events.json
[
  { "event_id":"digoal",
    "start_time":1410765863,
    "end_time":1410765999,
    "summary":"DB Backup",
    "description":"Prod daily db backup",
    "grid":"*",
    "cluster":"*",
    "host_regex":".*"
  }
]

现在在图中就可以看到这个事件了. summary会显示在图中 : 
ganglia gweb events or user defined markers - 德哥@Digoal - PostgreSQL research
通过这个图我们就知道这个时候正在做数据库备份, 如果流量上升的话可以得到合理的解释.
(当然不排除恰巧同时也发生了其他事件到在图形的异常)

除了使用events.json来编辑创建event, 还可以使用web界面或者API来创建event.
使用WEB 界面来创建event.
ganglia gweb events or user defined markers - 德哥@Digoal - PostgreSQL research

也可以使用API来创建event : 
通过HTTP GET或POST请求来创建event.

An easy way to manipulate events is through the Ganglia Events API, which is available
from your gweb interface at  /ganglia/api/events.php. To use it, invoke the URL along
with key/value pairs that define events. Key/value pairs can be supplied as either GET
or POST arguments. The full list of key/value pairs is provided in : 

Key: Value
action: addto add a new event, editto edit, removeor deleteto remove an event.
start_time: Start time of an event. Allowed options are now(uses current system time), UNIX timestamp, or any other well formed date, as supported by PHP’s strtotime function.
end_time: Optional. Same format as start_time.
summary: Summary of an event. It will be shown in the graph legend.
host_regex: Host regular expression, such as web-|app-.

例子 : 
curl "http://mygangliahost.com/ganglia/api/events.php?\
action=add&start_time=now&\
summary=Prod DB Backup&host_regex=db02"

OR

curl -X POST --data " action=add&start_time=now\
&summary=Prod DB Backup&host_regex=db02" \
http://mygangliahost.com/ganglia/api/events.php

返回值 : 
API will return a JSON-encoded status message with either status = ok or status = error.
If you are adding an event, you will also get the  event_idof the event that was just
added in case you want to edit it later, such as to add an end_time.


[参考]
目录
相关文章
|
6月前
|
传感器 人工智能 监控
可穿戴设备在运动领域的应用:科技让运动更智能
可穿戴设备在运动领域的应用:科技让运动更智能
271 9
|
10月前
|
人工智能 供应链 监控
数字孪生与农业:精准农业的发展趋势
数字孪生技术正逐步渗透到农业生产的各个环节,通过创建物理实体的数字副本,实现对实体状态的精确模拟和预测。在农业领域,这一技术的应用正引领着精准农业的发展趋势,包括智慧栽培、环境智能控制、精准农业管理和农业供应链优化等方面,为农业生产的智能化、高效化和可持续发展提供了强大的技术支持。
|
10月前
|
人工智能 搜索推荐 物联网
Android系统版本演进与未来展望####
本文深入探讨了Android操作系统从诞生至今的发展历程,详细阐述了其关键版本迭代带来的创新特性、用户体验提升及对全球移动生态系统的影响。通过对Android历史版本的回顾与分析,本文旨在揭示其成功背后的驱动力,并展望未来Android可能的发展趋势与面临的挑战,为读者呈现一个既全面又具深度的技术视角。 ####
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
探索量子计算在人工智能领域的应用####
本文深入探讨了量子计算技术在人工智能领域的潜在应用及其革命性影响。文章首先概述了量子计算的基本原理,随后分析了其在机器学习、优化算法及模式识别等AI子领域中的具体应用实例,最后讨论了当前面临的挑战与未来发展趋势。通过对比经典计算与量子计算在处理复杂问题上的差异,揭示了量子计算加速AI进程的可能性。 ####
|
11月前
|
人工智能
采用8个64B模型进行的模型融合,效果如何呢?
【10月更文挑战第1天】论文解读:针对模型融合(Model Merging)中的AI模型数量、模型大小、模型能力、合并方法等因素的实验及结果
273 2
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能在医疗健康领域的最新进展
人工智能在医疗健康领域的最新进展
|
10月前
|
存储 安全 大数据
|
消息中间件 存储 运维
【真实案例】消息消费失败如何处理?
在介绍消息中间件 MQ 之前,我们先来简单的了解一下,为何要引用消息中间件。 例如,在电商平台中,常见的用户下单,会经历以下几个流程。 当用户下单时,创建完订单之后,会调用第三方支付平台,对用户的账户金额进行扣款,如果平台支付扣款成功,会将结果通知到对应的业务系统,接着业务系统会更新订单状态,同时调用仓库接口,进行减库存,通知物流进行发货!
【真实案例】消息消费失败如何处理?
|
机器学习/深度学习 人工智能 自然语言处理
2022年十大人工智能 (AI) 软件解决方案
IDC 预测,人工智能平台和人工智能应用开发和部署将继续成为人工智能市场增长最快的领域。此列表为组织评估最适合其需求的方法和解决方案提供了一个起点。
2022年十大人工智能 (AI) 软件解决方案

热门文章

最新文章