Dynatrace 数据源 for Grafana
Dynatrace 数据源插件允许您查询和可视化 Dynatrace 指标、问题、审计日志、管理区域、日志,并可以在 Grafana 内部使用 USQL。由于底层 Dynatrace API 是早期采用者版本,因此日志查询目前处于测试阶段。
需求
本插件有以下需求
- Dynatrace 帐户
- 以下帐户类型之一
- 适用于拥有 Grafana Cloud 免费版、高级版或试用版帐户或已激活的 Grafana 企业版许可证 的用户。
已知限制
- 模板变量无法进行多选;仅支持单选。
- 由于底层 Dynatrace API 是早期采用者版本,因此日志查询目前处于测试阶段。
- 查询管理区域需要
读取配置
范围。如果您不想使用管理区域过滤器,则可以跳过此范围。
安装 Dynatrace 数据源插件
要安装数据源,请参阅安装。
从 Dynatrace 获取 API 密钥
要设置 API 令牌,请参阅 Dynatrace API - 令牌和身份验证。
要查询单个服务,您需要在您的 API 令牌中添加特定的范围。
服务 | 所需范围 |
---|---|
指标 | 读取指标 、读取实体 (可选:v1:读取配置 ) |
问题 | v1:访问问题和事件源、指标和拓扑 |
USQL | v1:用户会话 |
日志 | 读取日志 |
审计日志 | 读取审计日志 |
管理区域 | v1:读取配置 |
直接 API 访问 | 有关所需范围的详细信息,请参阅 dynatrace API 文档。 |
在 Grafana 中配置数据源
通过填写以下字段添加数据源
- 名称
- 您想要应用于 Dynatrace 数据源的名字。
- Dynatrace API 类型
- 您要连接的 Dynatrace 实例的类型。有 3 个选项
- SaaS
- 托管集群
- 原始 URL
- 环境 ID
- 在
yfc55578.live.dynatrace.com
的 SaaS 示例中,您的环境 ID 将是yfc55578
。在yd8888.managed-sprint.dynalabs.io/e/abc99984-3af2-55tt-72kl-0672983gc45
的托管示例中,您的环境 ID 将是abc99984-3af2-55tt-72kl-0672983gc45
,而您的域名将是yd8888.managed-sprint.dynalabs.io
- 原始 URL
- 您自定义 dynatrace 实例的 URL。例如
https://yfc55578.live.dynatrace.com
。原始 URL 允许输入属于SaaS
或托管集群
以外的 dynatrace 实例的 URL。
- Dynatrace API 令牌
- 具有
metrics.read
和entities.read
权限生成的 API 令牌。请参阅从 Dynatrace 获取 API 密钥和应用密钥。 - 跳过 TLS 验证
- 可选的 如果您需要跳过 TLS 验证,请启用此选项。默认值:false
- 带有 CA 证书
- 可选的 需要验证自签名 TLS 证书。默认值:false。如果启用,您还需要在 CA 证书部分提供相应的证书
- 超时
- 默认为 30 秒。配置插件和 Dynatrace 之间的 HTTP 客户端超时。
使用配置进行数据源配置
可以使用 Grafana 的配置系统使用配置文件来配置数据源。有关配置如何工作以及可以为数据源设置的设置的信息,请参阅配置 Grafana。
apiVersion: 1
datasources:
- name: Dynatrace
type: grafana-dynatrace-datasource
jsonData:
apiType: saas
environmentId: environment Id
secureJsonData:
apiToken: API token
- name: Dynatrace Managed
type: grafana-dynatrace-datasource
jsonData:
apiType: managed
environmentId: environment Id # example: abc99984-3af2-55tt-72kl-0672983gc45
domain: domain # example: yd8888.managed-sprint.dynalabs.io
tlsSkipVerify: false
tlsAuthWithCACert: true
httpClientTimeout: 360
secureJsonData:
apiToken: API token
tlsCACert: |
-----BEGIN CERTIFICATE-----
1221323123213123231231232+g6DAzj/11231
sdsaas==
-----END CERTIFICATE-----
查询数据源
查询编辑器允许您配置4种不同的Dynatrace查询类型。
查询
查询类型可以是指标
、问题
、USQL
、日志
、审计日志
、管理区域
或直接API访问
。
指标查询类型
- 管理区域(可选)
- 选择管理区域以按管理区域过滤结果。
- 指标
- 选择您想查看的指标。要从Dynatrace再次获取指标列表,请点击刷新按钮。
- 聚合
- 选择您想用于特定指标的聚合。单击聚合值以更改聚合类型或单击+按钮以添加另一个聚合。
- 转换
- 您可以在查询编辑器中选择转换。之后,将一些参数输入到所选的转换中。目前,仅支持合并转换。有关合并转换的信息,请参阅合并转换。
- 过滤器
- Dynatrace插件会动态查询每个指标的适当过滤器。
- 要添加过滤器,请点击Dynatrace查询编辑器中
过滤器
标签旁边的+符号,选择您想要过滤的字段,选择您想要使用的运算符,然后选择一个要过滤的值。 - Dynatrace插件允许您创建可以组合在一起创建复杂逻辑比较的
过滤器组
。对于大多数用例,通常不需要过滤器组
。 - 当使用
标签
创建过滤器时,无论选择何种连接词,Dynatrace都会始终使用AND
。Dynatrace不支持OR
过滤器与标签
。 - 别名
- 在使用Dynatrace插件时,您会遇到两种不同类型的别名。第一种是
静态别名
。此类别名的名称在每个查询中都可用,并且以小写字母开头。第二种是动态别名
,它根据您在查询中使用的指标而变化,并且以大写字母开头。 - Dynatrace插件支持几种不同的别名:
指标名称
、聚合
、显示名称
、主机
和描述
。
名称 | 值 |
---|---|
$name | builtin:apps.other.keyUserActions.reportedErrorCount.os |
$aggregation | auto,value |
$displayName | 报告的错误计数(按关键用户行为,操作系统)[移动,自定义] |
- 限制
- 设置结果的限制大小。每个系列都将受此限制。
问题查询类型
- 问题查询类型
- 选择问题查询类型。目前仅支持订阅问题查询类型。有关订阅问题查询类型的信息,请参阅问题API - GET feed。
- 状态过滤器
- 通过状态过滤结果问题。
- 影响过滤器
- 通过影响级别过滤结果问题。
- 严重性过滤器
- 通过严重性级别过滤结果问题。
- 展开详情
- 如果设置,则包含相关事件到响应中。
USQL查询类型
- USQL查询类型
- 选择USQL查询类型。此查询类型使用用户会话API
- USQL查询
- 此区域左侧的工具栏有3个选项
- 还原:将您的查询还原到最后一次保存的查询
- 保存:保存当前查询并将执行查询(Alt+S/Cmd+S/点击)。右侧的切换开关用于启用自动保存。在自动保存模式下,离开查询编辑器时查询将被保存。(例如:点击刷新按钮)
- 添加deeplink字段:当切换时,将把查询中的deeplink字段作为附加数据集返回。然后可以使用转换来进一步处理数据。
记录查询类型
- 查询
- 日志搜索查询。查询必须使用Dynatrace搜索查询语言。示例查询:
log.source="/var/log/syslog" AND (loglevel="error" OR loglevel="warn")
- 排序
- 这定义了如何对结果进行排序。
结果将根据仪表板时间范围自动筛选。
有关更多详细信息和使用限制,请参阅此处的底层API文档。
注意:日志查询类型处于测试阶段。请将任何意外行为报告给Grafana支持团队。底层Dynatrace API是早期采用者版本。API可能以与本插件不兼容的方式发生变化。
审计日志查询类型
- 筛选
- 筛选审计日志。您可以在DynaTrace API文档中指定的筛选查询中输入。示例查询:
eventType("CREATE","UPDATE"),category("CONFIG")
- 排序
- 这定义了如何对结果进行排序。
结果将根据仪表板时间范围自动筛选。
有关更多详细信息和使用限制,请参阅此处的底层API文档。
直接API访问查询类型
: 直接API访问允许查询任何其他dynatrace API端点,但需要使用JSON Path表达式解析数据
- API端点
- 输入以版本开头的API端点部分。示例
API文档 API端点 合成 v2/synthetic/locations
事件 v2/events
- 使用JSONPath解析
- 这是默认选项。当选择时,响应以JSON路径作为列标题返回,这使得解析单个字段变得简单。
- 字段
- 输入要提取的响应中字段的JSON Path
- 类型
- 选择数据应提取的类型。如果使用自动,则类型将自动检测。对于距离当前UNIX毫秒纪元一年之内的数字,字段类型为“时间”。请注意,无法解析为时间的日期将返回值为
nil
。 - 别名
- 选择别名。当输入时,列标题/名称将反映输入的别名。目前不支持模板变量。留空以使用默认值,即JSON路径。
- 加号
- 在字段行条目最右侧,点击加号将添加一个额外的字段。
模板和变量
要添加新的DynaTrace查询变量,请参阅添加查询变量。使用您的DynaTrace数据源作为以下可用查询的数据源
- 查询类型
- 选择查询类型。查询类型将一些数据与某些键或描述符相关联。
查询类型 | 描述 |
---|---|
指标名称 | 返回所有指标名称的列表 |
过滤器键 | 返回所有可能的维度(例如,主机名)列表,这些维度可以用于过滤 |
键的过滤器值 | 返回根据键名或键名模板变量过滤后的值列表 |
问题状态选项 | 返回所有问题状态的列表 |
问题影响选项 | 返回所有受影响的问题区域列表 |
问题严重性选项 | 返回所有问题严重性类型的列表 |
查询编辑器 | 允许您使用查询编辑器配置客户查询,您可以使用它来创建自定义模板变量。查询必须只返回1列。 |
您可以使用它创建自定义模板变量。查询必须只返回1列。 | |
当您的查询返回1列时,请单击应用 按钮。 | |
可选的,原始查询可以返回两个列,分别命名为text 和value ,以便具有不同的显示值 |
- 正则表达式
- (可选) 使用正则表达式过滤掉查询返回的任何值
注意: 多值
和包含所有选项
目前不支持由Dynatrace插件。
创建变量后,您可以在指标
下拉菜单中找到它。有关变量的更多信息,请参阅模板和变量。
导入Dynatrace仪表板
要导入仪表板,请参阅导入仪表板。导入的仪表板可以在配置 > 数据源 > 选择您的Dynatrace数据源 > 选择仪表板选项卡中找到可用的预置仪表板。