前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Fluentd v1.8.0已经发布

Fluentd v1.8.0已经发布

作者头像
CNCF
发布2019-12-19 14:56:15
5500
发布2019-12-19 14:56:15
举报
文章被收录于专栏:CNCFCNCF

作者:Masahiro Nakagawa

嗨各位用户!

我们已经发布了v1.8.0。更新日志在这里。这个版本包含了新的服务发现插件和许多增强功能。

https://github.com/fluent/fluentd/blob/master/CHANGELOG.md

添加服务发现插件

服务发现插件以可扩展的方式管理目标列表。下面是out_forward插件的例子:

代码语言:javascript
复制
# out_forward now uses service discovery plugin
<match test>
  @type forward
  <service_discovery>
    @type file
    path /path/to/sd_forward.yaml
  </service_discovery>
  # other parameters...
</match>


# content of sd_forward.yaml
- 'host': 127.0.0.1
  'port': 24224
  'weight': 1
  'name': server1
- 'host': 127.0.0.1
  'port': 24225
  'weight': 1
  'name': server2

使用这个配置,out_forward使用file服务发现插件从sd_forward.yaml文件读取服务器列表。

此外,file服务发现监视path文件。如果sd_forward.yaml文件更新了,out_forward的服务器列表也会更新。不需要为out_forward的服务器列表重新启动fluentd。

支持的内置插件现在是static和file。我们计划支持更多的服务发现插件,例如DNS SRV记录。

https://docs.fluentd.org/service_discovery/static

https://docs.fluentd.org/service_discovery/file

改进了配置参数处理

当前配置解析器存在以下几个问题:

1. 非字符串类型的自动转换

这是容易出错的。例如,如果您设置int_param “foo”,int_param将变为0。这种情况应该引起配置错误。

2. 无法使用默认值

这在使用环境变量时非常重要。我们不能在param "#{ENV['FOO_PARAM']}"的情况下使用nil或plugin的默认值。

对于问题1,我们为strict模式引入了--strict-config-value选项。使用此选项,fluentd将为无效参数引发配置错误。您还可以使用<system>节来代替--strict-config-value。

代码语言:javascript
复制
<system>
  strict_config_value true
</system>

Fluentd v2将使用严格(strict)模式。

对于问题2,我们引进了ruby嵌入式参数的帮助程序。你可以如下使用默认值:

代码语言:javascript
复制
param "#{ENV['FOO_PARAM'] || use_default}"

如果FOO_PARAM环境变量不存在,则使用plugin的默认值。这在kubernetes环境中非常有用。

formatter_csv:支持嵌套字段

可以在fields参数中使用记录访问器语法。

代码语言:javascript
复制
<format>
  @type csv
  fields code,message,$.nest.key
</format>

弃用顶级匹配以捕获fluentd日志

Fluentd现在提供了两种捕获Fluentd日志的方法。

  • <label @FLUENT_LOG>与<filter>和<match>
  • 顶级<match fluent.**>

前者是v1风格。后者用于v0.12兼容性。现在,Fluentd对后一种情况显示弃用信息。

Fluentd v2将删除给fluentd日志的顶级<match fluent.**>特性。

主要错误修复

  • 修正了在试运行模式下的错误处理。显示更好的日志
  • 服务器助手:修复了tcp套接字在IPv6双栈模式的问题
  • 服务器助手:在TLS accept中忽略ECONNREFUSED以避免fluentd重启

享受日志!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CNCF 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档