An all-in-one package for python projects used to enable OpenTelemetry auto-instrumentation
Project description
Sumo Logic OpenTelemetry Python
An all-in-one package for python projects used to enable OpenTelemetry auto-instrumentation.
Includes all supported propagators and auto-instrumentation plugins.
Installation
Following command will installation the package with all instrumented packages.
pip install sumologic-opentelemetry[all]
Installation without instrumented packages
pip install sumologic-opentelemetry
Instrumented packages needs to be installed per application. Command bellow executed in the root directory of your Python application will install corresponding instrumented packages used by the application.
opentelemetry-bootstrap --action=install
Instrumented packages
This package installs all officially supported auto-instrumentation packages as well as commonly used propagators and exporters:
Instrumented packages
Following list of instrumented packages is optional, but recommended for easy installation:
- opentelemetry-instrumentation-aws-lambda
- opentelemetry-instrumentation-dbapi
- opentelemetry-instrumentation-logging
- opentelemetry-instrumentation-sqlite3
- opentelemetry-instrumentation-urllib
- opentelemetry-instrumentation-wsgi
- opentelemetry-instrumentation-aiohttp-client
- opentelemetry-instrumentation-aiopg
- opentelemetry-instrumentation-asgi
- opentelemetry-instrumentation-asyncpg
- opentelemetry-instrumentation-boto
- opentelemetry-instrumentation-botocore
- opentelemetry-instrumentation-celery
- opentelemetry-instrumentation-django
- opentelemetry-instrumentation-elasticsearch
- opentelemetry-instrumentation-falcon
- opentelemetry-instrumentation-fastapi
- opentelemetry-instrumentation-flask
- opentelemetry-instrumentation-grpc
- opentelemetry-instrumentation-httpx
- opentelemetry-instrumentation-jinja2
- opentelemetry-instrumentation-kafka-python
- opentelemetry-instrumentation-mysql
- opentelemetry-instrumentation-pika
- opentelemetry-instrumentation-psycopg2
- opentelemetry-instrumentation-pymemcache
- opentelemetry-instrumentation-pymongo
- opentelemetry-instrumentation-pymysql
- opentelemetry-instrumentation-pyramid
- opentelemetry-instrumentation-redis
- opentelemetry-instrumentation-requests
- opentelemetry-instrumentation-sklearn
- opentelemetry-instrumentation-sqlalchemy
- opentelemetry-instrumentation-starlette
- opentelemetry-instrumentation-tornado
- opentelemetry-instrumentation-urllib3
Propagators
Following propagators are installed as a dependency.
- opentelemetry-exporter-otlp-proto-http
- opentelemetry-propagator-jaeger
- opentelemetry-propagator-b3
- opentelemetry-propagator-aws-xray
- opentelemetry-propagator-ot-trace
Other requirements
Application execution
Execute the following command. The command will also print the opentelemetry config used.
sumologic-opentelemetry-instrument python3 SCRIPT_NAME.py
Environment variables config
The wrapper command checks for the following basic OpenTelemetry env variables that are required for the collected data to be useful within Sumo Logic:
OTEL_PROPAGATORS
OTEL_TRACES_EXPORTER
OTEL_SERVICE_NAME
OTEL_EXPORTER_OTLP_ENDPOINT
OTEL_RESOURCE_ATTRIBUTES
Propagators
By default, all propgators are enabled (OTEL_PROPAGATORS=tracecontext,baggage,b3,b3multi,jaeger,xray,ottrace
).
Exporter
By default, exported is set to OTLP HTTP (OTEL_TRACES_EXPORTER=otlp_proto_http
).
Service name
By default, service name will not be set OTEL_SERVICE_NAME=
.
Overwrite the env var with a string value representing service business logic, such as "FinanceServiceCall".
This will appear as a tracing service name in Sumo Logic.
Endpoint
By default, endpoint is not set (OTEL_EXPORTER_OTLP_ENDPOINT=
). Represents the endpoint where telemetry data will be sent.
Change to appropriate endpoint, for example OTEL_EXPORTER_OTLP_ENDPOINT=http://collection-sumologic-otelcol.sumologic:55681
Resource attributes
By default, resource attributes are not set (OTEL_RESOURCE_ATTRIBUTES=
).
Is used to configure the application name (i.e. OTEL_RESOURCE_ATTRIBUTES=application=APPLICATION_NAME
).
The application name will appear as a tracing application name in Sumo Logic.
Additional attributes can be added here as comma separated key=value pairs.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for sumologic-opentelemetry-1.9.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 469019e27a6a7d74118db6b12b107edf02dd2e59ae05ff170908ce29ef2e4f48 |
|
MD5 | 61ea61e628376209966fcbfe87a49820 |
|
BLAKE2b-256 | 8b75a1e90d327eeef0f2429bd183a28e9840642ebff92e268e28d6752f3d0a22 |
Hashes for sumologic_opentelemetry-1.9.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d124ac5cd5375ed3d4a10c6b067d391c6b56500d3dff7406b4291a8a95512ad4 |
|
MD5 | 1838766fd48d80b29ea53903ac6abcd8 |
|
BLAKE2b-256 | dd9f969cf7170baf885250f16ad017129d82a502c03a102df6eea071e023e50d |