菜单
文档breadcrumb arrow 插件breadcrumb arrow 适用于 Grafana 的 AppDynamics 数据源

适用于 Grafana 的 AppDynamics 数据源

AppDynamics 数据源插件使您能够在 Grafana 中查询和可视化 AppDynamics 指标和分析数据。

要求

本插件有以下要求

已知限制

  • 指标路径名称不能包含您选择的分隔符。有关更多信息,请参阅查询指标数据源

安装插件

  1. 导航到AppDynamics 插件主页

  2. 在左侧菜单中,点击安装插件按钮。

    • 如果您没有看到安装插件按钮,请确保您已登录到拥有有效 Enterprise Plugins 订阅的 Grafana.com 帐户。

    显示安装选项卡。

满足兼容性要求

对于此插件,没有兼容性要求。

从 AppDynamics 获取凭据

您可以使用基本身份验证(用户名和密码)或 API 令牌进行身份验证。

验证插件是否已安装

  1. 在 Grafana Enterprise 中,从左侧菜单导航到配置 > 数据源
  2. 从右上角,点击添加数据源按钮。
  3. 在搜索字段中搜索 AppDynamics,并将鼠标悬停在 AppDynamics 搜索结果上。
  4. 点击 AppDynamics 的选择按钮。
    • 如果您可以点击选择按钮,则表示已安装。
    • 如果按钮丢失或禁用,则表示插件未安装。请检查您的 Grafana Enterprise 许可是否有效,然后重新安装插件。如果您仍然需要帮助,请联系 Grafana Labs

配置 AppDynamics 指标数据源

您可以在 AppDynamics 中为数据源创建角色和用户,或使用 API 客户端设置身份验证

在 AppDynamics 中为数据源创建角色和用户

数据源需要对帐户应用程序数据库分析具有查看权限。

如果您不想使用现有用户,请创建一个用户

  1. 导航到 AppDynamics 管理设置。
  2. 角色选项卡中,选择 + 按钮创建新角色,例如 grafana_readonly。将显示创建角色部分。
  3. 帐户选项卡中,添加权限查看业务流程
  4. 应用程序选项卡中,勾选查看框,以允许 Grafana 查看应用程序数据。
  5. 数据库选项卡中,勾选查看框,以允许 Grafana 查看数据库数据
  6. 分析选项卡中,勾选可以查看所有应用程序的数据框,以允许 Grafana 查看应用程序分析数据
  7. 在管理页面的用户选项卡中,创建一个新用户,例如 grafana。将新用户(或用户所属的组)分配给您刚刚创建的角色(例如 grafana_readonly)。

使用 API 客户端设置身份验证

  1. 作为具有管理权限的用户,登录 AppDynamics Controller UI:https://company.saas.appdynamics.com/controller,其中 company 是您公司的名称。
  2. 点击齿轮图标,选择管理
  3. 点击API 客户端选项卡。
  4. 点击创建按钮创建新的 API 客户端。
  5. 为 API 客户端添加名称和描述,然后生成客户端密钥。
  6. 在 AppDynamics 中为数据源创建角色和用户步骤中创建的角色添加到新的 API 客户端。
  7. 客户端名称字段中的值用于数据源配置中的客户端名称
  8. 将您的公司/域名用于客户端域中的值。例如,参照第 1 点:客户端域的值应为 company
  9. 输入步骤 4 中生成的密钥作为客户端密钥

配置指标数据源

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

基本字段

字段描述
名称此特定 AppDynamics 数据源的名称。
URLAppDynamics 的托管位置,例如 https://moria.saas.appdynamics.com
访问访问模式控制如何处理对数据源的请求。如果没有另作说明,应首选服务器模式。

指标身份验证字段

字段描述
基本身份验证输入 AppDynamics 用户名和密码。
TLS 客户端身份验证使用传输层安全协议进行身份验证的内置选项。
跳过 TLS 验证启用以跳过 TLS 验证。
包含凭据启用此选项可在跨站点请求中发送凭据,例如 cookies 或 auth header。
包含 CA 证书启用以验证自签名 TLS 证书。
转发 OAuth 身份转发登录 Grafana 的 OAuth 用户的身份,适用于 Grafana 和数据源使用相同 OAuth 提供商的情况。
客户端名称使用 API 客户端设置身份验证.
客户端域使用 API 客户端设置身份验证.
客户端密钥使用 API 客户端设置身份验证.

