我很难理解Graphite和Kibana 3的集成来监控日志和系统命中率.我指的是这里描述的日志管理系统中的图.
提前致谢.
我正在通过发送统计信息到Graphite服务器statsd.我的统计数据相当精细,开发人员可以轻松添加.我想汇总匹配某种模式的所有统计数据(stats.timers.api.*.200.count例如).Graphite中有可能吗?
如果没有,是否有其他我应该关注的系统可以从中生成这种类型的汇总数据statsd?或者这是我应该在我的statsd配置中直接做的事情?
我一直在浏览https://github.com/etsy/statsd上的README,但我无法弄清楚StatsD如何存储它获得的数据?
它是否可以永久存储,还是一次性存储?我试图找出它使用的数据库(如果有的话),或者它只是使用基于文件的存储.
Heroku非常适合原型设计和运行简单的Web服务,我经常使用它来运行像Flask和Django这样的Python Web服务并尝试创意.但是,我总是很难理解如何使用infrastricture在堆栈中的每个启动需求中运行那些非常强大的支持或实用程序服务.4个服务的例外我不能没有,并会推荐给任何创业公司.
你会如何在Heroku上运行这些?最好只安装这些支持服务的专用盒(Rackspace等).
有没有人在Heroku上运行实用程序守护程序(服务)?
我正在使用Graphite + Statsd(使用Python客户端)从webapp收集自定义指标:成功交易的计数器.假设计数器是stats.transactions.count,也有可用的速率/每秒/秒度量stats.transactions.rate.
我还将Seyren设置为监视器+警报系统,并成功从Graphite中提取指标.现在我想在Seyren中设置警报,如果过去60分钟内成功交易的数量少于某个最小值.
我应该使用哪种指标和Graphite功能?我尝试过,summarize(metric, '1h')但是当Graphite开始聚合起始小时的指标时,这会给我一个警报.
请注意,Seyren还允许指定Graphite from和until参数,如果这有帮助的话.
我在Amazon linux ec2上安装了dd-agent.如果我直接在主机上运行我的python脚本(我使用名为"dogstatsd-python"的SDK),所有指标都可以发送到datadog(我登录到datadoghq.com并在那里看到指标).脚本是这样的:
from statsd import statsd
statsd.connect('localhost', 8125)
statsd.increment('mymetrics')
Run Code Online (Sandbox Code Playgroud)
但是,我启动了一个docker容器并从容器内部运行相同的脚本:
from statsd import statsd
statsd.connect('172.14.0.1', 8125)
statsd.increment('my metrics')
Run Code Online (Sandbox Code Playgroud)
'172.14.0.1'是主机的IP,它是用命令提取的
netstat -nr | grep '^0\.0\.0\.0' | awk '{print $2}'
Run Code Online (Sandbox Code Playgroud)
根本没有将指标发送到datadog .....
我猜这可能是由于某些配置问题,如"地址绑定".也许我在主机上安装的dd-agent只能从'localhost'接收指标.
希望有人可以帮助我.先感谢您.
我看到组合statsd + telegraf + Influxdb一直使用.
为什么不使用statsd(没有telegraf)来聚合和转发指标?包含电报的额外好处是什么?
我正在努力将我们从一ant开始gulp,并且作为努力的一部分,我想将时间统计数据写入Graphite.我们也是这样做的ant(不知道如何,除此之外).我的问题是,我宁愿不必手动为我们拥有的每个任务添加一些或其他插件(我们有超过60个),而是有某种全局行为,每个任务,在任务运行之前计时器启动,当它表示完成时,我们将一些数据推送到Graphite(通过statsd).
有人能指出我正确的方向在哪里勾住gulp为此?我在文档/食谱中找不到任何特别有用的东西......
我们正在跑步gulp@4.
我有一个Rails应用程序,它广泛使用缓存,我想知道应用程序中不同位置的缓存命中率.低命中率显然需要注意.但先测量一下!
为了获得真实数据,我使用了石墨+ statsd组合和使用statsd-instrument gem的自定义Dalli仪器.应用程序中的所有键都是表单,因此我在石墨中获得以下指标:['place', details...]
现在我要显示所有命中率.我能够为一个地方想出以下公式:
divideSeries(stats.cache.place1.hits, sumSeries(stats.cache.place1.*))
Run Code Online (Sandbox Code Playgroud)
它工作得很好,但有几十个地方,我不想复制它,更不用说新的地方可以出现.
这是一个问题,石墨专家:有没有办法显示所有地方的命中率?我在文档中看到了group*函数,但它们让我感到困惑.
理想情况下,我想将我的地点分为4类:
我非常感谢任何有关如何使用石墨进行此类分析的想法(我可以请求JSON格式的数据并进行自己的数学运算,但我怀疑必须有一种更简单的方法).
我在时间板上有一个时间序列图,它显示一个指标的数据,该指标具有多个称为“页面”的标签。该图的每个标记都有一行,我正在对值运行函数,因此对我的数据的查询是“ewma_5(avg:client.load_time{env:prod}) by {page}”。此查询意味着当我将鼠标悬停在图形上时,工具提示值类似于“ewma_5(avg:client.load_time{env:prod})”。
我想知道是否可以使用带有标签值的别名函数,比如“别名”:“{page}”?