Skip to content

Commit 6cd98fb

Browse files
committed
Testing GCP cloud trace exporter
1 parent 379b77f commit 6cd98fb

File tree

2 files changed

+14
-19
lines changed

2 files changed

+14
-19
lines changed

back/boxtribute_server/app.py

Lines changed: 12 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -102,35 +102,29 @@ def setup_opentelemetry(app):
102102
# https://cloud.google.com/stackdriver/docs/instrumentation/choose-approach#app_engine
103103
# https://cloud.google.com/trace/docs/setup/python-ot
104104
# https://github.com/GoogleCloudPlatform/opentelemetry-operations-python/blob/1f1775886d7314b113acd322633afb278f875687/samples/instrumentation-quickstart/setup_opentelemetry.py
105-
from opentelemetry.sdk.resources import SERVICE_INSTANCE_ID, SERVICE_NAME, Resource
105+
from opentelemetry.sdk.resources import SERVICE_INSTANCE_ID, Resource
106106

107107
# No permission for trace.googleapis.com
108-
# from opentelemetry import trace
108+
from opentelemetry import trace
109109
# from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
110-
# from opentelemetry.sdk.trace import TracerProvider
111-
# from opentelemetry.sdk.trace.export import BatchSpanProcessor
112-
113-
from opentelemetry import metrics
114-
from opentelemetry.exporter.otlp.proto.http.metric_exporter import OTLPMetricExporter
115-
from opentelemetry.sdk.metrics import MeterProvider
116-
from opentelemetry.sdk.metrics.export import PeriodicExportingMetricReader
110+
from opentelemetry.sdk.trace import TracerProvider
111+
from opentelemetry.sdk.trace.export import BatchSpanProcessor
112+
from opentelemetry.propagate import set_global_textmap
113+
from opentelemetry.propagators.cloud_trace_propagator import CloudTraceFormatPropagator
114+
from opentelemetry.exporter.cloud_trace import CloudTraceSpanExporter
117115

118116
resource = Resource.create(attributes={
119117
# Use the PID as the service.instance.id to avoid duplicate timeseries
120118
# from different Gunicorn worker processes.
121119
SERVICE_INSTANCE_ID: f"worker-{os.getpid()}",
122120
})
123121

124-
# tracer_provider = TracerProvider(resource=resource)
125-
# processor = BatchSpanProcessor(OTLPSpanExporter())
126-
# tracer_provider.add_span_processor(processor)
127-
# trace.set_tracer_provider(tracer_provider)
122+
provider = TracerProvider(resource=resource)
123+
processor = BatchSpanProcessor(CloudTraceSpanExporter())
124+
provider.add_span_processor(processor)
128125

129-
reader = PeriodicExportingMetricReader(
130-
OTLPMetricExporter()
131-
)
132-
meter_provider = MeterProvider(metric_readers=[reader], resource=resource)
133-
metrics.set_meter_provider(meter_provider)
126+
trace.set_tracer_provider(provider)
127+
set_global_textmap(CloudTraceFormatPropagator())
134128

135129
from opentelemetry.instrumentation.flask import FlaskInstrumentor
136130
FlaskInstrumentor().instrument_app(app)

back/requirements-deploy.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
google-cloud-logging==3.11.3
22
opentelemetry-sdk==1.27.0
3-
opentelemetry-exporter-otlp-proto-http==1.27.0
43
opentelemetry-instrumentation-flask==0.48b0
4+
opentelemetry-exporter-gcp-trace==1.7.0
5+
opentelemetry-propagator-gcp==1.7.0

0 commit comments

Comments
 (0)