1 Star 1 Fork 0

xiao / statistics

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

statistics

一个运用php与swoole实现的统计监控系统

如果有使用laravel 的朋友,推荐另外一个项目fast-laravel。欢迎使用,喜欢的话给个star鼓励下。谢谢各位

界面截图

Swoole statistics screenshot one

Swoole statistics screenshot two

Swoole statistics screenshot three

Swoole statistics screenshot four

说明

  • statistics是一个以swoole作为服务器容器的统计监控系统。
  • statisitcs使用PHP开发,无需安装Mysql等数据库,无需安装php-fpm等软件。
  • statistics包含了客户端和服务端,客户端是一个类库,通过函数调用的方式以UDP协议上报数据给服务端。
  • statistics服务端接收上报数据然后汇总展示。
  • statistics以曲线图、饼图和表格的方式展示请求量、耗时、成功率、错误日志等。
  • workerman版本实现statistics https://github.com/walkor/workerman-statistics

依赖

  • PHP 5.3+
  • Swoole 1.7.18
  • Linux, OS X and basic Windows support (Thanks to cygwin)

安装 Swoole扩展

  1. Install swoole extension from pecl

    pecl install swoole
  2. Install swoole extension from source

    sudo apt-get install php5-dev
    git clone https://github.com/swoole/swoole-src.git
    cd swoole-src
    phpize
    ./configure
    make && make install

安装

1. 下载 Swoole statistics

linux shell Clone the git repo:

git clone https://github.com/smalleyes/statistics.git

linux wget the zip file:

wget https://github.com/smalleyes/statistics/archive/master.zip
unzip master.zip

2. 安全

管理员用户名密码默认都为admin。
如果不需要登录验证,在applications/Statistics/Config/Config.php里面设置管理员密码留空。
请自行做好安全相关的限制.

运行

  • 配置NGINX虚拟主机
  • 配置文件位于doc/statistics.conf
  • 复制文件statistics.conf到nginx,虚拟主机配置文件目录下(默认为nginx/conf.d目录下)
  • 重启nginx或重新加载nginx配置文件(nginx -s reload)
  • 配置hoshs文件,绑定ip域名对应关系
  • 使用swoole需要启动服务,php web.php与php worker.php再打开浏览器访问绑定的域名。
  • 配置信息都在Config目录下。
  • 开启守护进程模式,请修改配置Config/Server.php的daemonize选项为TRUE。

客户端使用方法


    <?php
    
    /**
     * examples
     * @author xmc
     */
    
    class User {
    	public static function getInfo()
    	{
    		$res = array();
    		$res = array('name'=>'xmc','password'=>'123456');
    		return $res;
    	}
    
    	public static function addInfo()
    	{
    		$res = array();
    		$res = array('name'=>'xmc','password'=>'123456');
    		return $res;
    	}
    
    	public static function getErrCode()
    	{
    		$errcode = 10001;
    		return $errcode;
    	}
    
    	public static function getErrMsg()
    	{
    		$errmsg = '添加用户失败';
    		return $errmsg;
    	}
    }
    
    include 'StatisticClient.php';
    
    // 统计开始
    StatisticClient::tick("User", 'addInfo');
    // 统计的产生,接口调用是否成功、错误码、错误日志
    $success = true; $code = 0; $msg = '';
    // 假如有个User::getInfo方法要监控
    $user_info = User::addInfo();
    if(!$user_info){
    	// 标记失败
    	$success = false;
    	// 获取错误码,假如getErrCode()获得
    	$code = User::getErrCode();
    	// 获取错误日志,假如getErrMsg()获得
    	$msg = User::getErrMsg();
    }
    // 上报结果
    $res = StatisticClient::report('User', 'addInfo', $success, $code, $msg);
    
    echo "done over...\n";
    var_dump($user_info,$res);
    
The MIT License (MIT) Copyright (c) 2015 小eyes Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

一个运用php与swoole实现的统计监控系统 展开 收起
PHP 等 3 种语言
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
PHP
1
https://gitee.com/smalleyes/statistics.git
git@gitee.com:smalleyes/statistics.git
smalleyes
statistics
statistics
master

搜索帮助