如何监测 Atlassian 企业级产品的性能?
2019.03.28你知道吗,每天有约有 16 万辆机动车穿越旧金山的金门大桥。
Atlassian 实例很像桥梁:用户每天访问实例数百次,包括实例本身的大小(评论、页面、重新发布等),以及您添加的应用程序,API 调用等。当建造一座桥梁时,要进行测试以确保它能够承受预期的荷载和流量。在开发过程中,我们也需要执行类似的测试,以确保我们的产品能够支持各种级别的使用并为支持每日所需的负载。
因此,您需要定期监控您的实例,为随时变化的流量和其他需求做出调整。要做到这一点,我们需要知道要跟踪哪些指标,为关键阈值创建警报,以及制定何时需要触及警报的计划。这样,您的 Atlassian 产品才能以最佳性能来运行。
此建议旨在帮助您选择最佳的基础架构设置。
收集正确的数据,监控关键指标
我们需要监控两种类型的指标 - 使用情况和基础架构。通过数据分析,可以规划和实施监控。
我们首先要考虑以下几个问题:
.产品的用户数?
.在某个时间段里有多少活跃用户?
.企业的 Confluence 有多少页面?
.Jira 中有多少 issue?
另外,量化产品中的自定义项也很重要 - 例如,已连接到实例的自定义应用程序。
可以通过产品的管理用户界面或数据库跟踪使用情况指标。监控数据如何随着时间的推移而变化,并利用这些趋势来帮助预测使用负载,以满足不断变化的基础架构要求,保持实例的健康。
以下是对 Jira 和 Confluence 进行性能监控时应该被跟踪的一些基本使用指标:
最重要的是,确定任何这些指标的突然峰值。例如,如果您在过去 24 小时内看到问题总数增长了 10%,则需要确定根本原因,最可能的结果是 App 的问题、查询或其他不正确的使用行为。
但是,在您的实例中占用空间的所有未使用数据呢?这可能是最容易被忽视的指标。非活动用户,未使用的配置(如自定义字段和已放弃的项目) - 所有这些都会增加。无论是存档旧项目(添加链接)还是更好地管理自定义字段(添加链接),都有几种策略可以控制未使用的数据。
基础设施
一旦了解了基本使用指标,就应该专注于监控基础架构。用户在产品上执行的每项操作都会增加负载。基础架构指标通常需要第三方工具来跟踪,特别是如果您正在跟踪群集中多个节点的性能(而不是仅仅是单个主机)。以下是您应该跟踪的一些基础架构指标:
趋势和警报:识别模式并做好准备
一但您收集了足够的关于组织使用和基础结构负载的数据,就可以找到有助于您识别以下内容的模式:
.高峰/非高峰时段使用
.增长趋势
只要有可能,请为需要进一步调查的指标设置警报。例如,可以在 5 分钟内打开数据库连接数超过 50 或 JVM 堆空间(例如,Java 使用的 RAM 量)超过可用容量的 80% 时设置警报。确定阈值并密切监控它们,以便始终领先于问题。
制定行动计划
一旦你制定了一个监控策略,确保你有一个行动计划来限制将来可能发生的事故,无论其严重性如何,这一点同样重要。事故的事后分析是从事故中学习并将问题转化为进展的一个很好的框架,特别是对于更严重或再次发生的事故。这可以帮助您了解时间线、事件进展和未来改进的机会。其中一些机会可能包括审核应用程序、实施新的治理方案或围绕 JQL 查询或自定义字段创建等不同操作为用户建立最佳实践或规则。
没有适用于所有企业的标准方案
每个组织的监控策略都会有所不同。因为它可能会根据公司环境,目标和 KPI 等因素而有所不同。
为帮助形成您自己的监控策略,我们发布了参考架构,详细描述了我们如何监控部分数据中心部署。这些参考体系结构不仅基于客户数据,而且基于我们对自己实例的第一手经验。它们是根据我们在自己的生产服务器中发现的各种事件和趋势的分析而形成的。