如何集成 Dynatrace 和 Jira 以提高可观察性

按 Rob Jahn、Dynatrace 技术合作伙伴经理兼 DevOps 布道师
本教程详细介绍如何针对在 Dynatrace 监控的环境中自动检测到的问题自动生成新的 Jira 事务。您将学习如何启用 Jira Automation 来创建用于问题管理的双向集成。
为什么要将自己的可观察性平台与 Jira 集成?
Dynatrace 和 Jira 简单、开箱即用的集成可以完全自动报告受监控环境中 DynaTrace 检测到的问题,从而可减少手动工作。然后,它将报告直接发送到组织的 Jira 项目。
时间
15 分钟阅读。在 2-3 个小时内完成。
观众
熟悉 Scrum 和/或看板在 Jira 中的工作方式。
拥有 Scrum 或看板上所有项目的管理员项目权限。有关更多信息,请参阅管理项目权限。
拥有 Dynatrace 环境的管理权限。有关更多信息,请参阅 Dynatrace 入门。
对 Linux 命令有基本的了解。
先决条件
您拥有 Jira 帐户并基本熟悉 Jira。单击此处开始使用 Jira
您已拥有 Dynatrace 环境 - 获取 Dynatrace 的 15 天免费试用。
运行 Dynatrace 提供的示例应用需要 Linux 主机。有关在虚拟机上安装的要求和说明,请按照本自述文件中的安装说明进行操作。
该 Linux 主机需要安装 Dynatrace OneAgent。
想了解更多?
有关在 Jira 中使用冲刺的更多信息,请参阅冲刺教程。
有疑问?咨询 Atlassian 社区。
概述
本教程取决于几个相互交互的组成部分。在本教程中,您将:
1. 配置 Jira Automaton 以创建 Dynatrace 问题卡片评论,其中包含返回 Jira 事务的 URL。
2. 配置 Dynatrace 以将问题推送给 Jira。
3. 在示例应用中触发问题,然后查看 Dynatrace 如何检测问题并自动创建 Jira 事务。
4. 在 Dynatrace 发布页面上配置 Jira 事务查询。
5. 清理您的环境。
此图显示了本教程的组成部分,以及它们之间的基本交互。

1. 使用 Dynatrace 监控应用 — 在本教程中,Dynatrace 将从运行示例应用的主机上安装的 Dynatrace 代理收集指标。所有数据都集中在中央 Dynatrace 租户中,该租户还提供用于管理以及由 AI 提供支持的问题检测功能的 Web 界面。
2. 具有详细上下文的问题通知 — Dynatrace 的 AI 引擎 Davis 使用映射到统一实体模型的高保真指标、轨迹、日志和真实用户数据。它使用 Davis 的确定性 AI 来揭示问题的确切根源。Davis 不仅能找到确切的根本原因,而且可以立即提供有价值的上下文。您将知道问题是资源瓶颈还是部署变更的结果,甚至是背后的原因。您可以重现问题以充分了解问题发生的原因以及如何解决问题。
3. 自动创建 Jira 事务 — Dynatrace 和 Jira 集成会自动为在 Dynatrace 环境中自动检测到的所有新问题创建事务。
4. Jira Automation 将更新 Dynatrace — Jira Automation 是一项“无代码”功能,只需单击几下即可轻松构建规则。对 Dynatrace API 的网络请求使用 Dynatrace 问题 ID 来更新 Dynatrace 问题卡片评论。
5. 解决问题并关闭 Jira 事务
设置
要完成本教程,在学习教程用例之前,需要执行几个设置步骤。
步骤 1:确保应用受 Dynatrace 监控
1.提供的示例应用应可在浏览器中查看。主页类似以下内容:

2. 在 Dynatrace 中,使用左侧菜单,然后单击交易和服务选项以查看正在运行的服务。您应能看到包括前端和订单服务在内的若干服务正在运行。

3. 单击前端服务。在服务页面上,单击查看动态请求按钮。

应有针对此服务的请求,如下所示。

步骤 2:创建 Dynatrace API 令牌
您需要有效的 API 令牌以便进行身份验证,从而使用 Dynatrace API。Dynatrace API 属于细粒度 API,因此您需要为令牌分配适当的权限。对于将在第 4 步中配置的 Jira 自动化规则,您将需要此 Dynatrace API 令牌。
1. 在 Dynatrace 的左侧菜单中,单击设置选项。

2. 在设置子菜单中,展开集成子菜单,然后选择 Dynatrace API 选项。

3. 在 Dynatrace API 页面上,选择生成令牌按钮。
4. 提供令牌名称,例如 Jira 教程。
5. 展开 API v1 部分并启用访问问题源、指标和拓扑范围。关闭所有其他范围。

6. 单击生成按钮。
7. 重要提示:您需将生成的令牌保存到安全的地方。在本教程的后续章节中,您将需要此值,且无法再次查看它。使用复制按钮确保获得完整的字符串。
8. 将令牌保存到安全位置后,单击关闭按钮。
步骤 3:创建一个 Jira 项目
在本教程中,有一个专门的 Jira 项目可以让您在完成后将其删除。每个 Jira 项目都有一个名称和一个项目密钥。第 6 步中的“Dynatrace 问题通知”配置需要 Jira 项目密钥。
1. 在您的 Jira 帐户中,在项目菜单中选择创建项目选项。
2. 输入名称“Dynatrace 教程”,选择看板模板,然后单击创建按钮。

