component_d.cc 896 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. // Copyright The OpenTelemetry Authors
  2. // SPDX-License-Identifier: Apache-2.0
  3. #include "opentelemetry/nostd/shared_ptr.h"
  4. #include "opentelemetry/trace/provider.h"
  5. #include "opentelemetry/trace/scope.h"
  6. #include "opentelemetry/trace/tracer.h"
  7. #include "opentelemetry/trace/tracer_provider.h"
  8. #define BUILD_COMPONENT_D
  9. #include "component_d.h"
  10. namespace trace = opentelemetry::trace;
  11. namespace nostd = opentelemetry::nostd;
  12. static nostd::shared_ptr<trace::Tracer> get_tracer()
  13. {
  14. auto provider = trace::Provider::GetTracerProvider();
  15. return provider->GetTracer("D", "40.4");
  16. }
  17. static void f1()
  18. {
  19. auto scoped_span = trace::Scope(get_tracer()->StartSpan("D::f1"));
  20. }
  21. static void f2()
  22. {
  23. auto scoped_span = trace::Scope(get_tracer()->StartSpan("D::f2"));
  24. f1();
  25. f1();
  26. }
  27. void do_something_in_d()
  28. {
  29. auto scoped_span = trace::Scope(get_tracer()->StartSpan("D::library"));
  30. f2();
  31. }