避免 YAML 格式问题
编辑避免 YAML 格式问题
编辑配置文件使用 YAML 作为其语法。 当您编辑文件以修改配置设置时,有一些事项您应该了解。
使用空格进行缩进
编辑缩进在 YAML 中是有意义的。 请确保使用空格而不是制表符来缩进节。
在默认配置文件和文档中的所有示例中,我们每个缩进级别使用 2 个空格。 我们建议您也这样做。
查看默认配置文件以了解结构
编辑了解在哪里定义配置选项的最佳方法是查看提供的示例配置文件。 配置文件包含 Beat 可用的大部分默认配置。 要更改设置,只需取消注释该行并更改值即可。
测试您的配置文件
编辑您可以测试您的配置文件以验证其结构是否有效。 只需切换到二进制文件安装的目录,然后在前台运行 Beat,并指定 test config
命令。 例如
packetbeat test config -c packetbeat.yml
如果 Beat 在文件中发现错误,您将看到一条消息。
将正则表达式包裹在单引号中
编辑如果您需要在 YAML 文件中指定正则表达式,最好将正则表达式包裹在单引号中,以解决 YAML 字符串转义的棘手规则。
有关 YAML 的更多信息,请参阅 http://yaml.org/。
将路径包裹在单引号中
编辑特别是 Windows 路径有时包含空格或字符,例如盘符或三个点,这些可能会被 YAML 解析器误解。
为了避免这个问题,最好将路径包裹在单引号中。
避免在数值中使用前导零
编辑如果在数值字段中使用前导零(例如,09
)而不将该值包裹在单引号中,YAML 解析器可能会错误地解释该值。 如果该值是有效的八进制数,则它会被转换为整数。 如果不是,则会转换为浮点数。
为了防止不需要的类型转换,请避免在字段值中使用前导零,或者将值包裹在单引号中。
避免意外的模板变量解析
编辑允许配置从环境变量解析数据的模板引擎可能会导致带有 $
字符的字符串出现错误。 例如,如果密码字段包含 $$
,引擎会将此解析为 $
。
为了解决这个问题,请使用 密钥库 或将所有 $
实例转义为 $$
。