问题标签 [metricbeat]

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.

0 投票
1 回答
1246 浏览

elasticsearch - 磁盘空间的 Elastalert 规则

我正在使用 metricbeat 监控磁盘空间使用情况。

现在我想根据磁盘大小通过 Elastalert 发出警报。

使用的磁盘空间超过 50% 时发出警报

使用的磁盘空间超过 70% 时发出警报

使用的磁盘空间超过 80% 时发出警报

当磁盘空间使用超过 95% 时发出警报

使用的磁盘空间超过 100% 时发出警报

现在这里的问题是,当它超过某些阈值(50、70、80、95、100)时,应该只发出一次警报

因此,如果已经发送超过 50% 标记的警报,则不应发送 50.1% / 50.2% / ... / 69.9% 的警报

只有在超过 70% 时才应发出下一个警报。

初步方法:

我计划使用“任何规则”将磁盘空间字段匹配到不同的值和警报。但这也可能会产生错误警报,原因是如果存储在过去 1 小时内以 50.0% 饱和(考虑没有新数据写入数据库),如果我们每 10 分钟评估一次规则,它将在那一小时内发出 6 次警报. 我也不想使用 realert,因为我不知道要等多久。

方法 v1:

制作 n 个规则配置,其中 n 是不同条件的数量

这种方法并不理想,因为我们需要重复警报。示例 -当使用率降至 50% 以下,然后再次超过 50% 时,需要发出警报。

方法 v2: 可以使用两个规则的组合。(仅考虑 50%)

规则 1:检查磁盘空间 >= 50,发送邮件,启用规则 2 并使用命令禁用自身

规则 2:检查磁盘空间 <50,启用规则 1,使用命令禁用自身。

有更好的方法吗?

0 投票
3 回答
2423 浏览

elasticsearch - 遍历数组的 Kibana 脚本字段

我正在尝试使用 metricbeat http 模块来监控 F5 池。

我向 f5 api 发出请求并带回保存到 kibana 的 json。但是 json 包含一组池成员,我想计算增加的​​数量。

建议似乎是这可以通过脚本字段来完成。但是,我无法获取脚本来检索数组。例如

在预览结果中返回添加了相同的“附加字段”以进行比较:

如果我尝试

或类似的我只是得到一个错误:

谷歌搜索表明 doc 构造不包含数组?

  1. 是否可以创建一个可以访问一组值的脚本字段?即是我的代码或我索引数据的方式错误。
  2. 如果没有,metricbeats 中是否有替代方法?我不想制作一个全新的 api 来进行计算并添加一个单独的字段

- 更新。

奇怪的是,数组中的数值似乎确实返回了预期的结果。IE。

返回

-- 更新 2

好的,所以如果字段中的字符串具有不同的值,那么您将获得所有值。如果它们是相同的,你就得到一个。什么?

0 投票
1 回答
1952 浏览

elasticsearch - RabbitMQ Metricbeat 缺少队列

看起来我的 RabbitMQ 集群上只有一小部分队列通过 Metricbeat 进入 Elasticsearch。

当我查询 RabbitMQ 时/api/overview,我看到报告了 887 个队列:

当我查询 RabbitMQ /api/queues(这是 Metricbeat 命中的)时,我也计算了 887 个队列。

当我在 Elasticsearch 中获得该字段的唯一计数时rabbitmq.queue.name,我只看到 309 个队列。


我在调试输出中没有看到任何对我来说很突出的东西。这只是通常的 INFO 级别的启动消息,然后是发布信息:

我认为如果获取队列有问题,我应该在上面的日志中看到一个错误,按照https://github.com/elastic/beats/blob/master/metricbeat/module/rabbitmq/queue/data.go# L94-L104

这是metricbeat.yml

这是modules.d/rabbitmq.yml

0 投票
2 回答
894 浏览

elasticsearch - 在 Kibana 中,度量标准无法正确显示仪表类型

我的面积图和折线图正确显示 和 的system.cpu.user.pct平均值system.memory.used.pct。0.4 为 40%

在此处输入图像描述

