监视多个服务的性能和运行状况



以下是我们的要求。

  1. 测量接近实时的平均网页延迟(托管在AWS ecs的多个实例上(我们希望我们的服务上一页,比如。。小于第二个

  2. 除了http 200以外的错误状态没有增加,我们想知道是否有问题。

  3. 像弹性搜索这样的独立服务没有关闭

  4. 我们正在哨兵或弹性搜索中记录一些关键错误(如购买失败(,并想知道它是否没有增加

  5. 有一个单独的监控ui,并在满足某些条件时发出警报,这很好。

我不知道我们是否需要自己构建服务,我希望我们可以使用一些现成的服务。

我们应该在哪里收集数据
我一直在看

  • 弹性搜索,kibana(缺乏警报(
  • statsd(似乎我们需要单独的前端进行可视化(
  • netdata(看起来更像是系统监控工具,而不是数据聚合工具(
  • 穆宁,纳吉奥斯(不确定这些是否是我们需要的(

DataDog似乎是一个很好的解决方案。你可以用它来监控Elasticsearch,它有一个APM产品,你可以集成到你的应用程序中来监控它的性能。如果你用蜜獾监控你的应用程序,你也可以将这些错误的指标发送给DataDog。

Zabbix可以很好地处理其中的大多数。

  • 使用"web场景">,网页延迟可以通过"web.test.in""web.test.time"
  • "web.test.rspcode"还会显示HTTP响应代码,然后在需要时触发警报(例如:200、400、401、404、500、503…(
  • 您可以使用带有额外zabbix_agentd设置的官方模板轻松监控弹性搜索
  • 这可能需要另一个专用服务:Sentry、EFK堆栈、弹性警报来归档目标
  • Zabbix有自己的集中式UI(支持代理(和任何类型的警报(显示在仪表板、电子邮件、Slack、SMS、PagerDuty…(

最新更新