元数据

源码

metadata 启用元数据收集器。

说明

启用 metadata 时,任何实现 metadata.Provider 接口 的插件将在每次 DNS 查询中于该查询流程的开始时被调用,以便向上下文中添加其自身的元数据。

收集的元数据将通过 ServeDNS 函数中提供的 Context 参数对所有插件可用。程序包(代码)文档提供了有关如何检查和检索插件可能感兴趣的元数据的示例。

元数据通过在上下文中设置带有值的标签来添加。这些标签应命名为 plugin/NAME,其中 NAME 是描述性内容。metadataplugin 强制的唯一严格要求是这些标签包含一个反斜杠。请参阅 metadata.SetValueFunc 的文档。

存储的值是一个字符串。空字符串表示“无元数据”。有关如何检索此信息,请参阅 metadata.ValueFunc 的文档。

语法

metadata [ZONES... ]
  • ZONES 应调用元数据。

插件

愿意为其他插件提供元数据信息的每个插件都需要实现 metadataprovider 接口。它将由元数据调用,并从上下文中收集所有插件的信息。

注意:此方法应快速有效,因为它在每个请求时都会被调用。

示例

rewrite 插件使用元数据重写请求。

另请参阅

Provider 接口程序包级别 文档。