美文网首页Pinpoint
Pinpoint插件开发指南

Pinpoint插件开发指南

作者: Ax1an | 来源:发表于2019-01-30 14:33 被阅读0次

你可以编写Pinpoint采样插件来扩展采样目标覆盖范围。

在进入插件开发之前,最好先查看由 pinpoint plugins记录的追踪数据。

如果你想看看,有一个来自第三方的fast auto pinpoint agent plugin generate tool可以用来创建一个简单的插件。

一、追踪数据

在Pinpoint中,一个transaction由一组Span组成。每个Span表示transaction经过的单个逻辑节点的一次追踪。

为了形象化,我们假设存在如下系统。

FrontEnd服务器接收来自用户的请求,然后将请求发送至BackEnd服务器,BackEnd服务器会查询一次数据库。

在这些节点中,我们假设只有FrontEnd和BackEnd服务器被Pinpoint Agent采样。

当一个请求到达FrontEnd Server时,Pinpoint Agent生成一个新的transaction id并用它创建一个Span。

为了处理这个请求,FrontEnd Server接着调用BackEnd Server。

此时,Pinpoint Agent将transaction id(附加其它一些用于传播的值)注入到调用消息中。

当BackEnd Server接收到这个消息,它将从这个消息中提取transaction id(和其他值),并用它们创建一个新的Span。

结果,单个事务中的所有Span共享相同的transaction id。

Span记录重要的方法调用及其相关数据(参数、返回值等),然后将它们封装为类似调用堆栈表示形式的spanEvents。

Span本身及其每个SpanEvents表示一个方法调用。

Span和SpanEvent有许多字段,但是大多数字段由Pinpoint Agent在内部处理,大多数插件开发人员不需要关心它们。

对于这些字段,插件开发人员必须处理的信息如下。

相关文章

  • Pinpoint插件开发指南

    你可以编写Pinpoint采样插件来扩展采样目标覆盖范围。 在进入插件开发之前,最好先查看由 pinpoint p...

  • pinpoint模块功能

    pinpoint架构图 pinpoint1.8项目工程图无标题.png 简要说明 Agent 插件开发开发 Pin...

  • Pinpoint插件开发手册

    你可以编写Pinpoint的Profiler 插件去扩展Profiling目标的覆盖。在进入插件开发之前,最好去查...

  • BurpSuite插件开发

    主要参考文章: BurpSuite插件开发指南之 API 上篇 BurpSuite插件开发指南之 API 下篇 B...

  • BiBi - Android 插件化

    From:Android插件化开发指南 目录 预备知识1.1 简介 插件化的用途 插件化的发展史1.2 Binde...

  • composer 扩展包开发

    以开发 Laravel 扩展包为例 参考 Laravel 的扩展插件开发指南[https://laravel-ch...

  • IntelliJ IDEA/Android Studio插件开发

    IntelliJ IDEA/Android Studio插件开发入门指南 基于IntelliJ平台的产品都可以通过...

  • 开发pinpoint插件log4j2

    pinpoint是一个非常优秀的APM工具,适用于使用Java构建的大型分布式系统。受到论文 Dapper的启发,...

  • uniapp原生插件开发与使用

    参考:uni-app原生插件(native plugin)开发指南 软件准备:安装JDK version>=1.7...

  • 插件化摘要

    参照《Android 插件化开发指南》做的摘要。 将某一模块打包成 APK 作为插件,在宿主 APP 中根据需要下...

网友评论

    本文标题:Pinpoint插件开发指南

    本文链接:https://www.haomeiwen.com/subject/hvqcsqtx.html