帮酷LOGO
0 0 评论
  • 显示原文与译文双语对照的内容
文章标签:监视器  Monit  BOX  slow  
Box SQL Slow Query Monitor

  • 源代码名称:Anemometer
  • 源代码网址:http://www.github.com/box/Anemometer
  • Anemometer源代码文档
  • Anemometer源代码下载
  • Git URL:
    git://www.github.com/box/Anemometer.git
  • Git Clone代码到本地:
    git clone http://www.github.com/box/Anemometer
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/box/Anemometer
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
  • 机顶盒风速计

    这是盒式风速表,MySQL慢查询监视器。 这里工具用于分析从MySQL实例收集的慢查询日志,以识别有问题的查询。

    文档

    快速入门

    如果你完全想开始使用这里工具,下面是你需要的内容:

    • 来自MySQL服务器的慢查询日志( 有关获取信息的信息,请参阅慢查询日志
    • 具有 PHP 5.5 +的web服务器
    • 安装数据库

    首先,从github获取anemometer代码。 导航到你的web服务器的文档 root 并捕获盒子速度计代码的副本。

    
    $ git clone git://github.com/box/Anemometer.git anemometer 
    
    
    
    

    或者,如果关闭了 9418端口:

    
    $ git clone https://github.com/box/Anemometer.git anemometer 
    
    
    
    

    然后将你当前的工作目录更改为Anemometer目录:

     
    $ cd anemometer
    
    
    
     

    接下来,你应该连接到你要存储分析数据并发出以下命令的MySQL数据库:

    
    $ mysql -h db.example.com <install.sql
    
    
    $ mysql -h db.example.com -e"grant ALL ON slow_query_log.* to 'anemometer'@'%' IDENTIFIED BY 'superSecurePass';"
    
    
    
    
    在数据库中放入一些数据

    接下来,抓取你调用的慢速查询日志文件( 矿井"慢。log"),并在上面运行 pt-query-digest: ! 注意:我在MySQL数据库服务器上使用 BASH 3.0 shell ! 这是"$hostname"变量正确替换为"db.example.com")

    pt-query-digest版本 <2.2

    
    $ pt-query-digest --user=anemometer --password=superSecurePass 
    
    
     --review h=db.example.com,D=slow_query_log,t=global_query_review 
    
    
     --review-history h=db.example.com,D=slow_query_log,t=global_query_review_history 
    
    
     --no-report --limit=0% 
    
    
     --filter=" $event->{Bytes} = length($event->{arg}) and $event->{hostname}="$HOSTNAME"" 
    
    
    /var/lib/mysql/db.example.com-slow.log
    
    
    
    

    pt-query-digest版本> = 2.2

    
    $ pt-query-digest --user=anemometer --password=superSecurePass 
    
    
     --review h=db.example.com,D=slow_query_log,t=global_query_review 
    
    
     --history h=db.example.com,D=slow_query_log,t=global_query_review_history 
    
    
     --no-report --limit=0% 
    
    
     --filter=" $event->{Bytes} = length($event->{arg}) and $event->{hostname}="$HOSTNAME"" 
    
    
    /var/lib/mysql/db.example.com-slow.log
    
    
    
    Pipeline process 11 (aggregate fingerprint) caused an error: Argument"57A" isn't numeric in numeric gt (>) at (eval 40) line 6, <> line 27.
    
    
    Pipeline process 11 (aggregate fingerprint) caused an error: Argument"57B" isn't numeric in numeric gt (>) at (eval 40) line 6, <> line 28.
    
    
    Pipeline process 11 (aggregate fingerprint) caused an error: Argument"57C" isn't numeric in numeric gt (>) at (eval 40) line 6, <> line 29.
    
    
    
    

    你可能会看到像上面这样的错误,很好 ! TODO: 解释上面的选项在做什么。

    查看数据 !

    现在,导航到web服务器的文档 root 并复制示例配置,以便你可以编辑它:

    
    $ cd anemometer/conf
    
    
    $ cp sample.config.inc.php config.inc.php 
    
    
    
    

    样例配置解释了你可能希望在其中更改的每个设置。 至少,请确保将数据源设置为存储分析的摘要信息的MySQL数据库:

    
    $conf['datasources']['localhost'] = array(
    
    
     'host' => 'db.example.com',
    
    
     'port' => 3306,
    
    
     'db' => 'slow_query_log',
    
    
     'user' => 'anemometer',
    
    
     'password' => 'superSecurePass',
    
    
     'tables' => array(
    
    
     'global_query_review' => 'fact',
    
    
     'global_query_review_history' => 'dimension'
    
    
     )
    
    
    );
    
    
    
    

    这里外,在当前版本中启用了"说明"插件,你需要设置用户名和密码来解释主机上的查询。 ,例如在"世界"服务器上,你需要在配置配置文件中向下滚动,然后将'用户'和'密码'参数转换为适当的帐户,这样你才可以在其中消化包含来自数据库的查询的慢日志:

    
    $conf['plugins'] = array(
    
    
    . . .
    
    
     'explain' => function ($sample) {
    
    
     $conn['user'] = 'anemometer';
    
    
     $conn['password'] = 'superSecurePass';
    
    
    
     return $conn;
    
    
     },
    
    
    );
    
    
    
    

    现在你应该能够在浏览器中导航到你的web server,并在操作中看到 in !

    Phpdocs

    可以在项目的"文档"子目录中找到这里工具的Phpdocs。

    依赖项

    这个应用程序需要一个带有 PHP + 和一个MySQL数据库的Apache,它包含来自MySQL慢查询日志的数据聚合。

    版权和许可证

    版权所有 2014 Box,所有权利保留。

    在Apache许可以证下许可以证版本 2.0 ("许可以证") ;你可以能不使用这里文件,除了符合许可以证。 你可以获得许可证的副本在*

    http://www.apache.org/licenses/LICENSE-2.0

    在规定的法律或者书面许可下,在许可条款下分发的软件在不保证任何种类的担保或者条件的前提下分发,或者明示或者隐含。 查看许可协议下特定语言的许可权限和限制的许可证。



    文章标签:监视器  Monit  BOX  slow  

    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语