自定义 HTTP 头部通过 Grafana 的 Provisioning 系统管理的数据源可以配置为向发往该数据源的所有请求添加 HTTP 头部。头部名称在 jsonData 字段中配置,头部值应在 secureJsonData 中配置。

分析身份验证字段

与大多数在 Controller 上提供的 AppDynamics REST API 不同,您通过访问 AppDynamics 平台中的 Events Service 实例来访问 Analytics Events API。由于此划分,分析的身份验证独立于指标。

AppDynamics 分析

字段描述
分析 API URLSaaS 或本地部署的分析事件服务数据存储端点
分析 API 密钥使用具有所需分析权限的 API 密钥设置身份验证
全局帐户名称全局帐户名称,如Controller UI 许可页面所示。

使用 Provisioning 配置数据源

可以使用配置文件通过 Grafana 的 Provisioning 系统配置数据源。您可以在Provisioning 文档页面上阅读更多信息

以下是使用基本身份验证的此数据源的一些 Provisioning 示例

yaml
apiVersion: 1
datasources:
  - name: AppDynamics
    type: dlopes7-appdynamics-datasource
    basicAuth: true
    basicAuthUser: Auth Username
    url: https://abcdef12345.saas.appdynamics.com
    secureJsonData:
      basicAuthPassword: Auth Password

以下是使用 API 密钥 Provisioning 指标和分析数据的示例。

注意:如果您同时配置了指标 API 密钥和基本身份验证,则使用 API 密钥。

yaml
apiVersion: 1
datasources:
  - name: AppDynamics
    type: dlopes7-appdynamics-datasource
    jsonData:
      analyticsURL: https://analytics.api.appdynamics.com
      globalAccountName: customer1_abcdef-123456-78910
    secureJsonData:
      apiKey: Metrics Api Key
      analyticsAPIKey: Analytics API Key

查询指标数据源

在查询类型下拉菜单中,点击指标。查询编辑器允许您查询 AppDynamics 应用程序指标。

字段描述
应用程序AppDynamics 应用程序名称
指标
图例完整路径自定义中选择,详细信息请参阅此处
单个数据点(汇总)要获取最新行,请设置为 true
分隔符选择用于影响指标路径如何分词的分隔符。

指标图例键

图例键的默认值可能相当长,但此格式可以自定义。

如果查询用于您看不到图例键的 singlestat 或其他面板,请点击显示元数据选项以查看查询的图例键(也称为别名)。

图例下拉菜单有几个选项:完整路径自定义

  • 完整路径:图例键是完整的指标路径。例如:Overall Application Performance|Average Response Time (ms)

  • :图例键由从指标路径中选择的段组成,段索引从 1 开始。例如,对于指标路径 Errors|mywebsite|Error|Errors per Minute,指定 2, 4 作为段,返回 mywebsite|Errors per minute

  • 自定义:通过将文本与以下别名模式结合来创建自定义图例,以便混合指标元数据

    • {{app}} 返回应用程序名称。
    • {{n}} 返回指标路径中的第 n 个段。

    例如,指标路径 Overall Application Performance|Average Response Time (ms) 和自定义图例 {{app}} MetricPart2: {{2}} 返回 App: myApp MetricPart2: Average Response Time (ms)

查询分析数据源

在查询类型列表中,点击分析。查询编辑器允许您使用 ADQL 查询 AppDynamics 分析数据。

当您输入 ADQL 查询时,查询编辑器将提供字段、表和模板变量的建议。

分析查询示例

sql
SELECT distinct (transactionName), count(*) FROM transactions WHERE transactionName IN (${transactionName:doublequote})

模板和变量

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

查询描述
应用程序所有应用程序
AppName.Tiers指定应用程序名称的所有层级
AppName.TierName.BusinessTransactions指定层级的所有业务事务
AppName.TierName.Nodes指定层级的所有节点
AppName.Path.<任何指标路径>可以指定任何指标路径
SELECT from 分析 ADQL 查询

创建变量后,您可以使用变量语法在 AppDynamics 查询中使用它。有关变量的更多信息,请参阅模板和变量

注意:Metrics 查询不支持多值变量。如果在指标路径中找到多值变量,它们将被替换为 *

导入 AppDynamics 仪表盘

按照这些说明导入仪表盘。导入的仪表盘可以在配置 > 数据源 > 选择您的 AppDynamics 数据源 > 选择仪表盘选项卡中找到,以查看可用的预制仪表盘。

了解更多