Dynatrace Grafana 数据源
Dynatrace 数据源插件允许您在 Grafana 中查询和可视化 Dynatrace 指标、问题、审计日志、管理区域、日志,以及使用 USQL。日志查询目前处于测试阶段,因为底层的 Dynatrace API 处于早期采用者发布阶段。
要求
此插件具有以下要求
- 一个 Dynatrace 帐户
- 以下帐户类型之一
- 适用于拥有 Grafana Cloud 免费版、高级版或试用版帐户或拥有 已激活的 Grafana 企业版许可证 的用户。
已知限制
- 模板变量不能进行多选;只支持单选。
- 日志查询目前处于测试阶段,因为底层的 Dynatrace API 处于早期采用者发布阶段。
- 查询管理区域需要
Read configuration
权限。如果您不想使用管理区域过滤器,可以跳过此权限。
安装 Dynatrace 数据源插件
要安装数据源,请参考 安装。
从 Dynatrace 获取 API 密钥
要设置 API 令牌,请参考 Dynatrace API - 令牌和身份验证。
要查询各个服务,您需要将特定权限添加到您的 API 令牌中。
服务 | 所需权限 |
---|---|
指标 | Read metrics 、Read entities 、(可选: v1: Read configuration ) |
问题 | v1: Access problem and event feed, metrics, and topology |
USQL | v1: User sessions |
日志 | 读取日志 |
审计日志 | 读取审计日志 |
管理区域 | v1: Read configuration |
直接 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 允许输入 Dynatrace 实例的 URL,该实例位于SaaS
或托管集群
之外。
- Dynatrace API 令牌
- 使用
metrics.read
和entities.read
权限生成的 API 令牌。请参考 从 Dynatrace 获取 API 密钥和应用程序密钥。 - 跳过 TLS 验证
- 可选 如果您需要跳过 TLS 验证,请启用此选项。默认值为:false
- 使用 CA 证书
- 可选 用于验证自签名 TLS 证书。默认值为:false。如果启用,您还需要在 CA 证书部分提供相应的证书
使用配置进行数据源配置
可以使用配置文件和 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
secureJsonData:
apiToken: API token
tlsCACert: |
-----BEGIN CERTIFICATE-----
1221323123213123231231232+g6DAzj/11231
sdsaas==
-----END CERTIFICATE-----
查询数据源
查询编辑器允许您配置 4 种不同的 Dynatrace 查询类型。
查询
查询类型可以是 Metric
、Problems
、USQL
、Logs
、Audit Logs
、Management Zones
或 Direct API Access
。
指标查询类型
- 管理区域 (可选)
- 选择管理区域以按管理区域过滤结果。
- 指标
- 选择要查看的指标。要再次从 Dynatrace 获取指标列表,请单击 刷新 按钮。
- 聚合
- 选择要用于特定指标的聚合。单击聚合值以更改聚合类型,或单击 + 按钮添加另一个聚合。
- 转换
- 您可以在查询编辑器中选择转换。之后,将一些参数输入到选定的转换中。目前,仅支持合并转换。有关合并转换的信息,请参阅合并转换。
- 过滤器
- Dynatrace 插件会动态地查询每个指标的相应过滤器。
- 要添加过滤器,请点击 Dynatrace 查询编辑器中
过滤器
标签旁边的 + 符号,选择要过滤的字段,选择要使用的运算符,然后选择要过滤的值。 - Dynatrace 插件允许您创建
过滤器组
,您可以将它们组合在一起以创建复杂的逻辑比较。对于大多数用例,过滤器组
是不需要的。 - 在使用
标签
创建过滤器时,无论选择哪个连接词,Dynatrace 都将 始终 使用AND
。Dynatrace 不支持使用标签
的OR
过滤器。 - 别名
- 在使用 Dynatrace 插件时,您会遇到两种不同类型的别名。第一个是
静态别名
。此类型的别名在您构建的每个查询中都可用,并且别名的名称以小写字母开头。第二个是动态别名
,它会根据您在查询中使用的指标而更改,并且别名的名称以大写字母开头。 - Dynatrace 插件支持几种不同的别名:
指标名称
、聚合
、显示名称
、主机
和描述
。
名称 | 值 |
---|---|
$name | builtin:apps.other.keyUserActions.reportedErrorCount.os |
$aggregation | auto,value |
$displayName | 报告的错误计数(按主要用户操作,操作系统)[移动,自定义] |
- 限制
- 设置结果大小的限制。每个序列将按此数量限制。
问题查询类型
- 问题查询类型
- 选择一个问题查询类型。目前,仅支持馈送问题查询类型。有关馈送问题查询类型的信息,请参阅问题 API - 获取馈送。
- 状态过滤器
- 按状态过滤结果问题。
- 影响过滤器
- 按影响级别过滤结果问题。
- 严重性过滤器
- 按严重性级别过滤结果问题。
- 展开详细信息
- 如果设置,请将相关事件包含在响应中。
USQL 查询类型
- USQL 查询类型
- 选择 USQL 查询类型。此查询类型使用用户会话 API
- USQL 查询
- 此区域左侧的工具栏有 3 个选项
- 恢复:将您的查询恢复到最新的保存的查询
- 保存:保存当前查询,并将执行查询(Alt+S/Cmd+S/单击)。右侧的切换开关用于启用自动保存。在自动保存模式下,查询将在您离开查询编辑器时立即保存。(例如:点击刷新按钮)
- 添加深度链接字段:启用时,将在查询中返回深度链接字段作为附加数据集。然后可以使用转换来进一步处理数据。
日志查询类型
- 查询
- 日志搜索查询。查询必须使用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 路径
- 类型
- 选择应以何种类型提取数据。如果使用自动,则类型将自动检测。对于距当前 UNIX 毫秒纪元 一年内的数字,该字段将为“时间”类型。请注意,无法解析为时间的将以
nil
的值为返回。 - 别名
- 选择别名。输入后,列标题/名称将反映输入的别名。目前不支持模板变量。留空以使用默认值,即 JSON 路径。
- 加号
- 在字段行条目的最右边,点击加号将添加一个额外的字段。
模板和变量
要添加新的 Dynatrace 查询变量,请参阅添加查询变量。将您的 Dynatrace 数据源用作以下可用查询的数据源
- 查询类型
- 选择查询类型。查询类型将某些数据与某些键或描述符相关联。
查询类型 | 描述 |
---|---|
指标名称 | 返回所有指标名称的列表 |
过滤器键 | 返回所有可用于过滤的可能维度(例如主机名)的列表 |
键的过滤器值 | 返回按键名或键名模板变量过滤的值的列表 |
问题状态选项 | 返回所有问题状态的列表 |
问题影响选项 | 返回所有受影响区域的列表 |
问题严重性选项 | 返回所有问题严重性类型的列表 |
查询编辑器 | 允许您使用查询编辑器配置客户查询,您可以使用该查询编辑器 |
创建自定义模板变量。查询必须只返回 1 列。 | |
当您的查询返回 1 列时,点击 应用 按钮。 | |
可选地,原始查询可以返回两列,分别命名为 text 和 value ,以便为值提供不同的显示值 |
- 正则表达式
- (可选) 使用正则表达式过滤掉查询中返回的任何值
注意:Dynatrace 插件目前不支持 多值
和 包含所有选项
。
创建变量后,您可以在 指标
下拉菜单中找到它。有关变量的更多信息,请参阅模板和变量。
导入 Dynatrace 的仪表板
要导入仪表板,请参阅导入仪表板。导入的仪表板可以在配置>数据源>选择您的 Dynatrace 数据源>选择仪表板选项卡中找到,以查看可用的预制仪表板。