问题标签 [collectd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - 对于像“计数器”类型的 RRD,Collectd 插件正在向 mongo 报告绝对值而不是增量
因此,我正在为 Collectd 编写一个读取插件openvz_guest_bandwidth ,通过使用libiptc查询每个来宾正在执行的外部带宽,我读取了Openvz来宾正在执行多少带宽。
然后我将此信息报告给我编写的write_mongodb 插件,(可能与破损有关)
问题是我在 mongo 中看到了类似的记录,
有趣的价值观在哪里。我希望报告的值是连续记录之间的差异,而不是计数器读取的值。
据我了解,这类似于 COUNTER 的 RRD 计数器类型,而不是 ABSOLUTE。
我非常坚持这一点,不确定故障可能出在哪里,甚至不确定如何纠正它。错误可能在阅读或写作中。
作为旁注,在值到达 write_mongodb 之前,它们通过 collectd 网络插件发送。
此外,我似乎在 和 之间感到value_list.plugin
困惑value_list.plugin_instance
。其他插件似乎使用的类型提供了一个非常无用的字段,例如"t: 'memory'"
内存集合内部。
ruby - 尝试从 rubyscript 中运行乘客状态命令时的特权问题
我在 ruby 中编写了一个 collectd 插件,用于检查乘客状态并报告各种指标。当我测试我的脚本时一切正常,但是当我尝试通过 collectd 运行我的脚本时,它失败并显示以下消息。
“错误:您无权查询此 Phusion Passenger 实例的状态。请使用 'sudo' 重试。”
然后我更改了我的 ruby 脚本以使用 sudo 命令来获取乘客状态,这导致
“exec plugin: exec_read_one: error = sudo: 抱歉,你必须有一个 tty 才能运行 sudo”
然后我尝试让 collectd 以 root 身份运行脚本,但我得到了以下
“执行插件:胆小拒绝以root身份执行程序。”
我不确定我还能尝试什么。由 root 以外的用户使用时失败的命令是passenger-status
这是脚本
#!/usr/bin/env ruby
需要'getoptlong'
# The name of the collectd plugin, something like apache, memory, mysql, interface, ...
PLUGIN_NAME = '乘客状态'def 用法 puts("#{$0} -h [-i ]") 退出结束
# Main
begin # 同步标准输出,以便正确刷新到 collectd。$stdout.sync = 真# 解析命令行选项 hostname = nil sampling_interval = 20 # sec, Default value opts = GetoptLong.new( [ '--hostid', '-h', GetoptLong::REQUIRED_ARGUMENT ], [ '--sampling-interval', ' -i', GetoptLong::OPTIONAL_ARGUMENT ] ) opts.each 做 |opt, arg| case opt when '--hostid' hostname = arg when '--sampling-interval' sampling_interval = arg.to_i end end use if !hostname
# 收集循环 while true do start_run = Time.now.to_i next_run = start_run + sampling_interval
结束结束
collectd - 默认的 collectd 插件目录在哪里?
Collectd 默认将其插件存储在哪里?我缺少一个 perl 插件,我想确保它不是因为安装被冲洗掉了。
bug-reporting - 收集的 memcachec 插件坏了?
我正在尝试使用该memcachec
插件从 memcached 中读取数据,但是当我使用此配置时:
我得到了memcachec plugin: Option 'server' not allowed here.
,如果我删除我得到的服务器选项memcachec plugin: 'Server' missing in 'Page' block.
。我检查了 memcachec 的来源并且有这个代码(memcachec.c,第 329 行):
似乎第二个if
应该是else if
插件工作。这是一个错误吗?我在哪里报告?在官方修复到来之前,在本地修复它的正确方法是什么?
rrdtool - RRDtool 在导出数据时强制使用 step 参数
我正在使用 javascript 库来可视化 rrdtool 数据并使用 rrdtool xport 从 rrd 文件中检索数据。
今天我注意到以下情况:查看now-1day的数据时:数据点为100
,但是查看now-31day的数据时,无处可见100的数据点...
使用 xport 时,如何确保在指定时间内获得所有数据点?
我正在使用--step 10,但它没有任何区别。无论我设置什么--step,它都不会被使用。我读到这是因为如果它小于 1 像素就会被忽略,那么这个问题的建议解决方案是什么?
附加信息:
我正在使用带有默认 RRDtool 插件选项的 Collectdtool:http ://collectd.org/documentation/manpages/collectd.conf.5.shtml#plugin_rrdtool
编辑:似乎RRDtool的本质是一个月、一天、一年等有多个档案,所以我不能在一个月内获得档案的每个数据点是有道理的吗?
linux - Linux CPU 百分比加起来不是 100%
每当我尝试从命令top
或mpstat
特别是collectd
服务之类的命令中添加 CPU 利用率百分比时,我都无法获得确切的 100% CPU 利用率。
例如top
来自 Amazon EC2 上的测试服务器的结果:
无论我如何将这些百分比相加,我从来没有完全得到 100% 的 CPU,当然不是以任何合乎逻辑的方式。大多数情况下,这似乎是舍入错误;100.1% 或 99.9%,但有时我最终会超过 110%。这通常发生在steal
相对较高的情况下,例如collectd
报告的一种情况是约 21.44% 的抢断和约 88% 的闲置,而这两种情况已经远远超过 100%。我知道ni
(nice) 也计入us
(user),所以我不应该添加它,但这仍然行不通。
有谁知道如何将这些添加到 100% 或如何解释collectd
有时报告的例外情况?
nagios - collectd 可以作为 nagios 的替代品吗?
Collectd 提供了一种测量机器统计数据的好方法。如果我需要扩展插件系统来支持怎么办
- 被测机器的配置
- 服务器上运行的所有进程的列表以及 CPU、内存和磁盘的利用率?
- 扫描安全漏洞?
- 补丁管理 - 如果 collectd 客户端需要升级,用户现在需要重新编译和重新安装。我们可以将升级推送到所有运行 collectd 代理的客户端机器吗?我的猜测是这应该是可能的,因为服务器和客户端在 UDP 中处于多播模式(没有客户端服务器模式对吗?)
我目前有用于图形和 mongodb 的石墨设置来收集数据。理想情况下,我想将非数字数据存储在 mongodb 中。
第 1、2 和 3 项可能吗?
fedora - fedora 17 上的 collectd write_mongodb 插件 lt_dlopen 错误。collectd 无法识别已安装的库
我已经从 git repo 下载了 libmongoc 驱动程序并进行安装。然后我下载了collectd tar文件,解压并尝试安装它,一切正常,但是当我尝试运行collect d时,我遇到了这些错误:
为什么 collectd 无法识别已安装的 libmongoc 库?
c - 有没有办法通过带有网络插件或其他插件的collectd中的SSL向服务器发送数据?
我的动机是通过 SSL 加密将 collectd 记录的所有统计信息从客户端机器发送到服务器。
Collectd 有一个网络插件,它执行将统计信息发送到服务器的功能,我们可以在 collectd.conf 文件中设置配置:-
客户端配置 -
服务器配置 -
此配置正在执行将数据发送到具有身份验证的服务器的任务。
有什么方法可以在此配置中添加 SSL 加密,还是有其他方法可以将 SSL 加密添加到 collectd?
尽管 SecurityLevel Encrypt会加密使用 AES-256 发送的数据。但是我们如何使用SSL保护它并通过添加所需的证书来适应其公钥和私钥的概念。
collectd - 如何将缺少的插件添加到 collectd
我已经在我的 ubuntu 机器上安装了collectd 。我想启用 redis插件,但默认情况下不附带它。任何人都知道如何以及在哪里可以下载该插件?