liuggio/statsd-client-bundle 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

liuggio/statsd-client-bundle

最新稳定版本:v1.8.0

Composer 安装命令:

composer require liuggio/statsd-client-bundle

包简介

Provides a statsd client and simple ready-to-use support for #Symfony2 Application

README 文档

README

Total Downloads Latest Stable Version Build Status

This bundle helps you to monitor your application.

It uses statsd-php-client as Client for the etsy/Statsd API.

It Includes

  • a Service, a Factory and an Entity callable by the DIC
  • a Monolog Handler
  • a series of Collectors in order to aggregate your personal data.
  • a series of Commands in order to execute data also from cli.

Simple usage!

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

Check out the documentation

Articles

Abstract

Monitoring what is happening in your production Symfony2 application, with StatsD and Graphite.

Within this bundle you could use ready-to-go monitor for

  • Monolog

  • Amount of visitor

  • Logged vs Anonymous user

  • SQL: Verbs used (amount of select/set/update/upgrade/delete) (this feature is not suggested, please use a server monitor tool eg. nagios, munin)

  • Amount of PHP ram used

  • You could create your own using the Factory and the Service.

On dev env the data are not pushed to the socket but to syslog.

If debug mode is enabled no packet are sent over the udp socket, and you could see what's going on reading the syslog with 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 

Note: by default in dev environment debug is true.

One UDP packet to rule them all

With a proper config file, your StatsD server will receive in a single upd packet:

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

Short Theory and links

Vagrant StatSD and Graphite

see this blog post to install Easy install statsd graphite with vagrant.

StatsD

StatsD is a simple daemon for easy stats aggregation

Graphite

Graphite is a Scalable Realtime Graphing

The Client send data with UDP (faster)

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

Contribution

See CONTRIBUTING.md

Contributors

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

统计信息

  • 总下载量: 725.48k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 168
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 164
  • Watchers: 8
  • Forks: 43
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-04

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固