Skip to content

Commit

Permalink
Testing GCP cloud trace exporter
Browse files Browse the repository at this point in the history
  • Loading branch information
jamescrowley committed Nov 8, 2024
1 parent 379b77f commit fee09e4
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 15 deletions.
25 changes: 11 additions & 14 deletions back/boxtribute_server/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,12 +105,13 @@ def setup_opentelemetry(app):
from opentelemetry.sdk.resources import SERVICE_INSTANCE_ID, SERVICE_NAME, Resource

# No permission for trace.googleapis.com
# from opentelemetry import trace
from opentelemetry import trace
# from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
# from opentelemetry.sdk.trace import TracerProvider
# from opentelemetry.sdk.trace.export import BatchSpanProcessor

from opentelemetry import metrics
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.propagate import set_global_textmap
from opentelemetry.propagators.cloud_trace_propagator import CloudTraceFormatPropagator
from opentelemetry.exporter.cloud_trace import CloudTraceSpanExporter
from opentelemetry.exporter.otlp.proto.http.metric_exporter import OTLPMetricExporter
from opentelemetry.sdk.metrics import MeterProvider
from opentelemetry.sdk.metrics.export import PeriodicExportingMetricReader
Expand All @@ -121,16 +122,12 @@ def setup_opentelemetry(app):
SERVICE_INSTANCE_ID: f"worker-{os.getpid()}",
})

# tracer_provider = TracerProvider(resource=resource)
# processor = BatchSpanProcessor(OTLPSpanExporter())
# tracer_provider.add_span_processor(processor)
# trace.set_tracer_provider(tracer_provider)
provider = TracerProvider(resource=resource)
processor = BatchSpanProcessor(CloudTraceSpanExporter())
provider.add_span_processor(processor)

reader = PeriodicExportingMetricReader(
OTLPMetricExporter()
)
meter_provider = MeterProvider(metric_readers=[reader], resource=resource)
metrics.set_meter_provider(meter_provider)
trace.set_tracer_provider(provider)
set_global_textmap(CloudTraceFormatPropagator())

from opentelemetry.instrumentation.flask import FlaskInstrumentor
FlaskInstrumentor().instrument_app(app)
2 changes: 1 addition & 1 deletion back/requirements-deploy.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
google-cloud-logging==3.11.3
opentelemetry-sdk==1.27.0
opentelemetry-exporter-otlp-proto-http==1.27.0
opentelemetry-instrumentation-flask==0.48b0
opentelemetry-exporter-gcp-trace==1.7.0

0 comments on commit fee09e4

Please sign in to comment.