socketlog的安装和使用

Posted 苏沛云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了socketlog的安装和使用相关的知识,希望对你有一定的参考价值。

  1. socketlog的使用范围 
    1. socketlog比较适用于ajax调试和api的调试,经典应用莫不过于微信众多的api使用调试,使用socketlog可以很条理清楚的查看到api传递的参数,加载的性能,错误调试等等方面,所以掌握socketlog的安装和使用对微信公众号开发等api型开发来说就正如常言道磨刀不误砍柴工
  2. socketlog 安装
    1. 客户端安装插件

        插件下载地址:https://github.com/luofei614/SocketLog

        浏览器安装插件:

        在chrome浏览器中地址栏中输入chrome://extensions/

        将下载文件中的chrome.crx拖入到窗口中即可完成插件安装

      2.服务器端安装nodejs

        (1)首先安装nodejs,在linux端的话,直接到 http://nodejs.cn/download/,选择对应的版本下载即可,然后用ftp将压缩包上传到服务器端

                                    

        (2)安装nodejs

#解压压缩包
tar -zxv -f node-v0.10.29-linux-x64.tar.gz
#修改目录
mv node-v0.10.29-linux-x64 node
#建立软连接(建议使用绝对路径,如使用相对路径,必须是相对本文件查找到目的文件的位置)
ln -s /home/node/bin/npm  /usr/local/bin/
ln -s /home/node/bin/node /usr/local/bin/
#测试成功
node -v 
#如果出现版本即为安装成功

  

    3.服务器端socketlog的安装

    (1) 启用Websocket服务,该服务是nodejs写的,在server目录下,请先确保你的环境已经安装nodejs, 启动Websocket服务运行命令 node server/index.js , 将会在本地起一个websocket服务 ,监听端口是1229 (如果是阿里云服务器需要在安全组添加1229的规则)。如果想服务后台运行: nohup node server/index.js > /dev/null &  

  3.配置

    (1)在服务器的入口文件需要加入引入代码

       

if(!function_exists(\'slog\')){
    include \'./php/slog.function.php\';
    //配置
    slog(array(
        \'host\'                => \'localhost\',//websocket服务器地址,默认localhost
        \'optimize\'            => true,//是否显示利于优化的参数,如果运行时间,消耗内存等,默认为false
        \'show_included_files\' => true,//是否显示本次程序运行加载了哪些文件,默认为false
        \'error_handler\'       => true,//是否接管程序错误,将程序错误显示在console中,默认为false
        \'force_client_ids\'    => array(//日志强制记录到配置的client_id,默认为空,client_id必须在allow_client_ids中
            \'paint\',
            //\'client_02\',
        ),
        \'allow_client_ids\'    => array(//限制允许读取日志的client_id,默认为空,表示所有人都可以获得日志。
            \'paint\',
            //\'client_02\',
            //\'client_03\',
        ),
    ),\'config\');//输出日志
}

  设置client_id: 在chrome浏览器中,可以设置插件的Client_ID ,Client_ID是你任意指定的字符串。

  4.实现对数据库进行调试

    (1)SocketLog还能对sql语句进行调试,自动对sql语句进行explain分析,显示出有性能问题的sql语句

$link=mysql_connect( \'localhost:3306\' , \'root\' , \'123456\' , true ) ;
mysql_select_db(\'kuaijianli\',$link);
$sql="SELECT * FROM `user`";
slog($sql,$link);

    (2)在tp框架中,只需要在/ThinkPHP/Library/Think/Db/Driver.class.php的 query 和execute 方法中

添加slog($this->queryStr,$this->_linkID)即可

    

 

     

以上是关于socketlog的安装和使用的主要内容,如果未能解决你的问题,请参考以下文章

SocketLog

PHP代码-psysh调试代码片段工具

VIM 代码片段插件 ultisnips 使用教程

Android 逆向Android 进程注入工具开发 ( Visual Studio 开发 Android NDK 应用 | Visual Studio 中 SDK 和 NDK 安装位置 )(代码片段

在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途

#VSCode保存插件配置并使用 gist 管理代码片段