Monitoring 收集应用程序的指标

Monitoring 收集应用程序的指标,monitoring,graphite,Monitoring,Graphite,好奇的是,人们是如何将指标发送到graphite的。似乎大多数人都在使用一个客户端(许多可在statsd github上获得),该客户端发送到statsd,然后再发送到carbon。 我的问题是,您认为将这种“交叉关注点”直接包含到代码中可以吗。我所看到的是,我的应用程序代码已经从原来的漂亮和干净变成了现在的不那么漂亮和干净,用代码来收集与我的业务代码交织在一起的指标。 有什么想法吗?我确实认为在应用程序代码中包含发送业务指标的代码是很好的。正如@tomer peled在评论中所说,这与日志记录

好奇的是,人们是如何将指标发送到graphite的。似乎大多数人都在使用一个客户端(许多可在statsd github上获得),该客户端发送到statsd,然后再发送到carbon。 我的问题是,您认为将这种“交叉关注点”直接包含到代码中可以吗。我所看到的是,我的应用程序代码已经从原来的漂亮和干净变成了现在的不那么漂亮和干净,用代码来收集与我的业务代码交织在一起的指标。
有什么想法吗?

我确实认为在应用程序代码中包含发送业务指标的代码是很好的。正如@tomer peled在评论中所说,这与日志记录有着密切的相似性


然而,我理解你不愿意散布这些东西,可能会混淆代码。在这种情况下,我的方法是从接受一定数量的混乱开始,然后随着更多的例子出现,我尝试确定指向抽象的紧急结构,这将稍微清理一些东西。

我认为答案会有所不同,这取决于您具体谈论的是业务指标还是系统指标。你能澄清一下吗?我说的是你公司的应用程序,这是公司的业务。在这些应用程序中,有人发送度量,因此使代码不那么干净/易读。etcI不同意你的观点。这就像日志记录一样,当您在日志记录时,您是否说您的代码不太干净\可读?不,相反,您可以说此代码具有运行时的某些级别的重要信息。在我看来,日志记录对于实时系统和“度量”都非常重要。只需像处理日志一样查看“指标”。还请注意,有几种解决方案将日志记录与度量相结合。