但是,当我使用仪表类型可视化时,它不能正确显示数据。Gauge 将 0.4 表示为 40%,但似乎将其视为 0.4%。

在此处输入图像描述

我想将system.cpu.user.pct和的值乘以system.memory.used.pct100 来解决这个问题

在此处输入图像描述

我有一种感觉,也许我可以在这里做点什么。价值 * 100 ? 谁能给我提示?

0 投票
1 回答
993 浏览

docker - openshift上的权限被拒绝metricbeat

我正在尝试在 openshift 上部署 metricbeat,但经过数小时的工作,我无法让它工作。相同的图像在 docker 上正常运行。谢谢

错误:/usr/local/bin/custom-entrypoint:第 2 行:/usr/share/metricbeat/metricbeat:权限被拒绝

0 投票
1 回答
520 浏览

jolokia - Metricbeat Jolokia jmx 映射

我目前正在使用 docker-compose 使用 ELK 7.2.0 与 Jolokia 一起试验 Metricbeat,并且我能够在 Kibana 中显示 JMX 指标。

我的问题是我需要为每个 JMX 指标配置 metricbeat 配置 YML 的 jmx.mappings 部分中的映射,我想发送给 ELK 的指标。

问题是否可以传递某种通配符配置,以便 metricbeat简单地提取所有 jmx 指标并将其发送到 ELK

谢谢,路易斯·奥斯卡·特里格罗斯

0 投票
1 回答
34 浏览

jolokia - 默认情况下启用许多模块的 Metricbeat

我正在使用 Docker-Compose 试验 Metricbeat,但我只对在开始时通过 Jolokia 获取指标感兴趣

目前从默认启用的所有模块开始,这会在 Elastic 中生成一个巨大的模式,其中包含 2000 多个字段。

在使用 Docker 映像安装时,为什么只启用特定的模块?

谢谢,路易斯·奥斯卡·特里格罗斯

0 投票
1 回答
651 浏览

docker - 无法让 Metricbeat 使用传递的环境变量

metricbeat根据官方文档(版本 7.2.0) ,我正在尝试在 docker 中运行服务。这是我的 bash 命令setup

如您所见,我正在传递output.elasticsearch.host变量,它绝对不等于默认值。但这是metricbeat容器日志的一部分:

这意味着metricbeat使用默认的 Elastic 主机而不是环境变量值。我该如何解决?

0 投票
1 回答
185 浏览

elasticsearch - 在索引上检测到特定数量的分片时发出警报

我想检测每个索引的分片数量何时超过某个阈值。

我使用 Metricbeat 和 Elasticsearch 模块从索引中检索指标数据,并使用 ElastAlert 在每个索引检测到一定数量的分片时发送警报。

起初,我认为我可以以某种方式使用_statsAPI 或_settings端点来访问每个索引的分片数量并在这个数字上运行 ElastAlert。但是,据我所知,ElastAlert 仅扫描_doc索引部分,而不扫描_statsor _settings

正如 Metricbeat 的 Elasticsearch 模块的文档中所写,有一个elasticsearch.cluster.stats.indices.shards.count字段列出了整个集群的分片数量:

elasticsearch.cluster.stats.indices.shards.count
  类型:长

  集群中的分片总数。

我想知道除了每个索引之外是否有类似的东西?如果没有,可能的解决方法是什么?

0 投票
0 回答
1278 浏览

elasticsearch - 默认情况下,在文本字段上禁用 Fielddata 设置 fielddata=true

我在 kubernetes 上运行弹性堆栈 v 7.2.0,并且在访问 metricbeat 仪表板时在 elasticsearh 中收到此错误

我的问题是如果我手动添加了模板和仪表板,那么为什么会出现此错误?添加模板后,所需的映射不应该进入索引吗?我看到了一些建议明确应用所需映射的答案。但是在这种情况下,我应该如何给出要应用此映射的索引名称,因为我的 metricbeat 索引将在每个新日期每天创建。这种显式映射将如何在每个日期创建的所有 metricbeat 索引中持续存在?PUT /what-should-be-the-index-name/_mapping