New Relic OpenTelemetry 导出器
项目描述
新的 Relic OpenTelemetry Python 导出器
一个 OpenTelemetry 导出器,用于使用 New Relic Python Telemetry SDK 将 span 发送到 New Relic。目前,支持从 OpenTelemetry v0.15b0 开始的跨度。有关如何将 OpenTelemetry 数据映射到 New Relic 数据的详细信息,请参阅我们的导出器规范文档中的文档。
安装
首先,必须安装opentelemetry-ext-newrelic包。通过 pip 安装:
$ pip install opentelemetry-ext-newrelic
如果失败,请从其 GitHub 页面下载该库并使用以下命令安装它:
$ python setup.py install
入门
为了使用导出器,您需要 使用Insights Insert API Key设置NEW_RELIC_INSERT_KEY环境变量。
使用跨度导出器
以下代码示例假定您已设置 NEW_RELIC_INSERT_KEY环境变量并安装了以下软件包:
opentelemetry-ext-newrelic
import os
from opentelemetry import trace
from opentelemetry.sdk.resources import Resource
from opentelemetry.sdk.trace.export import BatchExportSpanProcessor
from opentelemetry_ext_newrelic import NewRelicSpanExporter
from opentelemetry.sdk.trace import TracerProvider
trace.set_tracer_provider(
TracerProvider(resource=Resource.create({"service.name": "otel-python"}))
)
trace.get_tracer_provider().add_span_processor(
BatchExportSpanProcessor(
NewRelicSpanExporter(
os.environ["NEW_RELIC_INSERT_KEY"],
),
schedule_delay_millis=500,
)
)
tracer = trace.get_tracer(__name__)
with tracer.start_as_current_span("foo"):
with tracer.start_as_current_span("bar"):
print("Hello World from OpenTelemetry Python!")
使用带有自动仪表的跨度导出器
以下代码示例假定您已设置 NEW_RELIC_INSERT_KEY环境变量并安装了以下软件包:
opentelemetry-ext-newrelic
opentelemetry-instrumentation-flask
烧瓶
import os
from opentelemetry import trace
from opentelemetry.instrumentation.flask import FlaskInstrumentor
from opentelemetry.sdk.resources import Resource
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchExportSpanProcessor
from opentelemetry_ext_newrelic import NewRelicSpanExporter
from flask import Flask
app = Flask(__name__)
FlaskInstrumentor().instrument_app(app)
trace.set_tracer_provider(
TracerProvider(resource=Resource.create({"service.name": "otel-python-flask"}))
)
trace.get_tracer_provider().add_span_processor(
BatchExportSpanProcessor(
NewRelicSpanExporter(os.environ["NEW_RELIC_INSERT_KEY"]),
schedule_delay_millis=500,
)
)
@app.route("/")
def hello_world():
return "Hello World!"
@app.route("/error")
def raise_500():
raise RuntimeError("Something happened!")
if __name__ == "__main__":
app.run(port=8080)
查找和使用您的数据
有关如何在 New Relic 中查找和查询数据的提示,请参阅查找跟踪/跨度数据。
有关一般查询信息,请参阅: -查询 New Relic 数据 - NRQL 简介
支持
New Relic 主持和主持一个在线论坛,客户可以在其中与 New Relic 员工以及其他客户互动,以获得帮助并分享最佳实践。与所有官方 New Relic 开源项目一样,New Relic Explorers Hub 中有一个相关的社区主题。您可以在此处找到该项目的主题/主题:
支持渠道
New Relic Documentation : 使用我们平台的综合指南
New Relic 社区:解决问题的最佳场所
New Relic Developer : 用于构建自定义可观察性应用程序的资源
New Relic University : 为各个级别的 New Relic 用户提供一系列在线培训
贡献
我们鼓励您为改进 opentelemetry-exporter-python 做出贡献!请记住,当您提交拉取请求时,您需要使用 CLA-Assistant 通过点击签署 CLA。每个项目您只需签署一次 CLA。如果您有任何问题,或执行我们的公司 CLA,如果您的贡献是代表公司,请给我们发送电子邮件至 opensource @ newrelic 。com。
关于漏洞的说明
正如我们的安全政策所述,New Relic 致力于保护我们客户及其数据的隐私和安全。我们认为,由安全研究人员提供协调披露并与安全社区互动是实现我们安全目标的重要手段。
如果您认为您在此项目或 New Relic 的任何产品或网站中发现了安全漏洞,我们欢迎并非常感谢您通过HackerOne向 New Relic 报告。
执照
opentelemetry-exporter-python 在Apache 2.0许可下获得许可。
限制
New Relic Telemetry API 是速率受限的。请参考文档以了解有关速率限制细节的New Relic Trace API 要求和 限制。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
内置分布
opentelemetry -ext-newrelic-0.1.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2610dfd5c69d63c87a124009f7fd188293737be241dff66972e88f3816b2d19b |
|
MD5 | 37f0d05c67d20782d97092a2169ff259 |
|
布莱克2-256 | fc35bb15eabf1aa1794f6a39fc024e6e0b672df8a3844c8de0a863926c51422f |
opentelemetry_ext_newrelic -0.1.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 386718c0ed28d0f45ff65bcd28f869048f92f454dcc612492c8f31bcb7d5529c |
|
MD5 | 2cf7ae73e7e426278c39fe501da86688 |
|
布莱克2-256 | cae3edac1c4259e0cf61294cb99c92d5e21fad718154f0f53b62cecfc5115265 |