避免 YAML 格式化问题

编辑

避免 YAML 格式化问题编辑

配置文件使用 YAML 作为其语法。 当您编辑文件以修改配置设置时,您应该了解以下几点。

使用空格进行缩进编辑

缩进在 YAML 中有意义。 确保使用空格而不是制表符来缩进部分。

在默认配置文件以及文档中的所有示例中,我们使用每级缩进 2 个空格。 我们建议您也这样做。

查看默认配置文件的结构编辑

了解在哪里定义配置选项的最佳方法是查看提供的示例配置文件。 配置文件包含 Beat 可用的大多数默认配置。 要更改设置,只需取消注释该行并更改值即可。

测试您的配置文件编辑

您可以测试您的配置文件以验证结构是否有效。 只需切换到安装二进制文件的目录,并在前台运行 Beat,并指定 test config 命令。 例如

metricbeat test config -c metricbeat.yml

如果 Beat 在文件中发现错误,您将看到一条消息。

将正则表达式括在单引号中编辑

如果您需要在 YAML 文件中指定正则表达式,最好将正则表达式括在单引号中,以解决 YAML 对字符串转义的棘手规则。

有关 YAML 的更多信息,请参见 http://yaml.org/

将路径括在单引号中编辑

Windows 路径,尤其是有时包含空格或字符(例如驱动器号或三个点),这些字符可能会被 YAML 解析器误解。

为了避免此问题,最好将路径括在单引号中。

避免在数字值中使用前导零编辑

如果您在数字字段中使用前导零(例如,09),而没有将值括在单引号中,则该值可能会被 YAML 解析器错误解释。 如果该值是有效的八进制数,则将其转换为整数。 如果不是,则将其转换为浮点数。

为了防止不必要的类型转换,请避免在字段值中使用前导零,或者将值括在单引号中。

避免意外的模板变量解析编辑

允许配置解析环境变量数据的模板引擎可能会导致包含 $ 字符的字符串出现错误。 例如,如果密码字段包含 $$,引擎将将其解析为 $

为了解决此问题,请使用 密钥库 或使用 $$ 对所有 $ 实例进行转义。