本文概述
- Uptrends
- Dotcom-Monitor
- Amazon CloudWatch(适用于AWS)
- Rigor
- Assertible
- BlazeMeter
- AppDynamics
- New Relic
- API Fortress
- Traceview
- RapidSpike
- AgilityWorks
- API Science
甚至更糟的情况是一个或多个子系统发生故障并且技术团队没有意识到这一点。在银行, 股票交易等重要行业中, 停机时间每分钟可能造成数百万美元(或更多)的损失, 而在其他行业中, 则可能会造成致命的客户强烈反对。几乎到了这样的地步:在你的客户面前了解错误不再只是聪明了;这是强制性的。
API, API, 无处不在
这是一个由API主导的世界, 你每天可能会多次听到并使用该术语。如果你是任何类型的服务提供商, 那么你都有其他人依赖的API, 并且你需要使用一些API来保持业务正常运行(Google Maps API, 支付API等)。但这只是冰山一角。对于计算机编程领域的人来说, 应用程序编程接口(API)是一个广义术语, 不仅涉及地图和购买。
如果没有意识到, 软件系统中的所有内容(实际上是所有内容)都是API或公开API。
文章图片
在继续监视API之前, 让我们花点时间来了解什么是API, 以及它涵盖的软件系统的广泛范围。这将帮助你减少选择, 并更好地决定要覆盖的API, 因此, 哪种工具将更适合你的独特用例。
什么是API?
让我们先从标准教科书定义开始, 然后再使用日常业务词汇进行更深入的研究。如果我们向Wikipedia询问有关API的信息, 它的含义如下:
在计算机编程中, 应用程序编程接口(API)是一组子例程定义, 通信协议以及用于构建软件的工具。一般而言, 它是一组明确定义的各个组件之间的通信方法。好的API通过提供所有构件, 使程序员更容易开发计算机程序。 API可以用于基于Web的系统, 操作系统, 数据库系统, 计算机硬件或软件库。第二行是必不可少的(强调是我的)。不仅仅是将网络服务视为API。操作系统调用, 数据库系统交互, 硬件信号, 软件库(其他代码可以重用的代码)都属于API的范畴, 因为它们都提供了定义明确, 易于理解的接口和协议集。
现在, 在任何一天, 任何这些API都可以停止工作。也许硬盘达到了每秒输入/输出操作的极限, 或者SSL证书过期, 或者正在使用的最新版本的代码中都存在一个未发现的错误-所有这些情况都需要在(最好是之前)持续监视并立即采取措施。发生问题。
适当地, 本文将建议一些工具, 这些工具可以在所有领域监视你的应用程序, 而不仅仅是两个系统之间的数据交换。
API停机成本
很难量化停机时间造成的损失, 但Gartner在2014年发布了一项研究, 得出的数字为每小时30万美元。当然, 这是一个中等的平均值。考虑一下在黑色星期五折扣季节期间因停机一小时而造成的业务损失。有关故障或无法正常使用的API如何杀死企业或员工精神的恐怖故事, 请参见此处和此处。
文章图片
虽然API停机的业务方面不可低估, 但从长远来看, 还有一个潜在的潜在损失, 即团队士气。开发人员喜欢系统中的自动化和可靠性(实际上, 我们都做到了;想象你的邮件服务器一天要关闭几次!), 停机会破坏他们的代码并使他们沮丧。如果这些问题持续存在, 问题将很快开始影响其他业务功能(销售和市场营销), 这些业务功能将使你厌倦了不断在客户面前丢脸的情况。
我已经密切观察到两家公司因内部监控系统不佳而濒临灭亡, 而且我也无心再见。 ????
现在, 停机时间无法消除。在现实世界中, 任何时候都可能出错。但是, 通过适当的监控系统, 我们可以及时发现错误, 有时甚至在客户之前就已经知道!
考虑到这一点, 让我们看一下市场上一些最佳的API监视工具。
API监控解决方案
- Uptrends
- Dotcom-Monitor
- Amazon CloudWatch(适用于AWS)
- Rigor
- Assertible
- BlazeMeter
- AppDynamics
- New Relic
- API Fortress
- Traceview
- RapidSpike
- AgilityWorks
- API Science
文章图片
Uptrends的一项独特功能是基于浏览器的测试。该服务可启动实际的不同浏览器来运行你的应用程序/网站, 并提供有关其运行情况的详细指标。
但是响应时间和指标只是故事的一半。Uptrends还会为你提供详细的资产绩效报告, 因此你可以确切地知道造成瓶颈的原因。遇到错误时, 服务会截取屏幕截图并将其发送给你, 这样你就可以在等式的另一端确切地看到它的感觉。 ????
总而言之, Uptrends是一项可靠而令人愉快的服务, 受到许多知名企业的信任。
Dotcom-Monitor 通过Dotcom-Monitor平台, 你可以使用HTTP / S任务配置多任务监视器设备。这样, 你就可以监视基于OAuth 2.0的Web API的可用性, 性能和正确的响应。通过复制一个或多个最终客户端请求并监视SOAP Web服务, Dotcom-Monitor代理验证了可以在API和Web应用程序之间正确交换数据。
文章图片
代理检测到错误后, 便会根据设备的过滤器进行检查。如果未滤除错误, 则设备将发出警报。你可以配置多个警报组, 并设置自定义警报计划和升级选项。报告以CSV, PDF和TXT格式提供。它们显示了多个有用的指标, 例如响应时间, 停机时间和按位置的平均性能。
Dotcom-Monitor的定价计划每月起价为1.99美元, 并提供Web服务监视以及对HTTP / S, Web API SOAP / REST, SSL认证检查, 响应验证, 即时警报和30个监视位置的支持, 以及其他功能。
Amazon CloudWatch(适用于AWS) 如果你在AWS上拥有基础架构, 则不能充分推荐CloudWatch。除了应用程序监视之外, CloudWatch还具有基础结构监视功能, 可帮助你的DevOps团队在晚上安然入睡。
文章图片
图片来源:aws.amazon.com
根据官方描述, CloudWatch提供:
- 应用监控
- 系统范围内的可见性
- 资源优化
- 统一运营状况
CloudWatch的最大优势也许就是你实际上不需要进行任何设置。 AWS服务生成相关的日志并直接与CloudWatch共享, 最终在一个整洁且易于理解的仪表板上。
文章图片
图片来源:aws.amazon.com
你不仅可以从仪表板上读取指标(免费计划提供高达一分钟的准确性, 付费计划可以使你获得接近一秒的准确性, 从而有效地进行实时监控), 还可以创建自定义规则, 设置警报以及何时触发警报, 扫描系统日志, 以及你希望的更多细节。
当然, 不是每个人都在AWS上, 但是大多数关键和著名的数字业务都在使用AWS, 这就是为什么我认为应该在此列表中介绍CloudWatch。我可能现在开始听起来像是破了号角, 但是说实话, 如果你使用的是AWS, 那么没有比CloudWatch设置监控更简单的方法了。
想了解AWS CloudWatch, 请向此处的专家学习。
至于定价, 亚马逊也一直保持简单。没有每月或每年的锁定。你确定需要多少, 并且仅根据使用情况付款。
但最重要的是, 请查看免费套餐, 并告诉我无法使用此服务。 ????
文章图片
图片来源:aws.amazon.com
Rigor 如果你以绩效指标为基础, 并将客户体验放在首位, 那么Rigor值得一看。名称是很好的选择, 因为你可以根据需要严格使用该工具。 ????
文章图片
Rigor最有用的功能之一就是功能测试。如果你不熟悉测试术语, 请不要担心;功能测试是指测试事务整个流程的行为, 而不仅仅是关注单个端点。
在某些方面, 功能测试比单元测试更重要, 因为它隐式涵盖了单元测试并直接提供了客户体验预测。
文章图片
如上图所示, 此功能测试具有一系列构成事务的七个规则。
规则1是在API中搜索特定歌手的请求;然后, 规则2是一个断言, 这意味着我们要强制我们搜索的艺术家可用。如果通过了这两个测试, 则系统继续执行规则3, 依此类推。
在上面的示例中, 功能测试在第7条规则处中断, 并立即通知利益相关者, 专辑” Funky Kingston” 的副本不足。谈论专注于业务而不是担心技术问题!
Rigor为严肃的企业提供了严格的服务, 它不介意为惊人的事情支付溢价, 因此, 如果你是其中的一员, 请务必进行确认。
Assertible Assertible品牌本身就是最简单的API监视工具, 主要面向测试和质量检查团队。因此, 如果你认为自己没有内部技术能力来应对JSON, XML和编写代码, 那么Assertible值得一看。
文章图片
AssertibleUSP引人入胜且直截了当:你的质量检查和测试团队可以使用断言界面创建测试并验证/监视它们。它与GitHub完美集成, 因此除了与Slack无缝协作外, 你的知识库也将始终存在。
全圈集成和审阅功能使你团队中的几乎所有人(甚至项目经理)都可以创建测试和审阅性能指标。
文章图片
好的, 上面的屏幕快照中的情况似乎有些不切实际(一分钟的问题解决), 但是有可能在清晰而立即的反馈下。零编码要求意味着你的测试可以在你的质量检查小组输入后尽快创建, 一旦完成, 就可以一遍又一遍地应用。这与大多数公司采用的” 手动测试” 做法形成鲜明对比, 在这种情况下, 单个测试人员可能需要花费几天的时间来覆盖该应用程序, 而仅仅由于疏忽或辛勤工作而错过了更出色的细节。
只需每月100美元(这是他们的首要计划), Assertible即可监视多达50个Web服务, 总共50, 000个测试和20个团队成员。考虑让QA全职工作以创建并手动运行测试的成本, 很明显, Assertible可提供指数级的效率。
BlazeMeter 当涉及到应用程序的端到端测试和监视时, BlazeMeter就是庞然大物, 它在午餐时会吃掉其他所有东西。但是, 与此同时, 这并不是为了胆小者或那些寻求简单的API监控解决方案而并不需要太多的人。
BlazeMeter是你结婚的对象, 然后在应用程序的整个生命周期中不断得到回报。
文章图片
BlazeMeter的最大优点是可以与Apache JMeter集成, Apache JMeter可以说是大型Web应用程序的默认性能衡量工具。是的, 使用BlazeMeter, 你可以自由选择开源测试框架, 并通过简单的仪表板轻松地对其进行分析。
这些计划价格昂贵, 如果你的应用程序最多可以同时容纳5, 000个用户, 则使用BlazeMeter的费用为每月649美元。固定成本计划可用于更大的工作负载, BlazeMeter拥有的客户类型通常是固定成本计划:辉瑞, Adobe, GAP, NFL, Atlassian等。
并不是说BlazeMeter无法以更简单的方式使用。像大多数其他API监视工具一样, 它确实提供了功能测试(它们称为” 方案” ), 可以使用直观的GUI前端来完成。
文章图片
也就是说, BlazeMeter是为开发人员构建的。通过其专用的测试工具Taurus, BlazeMeter公开了一种DSL(域特定语言), 该DSL可用于编写可与JMeter, Selenium和其他流行的开放源代码工具一起运行的通用测试。而且, 不要让提及DSL令你担心;它不过是美化的YAML(扩展名为.yml)文件:
execution:
- concurrency: 100
ramp-up: 1m
hold-for: 1m30s
scenario: simplescenarios:
simple:
think-time: 0.75
requests:
- http://blazedemo.com/
花一些时间在Taurus上, 你的开发人员将很感谢能够编写复杂的, 可重用的测试!
总而言之, BlazeMeter是重量级人物中的重量级人物。
AppDynamics AppDynamics现在是Cisco的一部分, 在Web应用程序监视游戏中已经有很长时间了, 并且非常知名。目前, AppDynamics是一套工具, 可以解决现代SaaS团队的广泛性能和监视要求。
就纯API /微服务监视而言, 该套件提供了微服务IQ。使用此服务, 你可以监视和分析几乎任何规模的微服务集群, 保留历史记录, 并使其与集群中的更改相关联。无论如何, 这至少允许你模拟从群集中添加/删除节点的影响。
监视实时指标的方法也一样, 可以在群集级别或节点级别完成, 并根据需要向你展示全局视图和极端细节。
文章图片
正如你在屏幕快照中所看到的那样, Docker监控是内置的, 其基础架构在Docker上运行的团队(几乎每个人, 即????)将对此表示赞赏。
除此之外, 还提供云监视和DevOps监视, 可在各种IaaS提供商(例如Amazon AWS, Azure, Pivotal等)上运行。在整个交付管道中都可获得连续反馈, 从而为DevOps提供信心和坚实基础球队。
锦上添花的是将机器学习集成到系统的核心。例如, 有时你不知道应用程序的理想基准, 但是由于业务运行平稳, 因此你可以接受当前指标作为基准。
那么, 你如何计算基线?每小时有成千上万的数据点流传输, 这很困难, 但是如果有功能强大的机器学习系统正在运行, 则很难。
文章图片
这对企业有何帮助?这是一个例子。如果你知道正常运行时间的基准是98.5%, 而当前的运行时间是98.6%, 那么你可以放心。此外, 可以使用实际的硬性基准, 从而避免了过度设计和昂贵的迁移, 某些顾问可能会建议你争取” 六个九” (正常运行时间为99.9999%)。
ML系统还足够智能, 可以从代码内部找出并报告一组微服务中的单个失败原因(这是最令人印象深刻的部分!), 因此你的团队确切知道要解决的问题。下面的屏幕快照显示了系统如何深入到基于Java Spring的REST服务并指向失败的Bean。
文章图片
这里不可能涵盖所有令人the目结舌的功能, 因此请随时查看官方文档。
New Relic 许多人认为, New Relic是应用程序性能监视工具的市场领导者, 这有充分的理由。大小型公司都在使用它, 从财富500强巨头到敏捷的小型初创公司, 它都将精度与细节完美地结合在一起。
New Relic团队以对DevOps的深刻理解而自豪, 因此, 该产品旨在提供对基础架构的完整实时视图。
New Relic最大的USP是整个系统的直观布局, 使你可以立即查看一切进行的方式以及瓶颈的确切位置(如果有)。很难用语言来描述用户界面, 因此下面是一个屏幕截图:
文章图片
如你所见, 直观地跟踪数据在系统之间的流动方式以及由此产生的性能指标非常容易。缓慢和停机会触发即时警报, 从而可以在业务受到影响之前解决问题。
New Relic不仅涵盖DevOps方面。还可以为客户体验设定目标和规则, 并获取详细的报告以找出需要进行更多工作的地方。正如任何值得他盐分的数字营销商所知, 此信息是纯金。
文章图片
New Relic的巧妙仪表板无止境。以这个为例, 它按节点映射了整个应用程序集群, 并提供了有关每个节点发生的实时反馈。
文章图片
因此, 无论你的应用程序简单还是复杂, New Relic都可以提供很多有趣的见解。
API Fortress 接下来是API Fortress, 它旨在成为组织内各个团队进行API监视的瑞士军刀, 并且做得很好。
文章图片
针对测试人员和开发人员, API Fortress允许像其他任何现代API监视工具一样创建可视化的协作式测试, 然后在便利性和功能方面走得更远。我最喜欢的两个是负载测试和模拟。
对于开发人员, API Fortress可以根据给定的API规范创建测试套件。因此, 如果你遵循Swagger, OpenAPI或RAML, 则一半的工作已经完成。 API模拟可让你的开发团队将新API的接口定义为模拟服务, QA团队可在该接口上立即开始构建测试套件。不再累人, 在开始质量检查之前, 你需要长时间等待实际的API完成!
文章图片
API Fortress还可以与所有主要的CI / CD系统一起使用, 从而减轻了集成的另一个痛点。最终, 还内置了坚如磐石的负载测试和监视功能, 使API Fortress成为开发和测试团队快速测试和监视API的完整软件包。
Traceview 如果你的团队无法进行界面级别的监控, 而你正在寻找功能强大的代码级别的监控工具, 则可以使用Traceview。在撰写本文时, 支持所有主要的编程语言和环境:Java, Scala, Net, Node, PHP, Python, Ruby和Go。
文章图片
文章图片
如你在上面的屏幕快照中所见, 组件级别和功能级别的度量可用, 可提供清晰的, 即时的洞察力, 以了解应用程序的运行方式。
如何设置?再简单不过了!对于前面列出的大多数语言, Traceview都有软件代理, 可以轻松将它们放入你的项目中而不会造成任何干扰。立即开始收集实时见解。 ????
RapidSpike RapidSpike是一种精益的解决方案, 专注于正常运行时间和监视的核心要素, 而大多数API监视工具却没有带来很多额外的麻烦。支持跟踪预定义的路径(用户旅程), 以及与API分多个步骤进行跟踪。
文章图片
所有这些都是标准, 几乎是你希望从任何现代API监视系统中获得的, 但是在我看来, RapidSpike与众不同的是其警报系统。
系统中存在内置的升级, 因此, 如果第一级联系无法解决或应对” 危机” , 则通知会升级。哎哟! ????好吧, 也许最好的情况是我们不需要真正的老板就可以始终保持警惕。
AgilityWorks 线索就是名字。至少在这种情况下。 AgilityWorks更侧重于持续交付/敏捷方面, 帮助喜欢” 早发货, 经常发货” 的团队。对于许多人来说, AgilityWorks似乎是” 测试自动化即服务” (TAaaS), 这是一个相对较新的术语, 但这是很有意义且非常需要的一个术语。
文章图片
入职并不是自动的, 因为不同的公司可能会以不同的方式进行自动化测试, 因此AgilityWorks团队随时准备让你启动并运行系统。还可以立即进行协作, 因此你的所有团队都可以参与创建, 运行和监视测试以及关键API指标。
API Science 使用API?? Science, 你可以使用API??测试你的API。尽管这听起来像是说同一件事的一种奇特的方式, 但API Science确实具有一些可能吸引许多人的新颖功能。第一个是对API堆栈的全栈监视, 这也意味着涵盖了外部API。
很多时候, 你的API表现出色且响应迅速, 但你的业务所依赖的API却出现了下降。另外, 在某些情况下, 没有客观的理由声称哪个API何时关闭, 这种斗争可能会演变成两个API提供商之间的冷战。
在这种情况下, API Science可以作为无可争议的中间立场, 可以显示API的历史可用性。
文章图片
第二个很酷的功能是对API的分布式测试。 API Science会从全球多个位置监视你的API, 并让你知道不同位置的API行为。将所有这些自定义JavaScript结合到你的监视系统中, 你将获得一个理想的API监视工具。 ????
【适用于企业的13种最佳API监控工具】这样, 我对API监视的主要建议就告一段落。我尽我所能, 不要将API限制在大多数情况下都被标记为狭窄的定义。从企业所有者到开发人员, 测试人员, 质量检查人员和项目经理, 此列表中都有一些工具适用于所有人。
推荐阅读
- 如何使用Flood Element在实际浏览器中执行负载测试()
- 优化PHP-FPM以实现高性能
- 如何使用Google Lighthouse测试你的网站()
- API监测与趋势的重要性的7个原因
- 11种在线业务的综合监控工具
- 在15分钟内使用StackPath增强并保护你的网站
- 9个最佳的真实用户监控工具,可改善用户体验
- 8个Mac优化软件,可提供更好的性能和安全性
- 7个使你的网站快速加载的技巧