对请求的opentracing支持

Requests-OpenTracing的Python项目详细描述


此包允许通过The OpenTracing Project跟踪RequestsSession中的http请求。 一旦一个生产系统与真正的并发性竞争,或者分裂成许多服务,关键的(和 以前容易的)任务变得困难:面向用户的延迟优化,后端的根本原因分析 错误,关于现在分布式系统不同部分的通信,等等分布式跟踪 在从移动/浏览器到 微服务。

由于核心服务和库采用opentracing,应用程序构建器不再负担 向自己的代码中添加基本跟踪工具的任务。这样,开发人员可以 他们的应用程序使用他们喜欢的工具,并从内置跟踪工具中受益。 对于主要分布式跟踪系统存在opcCANCE实现,可以绑定或交换。 一行配置更改。

如果您想了解有关底层python api的更多信息,请访问pythonsource code

安装

运行以下命令:

$ pip install requests-opentracing

用法

提供的requests.Session子类允许使用opentracing api跟踪http方法。 它只需要使用实例初始化一个SessionTracing实例 作为一个标准的请求会话。

初始化

SessionTracing获取由opentracing支持的Tracer实例和可选的 为每个创建的范围提供所需标记的字典。您还可以指定是否希望 当前跟踪上下文将通过HTTP头与客户端请求一起传播。创建 SessionTracing对象,可以直接传入跟踪程序对象,也可以默认为 opentracing.tracer应用程序中其他位置设置的全局跟踪程序:

fromrequests_opentracingimportSessionTracingopentracing_tracer=# some OpenTracing tracer implementationtraced_session=SessionTracing(opentracing_tracer,propagate=True,# propagation allows distributed tracingspan_tags=dict(my_helpful='tag'))# in upstream services you control.resp=traced_session.get(my_url)

fromrequests_opentracingimportSessionTracingimportopentracingimportrequestsopentracing.tracer=# some OpenTracing tracer implementationtraced_session=SessionTracing()# default to opentracing.tracer

更多信息

如果您有兴趣进一步了解opentracing标准,请访问 opentracing.iojoin the mailing list。如果您想实现opentracing 在您的项目和需要帮助,请随时给我们发送一个注在community@opentracing.io

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java将json反序列化为列表<Object>   Spring框架中的java回滚机制   java如何使反射在JDK 16及更高版本上工作?   java终结器如何导致可移植性问题?   java Hibernate使用ON子句或alternative左连接获取   java aws codebuild maven项目失败“保存的引用不明确”   并发Java多线程读取单个大文件   java如果输入仅由1和0组成,请将其从二进制转换为十进制   java在RealmRecyServiceAdapter上调用updateData实际上并没有更新数据   javajsf:h commandlink操作是打开同一页面的新弹出窗口,而不是调用bean方法   java我们可以为其中一个变量同时添加@Column和@OneToOne注释吗?   java JBoss AS 7自定义登录模块从未调用   如何检查Java中是否存在数组中的元素   java Spring重试:未调用带@Recover注释的方法   如何解析带有Java错误HTTP格式问题的php消息   java如何在weblogic中部署可选的包共享库   java将配置单元中的数据集保存为avro格式的合并列   用Guice注入java泛型   java单选按钮组和额外选项   javajackson:如何读取字符串作为列表?