菜单
文档面包屑箭头 插件面包屑箭头 Grafana 的 Dynatrace 数据源

Grafana 的 Dynatrace 数据源

Dynatrace 数据源插件允许您在 Grafana 内查询和可视化 Dynatrace 指标、问题、审计日志、管理区域、日志,并使用 USQL。由于底层的 Dynatrace API 仍是早期采用者版本,日志查询目前处于 Beta 阶段。

要求

此插件有以下要求

已知限制

  • 模板变量不能多选;仅支持单选。
  • 由于底层的 Dynatrace API 仍是早期采用者版本,日志查询目前处于 Beta 阶段。
  • 查询管理区域需要 Read configuration 范围权限。如果您不想使用管理区域过滤器,可以跳过此范围权限。

安装 Dynatrace 数据源插件

要安装此数据源,请参阅安装

从 Dynatrace 获取 API 密钥

要设置 API 令牌,请参阅 Dynatrace API - 令牌和身份验证

要查询各个服务,您需要为您的 API 令牌添加特定的范围权限。

服务所需范围权限
指标Read metricsRead entities、(可选:v1: Read configuration
问题v1: Access problem and event feed, metrics, and topology
USQLv1: User sessions
日志读取日志
审计日志读取审计日志
管理区域v1: Read configuration
直接 API 访问请参阅 Dynatrace API 文档以了解所需的范围权限

在 Grafana 中配置数据源

通过填写以下字段添加数据源

名称
您想应用于 Dynatrace 数据源的名称。
Dynatrace API 类型
您正在连接的 Dynatrace 实例类型。有 3 个选项
  1. SaaS
  2. 托管集群
  3. 原始 URL
环境 ID
在 SaaS 示例 yfc55578.live.dynatrace.com 中,您的环境 ID 是 yfc55578。在 Managed 示例 yd8888.managed-sprint.dynalabs.io/e/abc99984-3af2-55tt-72kl-0672983gc45 中,您的环境 ID 是 abc99984-3af2-55tt-72kl-0672983gc45,您的域是 yd8888.managed-sprint.dynalabs.io

saas-config managed-config

原始 URL
您的自定义 Dynatrace 实例的 URL,例如 https://yfc55578.live.dynatrace.com。原始 URL 允许输入不属于 SaaSManaged Cluster 类型的 Dynatrace 实例的 URL。

url-config

Dynatrace API 令牌
使用 metrics.readentities.read 权限生成的 API 令牌。请参阅从 Dynatrace 获取 API 密钥和应用程序密钥
跳过 TLS 验证
可选 如果您需要跳过 TLS 验证,请启用此选项。默认值:false
使用 CA 证书
可选 用于验证自签名 TLS 证书。默认值:false。如果启用,您还需要在 CA 证书部分提供相应的证书。
超时
默认为 30 秒。配置插件和 Dynatrace 之间的 HTTP 客户端超时。
异步模式
如果您在 Dynatrace 中有许多不同的指标,异步模式会将这些指标的获取移出关键请求路径,并在后台获取。这可以极大地提高性能。

使用 Provisioning 配置数据源

可以使用配置文件通过 Grafana 的 Provisioning 系统配置数据源。要详细了解配置的工作原理,包括您可以为数据源设置的所有设置,请参阅Provisioning Grafana

yaml
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 查询。

查询

查询类型可以是 Metric(指标)、Problems(问题)、USQLLogs(日志)、Audit Logs(审计日志)、Management Zones(管理区域)或 Direct API Access(直接 API 访问)。

指标查询类型

管理区域(可选)
选择管理区域以按管理区域过滤结果。
指标
选择您想查看的指标。要再次从 Dynatrace 获取指标列表,请点击刷新按钮。
聚合
选择您想用于特定指标的聚合方式。点击聚合值可以更改聚合类型,或者点击 + 按钮添加另一个聚合。
转换
您可以在查询编辑器中选择转换。然后,将一些参数输入选定的转换。目前,仅支持合并转换。有关合并转换的信息,请参阅 合并转换
过滤器
Dynatrace 插件会动态查询每个指标对应的过滤器。
要添加过滤器,请点击 Dynatrace 查询编辑器上 Filters 标签旁边的 + 符号,选择您想过滤的字段,选择您想使用的运算符,然后选择要过滤的值。
Dynatrace 插件允许您创建 Filter Groups(过滤器组),您可以将它们组合起来创建复杂的逻辑比较。对于大多数用例,不需要 Filter Groups
使用 Tags(标签)创建过滤器时,无论选择何种连接词,Dynatrace 始终使用 AND。Dynatrace 不支持带有 TagsOR 过滤器。
别名
使用 Dynatrace 插件时,您会遇到两种不同类型的别名。第一种是 static alias(静态别名)。这种类型的别名在您构建的每个查询中都可用,其名称以小写字母开头。第二种是 dynamic alias(动态别名),它根据您在查询中使用的指标而变化,其名称以大写字母开头。
Dynatrace 插件支持几种不同的别名:Metric Names(指标名称)、Aggregation(聚合)、Display Name(显示名称)、Host(主机)和 Description(描述)。
名称
$namebuiltin:apps.other.keyUserActions.reportedErrorCount.os
$aggregationauto,value
$displayName报告的错误计数(按关键用户操作、OS)[移动端、自定义]
限制
设置结果大小的限制。每个系列将受此数量限制。

问题查询类型

问题查询类型
选择一个问题查询类型。目前仅支持 Feed 问题查询类型。有关 Feed 问题查询类型的信息,请参阅 Problems API - GET feed
状态过滤器
按状态过滤结果问题。
影响过滤器
按影响级别过滤结果问题。
严重级别过滤器
按严重级别过滤结果问题。
展开详情
如果设置,响应中包含相关事件。

USQL 查询类型

USQL 查询类型
选择 USQL 查询类型。此查询类型使用 用户会话 API
USQL 查询
此区域左侧的工具栏有 3 个选项
  1. 恢复:将您的查询恢复到最近保存的查询
  2. 保存:保存当前查询并执行查询(Alt+S/Cmd+S/点击)。右侧的切换开关用于启用自动保存。在自动保存模式下,当您离开查询编辑器(即:点击刷新按钮)时,查询将立即保存。
  3. 添加 Deeplink 字段:启用后,将在查询中以附加数据集的形式返回 Deeplink 字段。然后可以使用转换进一步处理数据。

日志查询类型

查询
日志搜索查询。查询必须使用 Dynatrace 搜索查询语言。示例查询:log.source="/var/log/syslog" AND (loglevel="error" OR loglevel="warn")
排序
这定义了如何对结果进行排序。

结果将根据仪表盘的时间范围自动过滤。

有关更多详细信息和限制,请参阅底层的 API 文档此处

注意:日志查询类型处于 Beta 阶段。请向 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 paths 作为列头返回,方便根据需要解析出单个字段。
字段
输入要在响应中提取的字段的 JSON Path
类型
选择数据应提取为的类型。如果使用 auto(自动),类型将自动检测。对于在当前 UNIX 毫秒纪元一年内的数字,字段类型将是“时间”。请注意,未能解析为时间的时间将返回 nil 值。
别名
选择别名。输入后,列头/名称将反映输入的别名。目前不支持模板变量。留空则使用默认值,即 JSON path。
加号
在字段行条目的最右侧,点击加号将添加一个附加字段。

模板和变量

要添加新的 Dynatrace 查询变量,请参阅添加查询变量。使用您的 Dynatrace 数据源作为以下可用查询的数据源

查询类型
选择查询类型。查询类型将某些数据与某些键或描述符关联。
查询类型描述
指标名称返回所有指标名称列表
过滤器键返回所有可用于过滤的可能维度(例如 主机名)列表
特定键的过滤器值按键名称或键名称模板变量返回过滤后的值列表
问题状态选项返回所有问题状态列表
问题影响选项返回所有问题影响区域列表
问题严重级别选项返回所有问题严重级别类型列表
查询编辑器允许您使用查询编辑器配置自定义查询,您可以使用它
来创建一个自定义模板变量。查询必须只返回 1 列。
当您的查询返回 1 列时,点击 Apply(应用)按钮。
可选地,原始查询可以返回名为 textvalue 的两列,以便为值设置不同的显示值
Regex
(可选)使用正则表达式过滤掉查询返回的任何值

注意:Dynatrace 插件目前不支持 Multi-value(多值)和 Include All option(包含所有选项)。

创建变量后,您可以在 Metric 下拉菜单中找到它。有关变量的更多信息,请参阅模板和变量

导入 Dynatrace 仪表盘

要导入仪表盘,请参阅导入仪表盘。导入的仪表盘可在 Configuration(配置)> Data Sources(数据源)> 选择您的 Dynatrace 数据源 > 选择 Dashboards(仪表盘)选项卡下找到,以查看可用的预建仪表盘。

充分利用插件