3. 重要提示:请务必记下 Jira 项目关键字。在 Dynatrace 配置中,您将需要该值。在上述示例中,关键字为“DT”。
步骤 4:创建 Jira Automation 规则
此步骤将设置一个自动化规则,该规则会针对所有新的 Jira 评论触发。一旦触发,Jira Automation 规则会指示 Dynatrace 问题 API 将 Jira 评论中的文本添加到 Dynatrace 问题中。
1. 在左侧项目菜单中,选择项目设置。
2. 在左侧项目设置菜单中,选择自动化。
3。在“自动化”页面上,单击顶部的规则选项卡以进入项目规则。

4. 单击右上角的创建规则按钮。
5. 在新建触发器页面上,选择名为事务已评论的触发器,然后在下一页上选择保存。

6. 在添加组件页面规则中,单击新建操作选项。

7. 在新建操作页面上,选择发送 Web 请求通知选项。

8. 输入下面的详细信息。完成后的外观示例如下:

Webhook URL — 这是指向 Dynatrace API 端点的 URL。您需要将此字符串中的 [YOUR-ENVIRONMENT-ID] 替换为您的环境。请参阅来自 Dynatrace 环境的 URL 以获取此值。
https://[YOUR-ENVIRONMENT]/api/v1/problem/details/{{issue.description.match(".*pid=(.*)")}}/comments技术说明:Jira Match 智能值表达式将通过事务描述中的问题 URL 提取 Dynatrace 问题或 PID。regex101 等网站可以帮助您构建这些表达式。

标头 — 它包含您先前创建的 Dynatrace API 令牌值。对于标头名称,请使用 Authorization 值。对于标头值,请使用此字符串并替换为令牌值:Api-Token [YOUR-DYNATRACE-API-TOKEN]。注意:您需要在令牌字符串之前包含 Api-Token 并用一个空格将其隔开。
HTTP 方法 — 选择 POST 选项。
Webhook 请求体 - 在下拉列表中,选择“自定义请求体”并粘贴完整的 JSON 请求体。
{"message": "Opened Jira Issue: [{{issue.key}}]({{issue.url}})","context": "Jira"}*** 专业提示:点击以下链接了解有关智能值的更多信息:https://support.atlassian.com/jira-software-cloud/docs/smart-values-general/
9. 单击保存按钮。
10. 在下一页上,输入“创建事务时向 Dynatrace 发送评论”等名称,然后单击打开按钮。

11. 保存后,单击右上角的返回列表链接,您应能看到新规则已启用。

步骤 5:创建 Jira API 令牌
Atlassian API 令牌可用于完成脚本或其他流程与 Atlassian Cloud 产品的身份验证。令牌是从您的 Atlassian 帐户生成的。在第 6 步中执行的 Dynatrace 问题通知配置需要此 Jira API 令牌。
2. 单击“创建 API 令牌”按钮。
3. 在显示的对话框中,为您的令牌输入一个令人印象深刻且简洁的标签(例如“Dynatrace 教程”),然后单击创建。
4. 重要提示:单击“复制”按钮,然后将 API 令牌粘贴并保存在安全的地方,因为在本教程的后续章节中您需要使用该值。保存的 API 令牌类似以下内容。

步骤 6:配置 Dynatrace 问题通知规则
通过 Dynatrace 和 Jira 集成,系统会针对在 Dynatrace 环境中自动检测到的所有新问题自动生成事务。完成后的外观示例如下:

1. 在 Dynatrace 的左侧菜单中,单击设置选项。

2. 在设置子菜单中,展开“集成”子菜单,然后选择问题通知选项。

3. 选择设置通知。
4. 从可用通知类型中选择“Jira”。
5. 配置通知:
显示名称 — 输入“Jira 教程”之类的值
Jira 端点 URI – 更新此值以反映您的 JIRA 帐户
https://[YOUR-JIRA-ACCOUNT].atlassian.net/rest/api/2/用户名 — 用于创建 Atlassian API 令牌的用户 ID
API 令牌 — Atlassian API 令牌字符串
项目密钥 — 创建和跟踪新事务的 Jira 项目的关键字(而非项目名称)。如果您在上述示例中使用了同一关键字,则该值为“DT”
摘要 — 保留为默认值
问题描述 - 保留为默认值
*** 专业提示 - 配置页面的可用占位符区域列出了可用于此集成功能的占位符。占位符将自动替换为与问题相关的信息。
6. 选择发送测试通知以确保您的 Jira 集成正常运行。您想查看:

在 Jira 中,测试性事务类似以下内容:

7. 单击保存按钮。
了解更多
在 Atlassian Marketplace 中获取适用于 Jira 的 Dynatrace 问题集成插件。
在我们的 Dynatrace 社区提问(并提供建议)。
在此处了解有关 Dynatrace + Atlassian 功能的更多信息。
点击此处了解有关 Dynatrace 与 Atlassian 集成的更多信息(以及如何让工作更智能,而不是更困难)。
在此 Dynatrace Performance Clinic 中,查看 Atlassian、Dynatrace 和 KepTN 的实际应用。
请访问我们的其他教程,了解 Dynatrace 检测到的问题如何在 Jira Software 中自动创建事务!