使用Pandora.js实现全链路追踪:OpenTracing标准实践

使用Pandora.js实现全链路追踪:OpenTracing标准实践 使用Pandora.js实现全链路追踪OpenTracing标准实践【免费下载链接】pandoraA Manageable, Measurable and Traceable Node.js Application Manager represented by Alibaba powered by TypeScript项目地址: https://gitcode.com/gh_mirrors/pa/pandoraPandora.js是阿里巴巴开源的Node.js应用管理工具提供了可管理、可度量和可追踪的完整解决方案其中全链路追踪功能基于OpenTracing标准实现帮助开发者轻松构建分布式系统的请求追踪能力。为什么选择Pandora.js的全链路追踪全链路追踪是分布式系统可观测性的核心能力Pandora.js通过以下特性简化追踪实现✔️开箱即用的追踪支持默认集成常见中间件和数据库的追踪能力✔️标准OpenTracing实现遵循行业标准保证兼容性和扩展性✔️低侵入性设计无需大量修改业务代码即可启用追踪✔️灵活的采样机制支持按环境动态调整采样率平衡性能与可观测性支持的追踪场景Pandora.js内置了对多种常用组件的追踪支持无需额外配置即可自动生成追踪数据组件版本要求说明http(s).createServer()-所有HTTP(S)服务器包括Koa、Express等框架http(s).request()-所有HTTP(S)请求包括request、urllib等库npm: mongodb2.2.x包括基于mongodb的ORM如mongoosenpm: mysql^2.x包括基于mysql的ORM如sequelizenpm: mysql2^1.5-npm: ioredis^3.x-如需支持其他组件可以通过提交Issue提出需求。如何查看追踪数据通过API查看Pandora.js提供了RESTful API接口查看追踪数据curl http://127.0.0.1:7002/trace?appNamemy-site # my-site是您的应用名通过GUI Dashboard查看也可以通过图形化界面查看追踪数据具体配置方法参见仪表盘文档。采样率配置Pandora.js默认采用动态采样策略平衡追踪数据量和系统性能{ rate: process.env.NODE_ENV ! production ? 100 : 10, // 生产环境10%其他环境100% priority: true // 高优先级追踪如错误追踪不受采样率限制 }您可以通过全局配置文件自定义采样率具体方法参见全局配置文档。自定义追踪 span当需要为特定业务逻辑添加追踪时可以通过TraceManager对象实现获取TraceManager实例const { traceManager } require(dorapan);创建自定义span// 获取当前活跃的tracer对象 const tracer traceManager.getCurrentTracer(); // 如果不在追踪链路中将返回undefined // 创建并启动自定义span const span tracer.startSpan(custom_span); // 执行业务逻辑... // 完成span追踪 span.finish();核心API参考TraceManager追踪功能的核心管理对象负责tracer的创建和管理Tracer实现OpenTracing规范的追踪器对象Tracer对象完全兼容OpenTracing JavaScript API可以参考其官方文档了解更多高级用法。快速开始使用克隆Pandora.js仓库git clone https://gitcode.com/gh_mirrors/pa/pandora按照项目文档安装依赖并配置在应用中引入Pandora.js全链路追踪功能将自动启用通过Pandora.js的全链路追踪能力开发者可以轻松构建可观测的分布式系统快速定位性能瓶颈和异常问题提升系统可靠性和开发效率。【免费下载链接】pandoraA Manageable, Measurable and Traceable Node.js Application Manager represented by Alibaba powered by TypeScript项目地址: https://gitcode.com/gh_mirrors/pa/pandora创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考