Graphite 输出插件

编辑
  • 插件版本: v3.1.6
  • 发布日期: 2018-07-11
  • 变更日志

其他版本请参见 版本化插件文档

获取帮助

编辑

如有关于插件的问题,请在 Discuss 论坛中发帖。如需报告错误或提出功能请求,请在 Github 中创建 issue。如需查看 Elastic 支持的插件列表,请参阅 Elastic 支持矩阵

描述

编辑

此输出插件允许您从日志中提取指标并将其发送到 Graphite。Graphite 是一款用于存储和绘制指标图的开源工具。

用例示例:某些应用程序每 10 秒钟在日志中发出聚合统计信息。使用 grok 过滤器和此输出插件,可以捕获日志中的指标值并将其发送到 Graphite。

Graphite 输出配置选项

编辑

此插件支持以下配置选项以及稍后描述的 常用选项

另请参见 常用选项,了解所有输出插件支持的选项列表。

 

exclude_metrics

编辑
  • 值类型为 数组
  • 默认值为 ["%{[^}]+}"]

排除与正则表达式匹配的指标名称,默认情况下排除未解析的 %{field} 字符串。

fields_are_metrics

编辑

一个数组,指示这些事件字段应被视为指标,并将逐字发送到 Graphite。您可以使用 fields_are_metricsmetrics,但不能同时使用两者。

host

编辑
  • 值类型为 字符串
  • 默认值为 "localhost"

Graphite 服务器的主机名或 IP 地址。

include_metrics

编辑
  • 值类型为 数组
  • 默认值为 [".*"]

仅包含与正则表达式匹配的指标名称。

metrics

编辑

要使用的指标。这支持诸如 %{host} 之类的动态字符串,用于指标名称和值。这是一个哈希字段,键为指标名称,值为指标值。示例

    metrics => { "%{host}/uptime" => "%{uptime_1m}" }

该值将强制转换为浮点值。无法强制转换的值将设置为零 (0)。您可以使用 metricsfields_are_metrics,但不能同时使用两者。

metrics_format

编辑

定义指标字符串的格式。占位符 * 将被替换为实际指标的名称。

    metrics_format => "foo.bar.*.sum"

如果没有定义 metrics_format,则将使用指标名称作为后备。

nested_object_separator

编辑

当哈希表作为值传递时,它们会被分解成点表示法。例如,如果您使用以下配置此插件 # [source,ruby] metrics ⇒ "mymetrics"

并且 "mymetrics" 是一个嵌套哈希表 *{a ⇒ 1, b ⇒ { c ⇒ 2 }}*,此插件将生成两个指标:a ⇒ 1 和 b.c ⇒ 2。如果您已指定 *metrics_format*,它将尊重该设置,但您可能仍然希望控制这些嵌套键名中的分隔符。此配置设置将分隔符从默认的 *.* 更改。

port

编辑
  • 值类型为 数字
  • 默认值为 2003

要连接到 Graphite 服务器的端口。

reconnect_interval

编辑
  • 值类型为 数字
  • 默认值为 2

重新连接到 Carbon 的间隔。

resend_on_failure

编辑

失败时是否应重新发送指标?

timestamp_field

编辑
  • 值类型为 字符串
  • 默认值为 "@timestamp"

使用此字段作为时间戳,而不是默认的 *@timestamp*。这在回填数据或将更准确的数据输入 Graphite 时很有用,因为您可能在 Logstash 前面设置了缓存层。

常用选项

编辑

所有输出插件都支持这些配置选项

设置 输入类型 必填

codec

codec

enable_metric

布尔值

id

字符串

codec

编辑
  • 值类型为 codec
  • 默认值为 "plain"

用于输出数据的编解码器。输出编解码器是在数据离开输出之前对其进行编码的一种便捷方法,无需在 Logstash 管道中使用单独的过滤器。

enable_metric

编辑

禁用或启用此特定插件实例的指标日志记录。默认情况下,我们会记录所有可以记录的指标,但您可以禁用特定插件的指标收集。

  • 值类型为 字符串
  • 此设置没有默认值。

向插件配置添加唯一的 ID。如果未指定 ID,Logstash 将生成一个。强烈建议您在配置中设置此 ID。当您拥有两种或更多相同类型的插件时,这尤其有用。例如,如果您有两个 Graphite 输出。在这种情况下,添加命名 ID 将有助于在使用监控 API 时监控 Logstash。

output {
  graphite {
    id => "my_plugin_id"
  }
}

id 字段中的变量替换仅支持环境变量,不支持使用密钥存储中的值。