liuggio/statsd-client-bundle

提供 statsd 客户端和针对 #Symfony2 应用的简单易用支持

安装次数: 688,304

依赖者: 0

建议者: 0

安全性: 0

星标: 164

关注者: 9

分支: 43

开放问题: 7

类型:symfony-bundle

v1.8.0 2021-08-03 06:49 UTC

README

Total Downloads Latest Stable Version Build Status

此包可以帮助您监视您的应用。

它使用 statsd-php-client 作为 客户端 以与 etsy/Statsd API 通信。

包括

  • 一个 服务、一个 工厂 和一个可由 DIC 调用的实体
  • 一个 Monolog 处理器
  • 一系列的 收集器 以聚合您自己的数据。
  • 一系列的 命令 以从 CLI 执行数据。

简单使用!

$this->get('statsd')
     ->increment('log.error')
     ->gauge('log.rate', 25)
     ->flush();

查看文档

文章

摘要

使用 StatsD 和 Graphite 监视生产中的 Symfony2 应用程序中的情况。

在此包中,您可以使用以下现成的监视器:

  • Monolog

  • 访问者数量

  • 登录用户与匿名用户

  • SQL:动词的使用(select/set/update/upgrade/delete 的数量)(此功能不建议使用,请使用服务器监控工具,例如 nagios、munin)

  • PHP 内存使用量

  • 您可以使用工厂和服务创建自己的监视器。

在开发环境中,数据不会推送到套接字,而是推送到 syslog。

如果启用了调试模式,则不会通过 udp 套接字发送任何数据包,您可以通过读取 syslog(使用 tail -f /var/log/syslog)来查看正在发生的情况。

Mar 19 00:48:11 liuggio nginx: statsd-open
Mar 19 00:48:11 liuggio nginx: statsd-write "tvision.visitor:1|tvision.memory:43520|tvision.user.anonymous:1|tvision.query.start:1|tvision.query.insert:1|c" 118 Bytes
Mar 19 00:48:11 liuggio nginx: statsd-close

注意:默认情况下,在 dev 环境中调试为 true。

一个 UDP 数据包统治一切

通过适当的配置文件,您的 StatsD 服务器将接收单个 UDP 数据包

prefix.visitor:1|c                  # Increment visitor
prefix.user.anonymous:1|c           # The visitor is not logged

prefix.log.app.error.user_action:1  # Stats by monolog with $this->get('logger')->error('user_action')

prefix.memory:4480|g                # The php memory peak was 4480 MB

prefix.exception.exception.500:1|c  # Exception occurred, the Exception code was 500

prefix.query.insert:1|c             # Query Insert
prefix.query.select:1|c             # Query Select

简短的理论和链接

Vagrant StatSD 和 Graphite

请参阅此博客文章以安装 使用 vagrant 轻松安装 statsd graphite

StatsD

StatsD 是一个简单的守护程序,用于轻松聚合统计信息

Graphite

Graphite 是一个可扩展的实时绘图工具

客户端使用 UDP 发送数据(更快)

https://www.google.com/search?q=tcp+vs+udp

贡献

请参阅 CONTRIBUTING.md

贡献者

https://github.com/liuggio/StatsDClientBundle/graphs/contributors