配置 URL
您可以在查询 URL 字段中输入任何 URL。URL 必须是有效的 JSON、CSV、GraphQL、XML 或 HTML 端点。
在查询编辑器中,点击 URL 字段旁边的展开图标,可以配置更多查询 URL 选项,如 HTTP 方法 (GET/POST)、附加 Headers 和附加查询字符串。
URL 中的变量
在查询 URL 中,您可以使用任何 Grafana 全局变量 或任何仪表盘变量,这包括仪表盘的 from 和 to 时间戳。
例如:
https://example.com/path/subpath?from=${__from:date:YYYY-MM}&to=${__to:date:YYYY-MM}
将生成
https://example.com/path/subpath?from=2020-01&to=2020-04
URL 查询字符串中的安全密钥
在某些情况下,您可能需要将安全的 API 密钥作为 URL 的一部分传递。将它们硬编码在面板中是不安全的。您可以在数据源设置中配置这些安全密钥。
您也可以为此目的使用 API 密钥认证。
URL 中的 Headers
您可以在数据源配置和查询 Headers 中配置 URL 所需的 Headers。默认情况下,infinity 数据源会自动设置两个 Headers。对于所有请求,都会设置 Header User-Agent : Go-http-client/1.1
和 Content-Type : application/json
。您可以在数据源配置页面中覆盖这些 Headers。
注意:我们建议仅通过配置添加安全 Headers,而不是在查询中。
将 Grafana 元数据作为 Headers / 查询参数转发
从 Infinity 插件版本 3.0.0 开始,您可以通过数据源设置页面中的 自定义 HTTP Headers / URL 查询参数* 将 Grafana 元数据(如用户 ID、数据源 UID)转发到出站请求。在数据源的 URL 部分,您可以添加任意数量的自定义 Headers / 查询参数及其值。这些值可以包含以下宏,这些宏将根据请求上下文转换为实际值。
宏名称 | 描述 |
---|---|
${__org.id} | 这将替换为发出请求的 Grafana 组织 ID |
${__plugin.id} | 这将替换为插件 ID |
${__plugin.version} | 这将替换为插件版本 |
${__ds.uid} | 这将替换为数据源 UID |
${__ds.name} | 这将替换为数据源名称 |
${__ds.id} | 这将替换为数据源 ID (已弃用) |
${__user.login} | 这将替换为用户登录 ID |
${__user.email} | 这将替换为用户登录邮箱 |
${__user.name} | 这将替换为用户名称 |
注意:某些宏,例如
${__user.login}
,在告警、录制查询、公共仪表盘等的上下文中将不可用。
允许的主机
留空将允许所有主机。这是默认设置。
如果您的数据源只需要允许特定的主机,请在配置中配置允许的主机名。可以允许多个主机。主机名区分大小写,并且需要是完整的主机名。示例:https://en.wikipedia.org/