gpt4 book ai didi

javascript - Munin 用于实时监控和 Javascript 绘图

转载 作者:行者123 更新时间:2023-11-30 17:28:20 24 4
gpt4 key购买 nike

我现在工作的组织使用 Munin 作为监控工具。我们已经编写了一个服务,该服务可以流式传输有关可由 Javascript 组件显示的服务的实时数据。运营团队最好在 Munin 中显示这些指标,以避免使用另一个系统进行实时监控。

  1. 使用 Munin 使用 Javascript 显示实时数据是否可行?最好我想将其创建为插件,但我们也可以修改一些 Munin HTML 页面或类似页面,只需将 Javascript 组件添加到页面即可。
  2. 当流的某些属性超过某个阈值时指定警报/警报也很好。鉴于 (1) 是可行的,那么集成它的一个想法是编写一个外部应用程序来读取实时流并确定何时应触发警报。当检测到错误时,外部应用程序可以将其写入磁盘上的文件。然后,我们的想法是编写一个 Munin 插件,从该文件中读取并在适用的情况下从 Munin 内部触发更改/警报。

最佳答案

  1. Munin 每五分钟“轮询”一次机器以获取数据。为了将您的流数据指向中央 munin 服务器,您需要在流数据的服务器上配置一个 munin 节点,并编写一个 shell 脚本(可能涉及 curl 和 awk)来获取当前数据。

    在节点上创建一个 munin 插件非常简单,它只是一个 shell 脚本,它以可读的形式将数据输出到标准输出。

  2. 设置警报很容易,对于您返回的值,您需要在 munin 插件配置输出中设置警告和临界值。请记住,这些警告也是按 5 分钟的时间表发出的,因此不是“立即”发出的。

http://guide.munin-monitoring.org/en/latest/ 了解 munin 的工作原理

一个简单的 munin 插件示例(系统加载插件的剥离版本):

#!/bin/sh
. $MUNIN_LIBDIR/plugins/plugin.sh

if [ "$1" = "autoconf" ]; then
echo yes
exit 0
fi

if [ "$1" = "config" ]; then

echo 'graph_title Load average'
echo 'graph_args --base 1000 -l 0'
echo 'graph_vlabel load'
echo 'graph_scale no'
echo 'graph_category system'
echo 'load.label load'
print_warning load
print_critical load
echo 'graph_info The load average of the machine describes how many processes are in the run-queue (scheduled to run "immediately").'
echo 'load.info 5 minute load average'
exit 0
fi

echo -n "load.value "
cut -f2 -d' ' < /proc/loadavg

关于javascript - Munin 用于实时监控和 Javascript 绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23751915/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com