Launcher, Configuration Layer for OpenTelemetry
Project description
Launcher, an OpenTelemetry Configuration Layer 🚀
NOTE: the code in this repo is currently in alpha and will likely change
What is Launcher?
Launcher is a configuration layer that chooses default values for configuration options that many OpenTelemetry users want. It provides a single function in each language to simplify discovery of the options and components available to users. The goal of Launcher is to help users that aren't familiar with OpenTelemetry quickly ramp up on what they need to get going and instrument.
Getting started
pip install opentelemetry-launcher
Configure
Minimal setup
from opentelemetry.launcher import configure_opentelemetry
configure_opentelemetry(
service_name="service-123",
access_token="my-token", # optional
)
tracer = trace.get_tracer(__name__)
with tracer.start_as_current_span("foo") as span:
span.set_attribute("attr1", "valu1")
with tracer.start_as_current_span("bar"):
with tracer.start_as_current_span("baz"):
print("Hello world from OpenTelemetry Python!")
Additional tracer options
configure_opentelemetry(
service_name="service-123",
service_version="1.2.3",
access_token="my-token",
span_exporter_endpoint="ingest.lightstep.com:443",
metric_exporter_endpoint="ingest.lightstep.com:443/metrics",
log_level=debug,
span_exporter_insecure=False,
metric_exporter_insecure=False,
)
Configuration Options
Config | Env Variable | Required | Default |
---|---|---|---|
service_name | LS_SERVICE_NAME | y | - |
service_version | LS_SERVICE_VERSION | n | unknown |
access_token | LS_ACCESS_TOKEN | n | - |
span_exporter_endpoint | OTEL_EXPORTER_OTLP_SPAN_ENDPOINT | n | ingest.lightstep.com:443 |
span_exporter_insecure | OTEL_EXPORTER_OTLP_SPAN_INSECURE | n | False |
metric_exporter_endpoint | OTEL_EXPORTER_OTLP_METRIC_ENDPOINT | n | ingest.lightstep.com:443/metrics |
metric_exporter_insecure | OTEL_EXPORTER_OTLP_METRIC_INSECURE | n | False |
propagator | OTEL_PROPAGATORS | n | b3 |
resource_labels | OTEL_RESOURCE_LABELS | n | - |
log_level | OTEL_LOG_LEVEL | n | error |
Principles behind Launcher
100% interoperability with OpenTelemetry
One of the key principles behind putting together Launcher is to make lives of OpenTelemetry users easier, this means that there is no special configuration that requires users to install Launcher in order to use OpenTelemetry. It also means that any users of Launcher can leverage the flexibility of configuring OpenTelemetry as they need.
Opinionated configuration
Although we understand that not all languages use the same format for configuration, we find this annoying. We decided that Launcher would allow users to use the same configuration file across all languages. In this case, we settled for YAML
as the format, which was inspired by the OpenTelemetry Collector.
Validation
Another decision we made with launcher is to provide end users with a layer of validation of their configuration. This provides us the ability to give feedback to our users faster, so they can start collecting telemetry sooner.
Start using it today in Go, Java, Javascript and Python and let us know what you think!
Made with @ Lightstep
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
File details
Details for the file opentelemetry-launcher-0.1b1.tar.gz
.
File metadata
- Download URL: opentelemetry-launcher-0.1b1.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90b63b9a48d08a4d88fb15988b65cfd228c493688417c5053cbd9051cbdcfb02 |
|
MD5 | cb6f95167318b02a3b0f188407f9d9ce |
|
BLAKE2b-256 | 4a9e293edd6c0d0994eca7fe020ea7e50ca84b5cf49f1a8386547d063328bafc |
File details
Details for the file opentelemetry_launcher-0.1b1-py3-none-any.whl
.
File metadata
- Download URL: opentelemetry_launcher-0.1b1-py3-none-any.whl
- Upload date:
- Size: 12.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ad48f9dab3816245d3a90e0515f2744dc6cc2a1898c384ea688fdb13694d68c |
|
MD5 | 18964f40c93a41780734a883f2b73db4 |
|
BLAKE2b-256 | 5fcc8ce99db74c7187236bb9c9f7f48bf74e12e34022f409ef2124084ec91357 |