如何集成 Dynatrace 和 Jira 以提高可观察性
Rob Jahn
Dynatrace 的技术合作伙伴经理兼 DevOps 宣传专员
本教程详细介绍如何针对在 Dynatrace 监控的环境中自动检测到的问题自动生成新的 Jira 事务。您将学习如何启用 Jira Automation 来创建用于问题管理的双向集成。
Why should you integrate your observability platform with Jira?
The easy, out-of-the-box integration of Dynatrace and Jira cuts down manual work by completely automating the reporting of Dynatrace-detected problems in your monitored environment. It then sends reports directly to your organization's Jira project.
Time
15-minute read. Complete over 2-3 hours.
Audience
You're familiar with how scrum and/or kanban works in Jira.
You have administrator projects permission for all projects on your scrum or kanban board. See Managing project permissions for more information.
You have administration permission for your Dynatrace environment. See Get started with Dynatrace for more information.
You have a basic knowledge of Linux commands.
Prerequisites
You have a Jira account and basic proficiency in Jira. Get started with Jira here
You have a Dynatrace environment - Get a 15-day trial of Dynatrace.
A Linux host is required to run a Dynatrace provided sample application. Follow the installation instructions found in this README for requirements and instructions to install on a virtual machine.
This same Linux host needs to have the Dynatrace OneAgent installed.
概述
本教程取决于几个相互交互的组成部分。在本教程中,您将:
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 Automation 规则,您将需要此 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 云产品的脚本或其他进程进行身份验证。令牌是从您的 Atlassian 帐户生成的。在步骤 6 中执行的 Dynatrace 问题通知配置需要此 Jira API 令牌。
1. 登录 https://id.atlassian.com/manage/api-tokens。
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 的操作。
查看 Atlassian Open DevOps 的更多集成
请访问我们的其他教程,了解 Dynatrace 检测到的问题如何在 Jira Software 中自动创建事务!
分享这篇文章
下一个主题
推荐阅读
将这些资源加入书签,以了解 DevOps 团队的类型,或获取 Atlassian 关于 DevOps 的持续更新。