监控微服务架构

时间:2017-03-03 15:14:05

标签: amazon-web-services aws-lambda microservices prometheus

我正在设计一个类似于here描述的架构。该图是: enter image description here

我的问题是你如何监控这样一个架构,其中独立的部分组成一个逻辑单元?它几乎就像我们需要一个监视系统来检查S3的.zip文件,然后轮询S3以查找相应的png文件。如果 X小时之后没有找到png文件,则提醒。

是否有工具进行时间序列分析?普罗米修斯会这样做吗?

2 个答案:

答案 0 :(得分:3)

TL; DR:普罗米修斯(通常)通过从服务器提取指标来工作,因此我不知道如何将其直接应用到S3上,除非您在S3上生成一个包含png数量的动态页面。

详细说明: Prometheus的工作方式是从服务器中提取可用作HTTP页面的指标。您的服务器需要发布这个名为/ metrics的特殊页面,Prometheus会去那里并获取其内容。

如果您可以在S3上生成动态 公共页面,该页面将导出您桶中当前的.png数量,那么这应该可行。把普罗米修斯指向它。

答案 1 :(得分:3)

我使用Prometheus监控此类系统的方法是通过检测与S3 / SQS对话的应用程序。请参阅此代码,了解我们如何检测与S3对话的应用程序:https://github.com/weaveworks/cortex/blob/master/chunk/chunk_store.go#L177

我们使用这些直方图(由Prometheus抓取和汇总)来提醒我们何时PUT或GET到S3并失败,或者花费太长时间。