问题描述: 我有做以下事情的模块。
delete/folder
delete/file
move/folder
move/file
此应用程序在多个主机上运行。我无法找到更好的命名空间模式将其存储在statsd:
中我考虑过以下模式:
<env>.<app>.<action>.<object>.<host>.exec_time
<env>.<app>.<action>.<object>.<host>.failed
<env>.<app>.<action>.<object>.<host>.succeeded
我想的第二种模式是:
<env>.<app>.<object>.<action>.<host>.exec_time
<env>.<app>.<object>.<action>.<host>.failed
<env>.<app>.<object>.<action>.<host>.succeeded
我可以有更多这样的模式吗?
<env>.<app>.<object>.<action>.exec_time.<host>
<env>.<app>.<object>.<action>.failed.<host>
我无法找到哪种模式会好,为什么?你能建议吗
目前我正在考虑遵循指标。
答案 0 :(得分:5)
这非常依赖于您的需求。您已经遵循了一些一般规则(如常识),但整个主题都非常个性化。
我确实遇到了一个很好的guide有人在这个话题上放在一起。从指南:
<namespace>.<instrumented section>.<target (noun)>.<action (past tense verb)>
示例:强>
accounts.authentication.password.attempted
虽然该指南提供了一些很好的见解,但我认为这将是一个试验和错误。在我的公司,我们有100个指标,并且需要一段时间来组织它们。您还应该学习如何从Carbon中删除不必要的指标!它将帮助您清理石墨界面,以避免在那里看到垃圾。