开发规范


pinpoint接入方式

<p>pinpoint接入方式 docker方式 Dockerfile更改基础镜像为:</p> <pre><code>hub.ecs.com:6999/jdk1.8-pp2agent:v1.0-112</code></pre> <p>即将Dockerfile开头的</p> <p>FROM hub.ecs.com:6999/jdk1.8:v1 改为 FROM hub.ecs.com:6999/hub.ecs.com:6999/jdk1.8-pp2agent:v1.0-112</p> <p>java启动参数增加(即vos中应用的启动脚本增加参数) -javaagent:/root/agent/pinpoint-bootstrap-2.0.3.jar -Dpinpoint.applicationName=${应用名称} e.g.</p> <p>java -javaagent:/root/agent/pinpoint-bootstrap-2.0.3.jar -Dpinpoint.applicationName=dubbo-demo1 -Dfile.encoding=UTF-8 -server -jar /app/soft/pinpoint/dubbo-demo/dubbo-demo1-1.0.jar --server.port=18803 --log.path=/app/soft/pinpoint/dubbo-demo/logs 备注:</p> <p>-javaagent 和 -Dpinpoint.applicationName 参数需要写在 -jar 前,否则不生效</p> <p>目前使用 pinpoint 版本为 2.0.3</p> <p>收集器目前在 132.46.120.112 上,所以正常收集数据需要应用主机能连上 132.46.120.112 ,信息使用额外的一个线程进行发送。是否能收集到数据不影响应用正常使用。</p> <p>更改收集器主机可以在 dockerfile 中修改 /root/agent/pinpoint.config 文件的 profiler.collector.ip配置</p> <p>应用名称-Dpinpoint.applicationName的值最长24个字节,且只能包含 [a-zA-Z0-9.-_]</p> <p>非docker方式 应用主机上存在 pinpoint-agent 项目结构 更改 pinpoint.config 文件的 profiler.collector.ip配置 java启动参数增加 -javaagent:${pinpoint-agent路径}/pinpoint-bootstrap-2.0.3.jar -Dpinpoint.applicationName=${应用名称} -Dpinpoint.agentId=${jvmId} 备注:</p> <p>pinpoint-agent 来源,下载相应版本的 pinpoint-agent-2.0.3.tar.gz ,解压后即可</p> <p>docker方式中的 pinpoint-bootstrap-2.0.3.jar 为改造后的jar包,会自动生成 agentId ,原版的 agent 则需要手动指定 agentId。agentId为全局唯一Id,用于区分不同jvm</p> <p>大致原理 agent用单独的线程将数据放到队列中发送给collector,如果请求速度过快,无法放入队列的数据将被丢弃 collector将数据处理后存入hbase web从hbase将数据读取出来后解析展示 hbase中除了应用名称外,只保留3天数据</p> <p>pinpoint-web <a href="http://132.46.120.105:8080">http://132.46.120.105:8080</a></p> <h5>简要描述</h5> <ul> <li>用户注册接口</li> </ul> <h5>请求URL</h5> <ul> <li><code>http://xx.com/api/user/register</code></li> </ul> <h5>请求方式</h5> <ul> <li>POST </li> </ul> <h5>参数</h5> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">username</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>用户名</td> </tr> <tr> <td style="text-align: left;">password</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>密码</td> </tr> <tr> <td style="text-align: left;">name</td> <td style="text-align: left;">否</td> <td style="text-align: left;">string</td> <td>昵称</td> </tr> </tbody> </table> <h5>返回示例</h5> <pre><code> { "error_code": 0, "data": { "uid": "1", "username": "12154545", "name": "吴系挂", "groupid": 2 , "reg_time": "1436864169", "last_login_time": "0", } }</code></pre> <h5>返回参数说明</h5> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">groupid</td> <td style="text-align: left;">int</td> <td>用户组id,1:超级管理员;2:普通用户</td> </tr> </tbody> </table> <h5>备注</h5> <ul> <li>更多返回错误代码请看首页的错误代码描述</li> </ul>

页面列表

ITEM_HTML