/** * Registers the {@code StackdriverTraceExporter}. * * @param spanExporter the instance of the {@code SpanExporter} where this service is registered. */ @VisibleForTesting static void register(SpanExporter spanExporter, Handler handler) { spanExporter.registerHandler(REGISTER_NAME, handler); }
/** * Registers the {@code InstanaTraceExporter}. * * @param spanExporter the instance of the {@code SpanExporter} where this service is registered. */ @VisibleForTesting static void register(SpanExporter spanExporter, Handler handler) { spanExporter.registerHandler(REGISTER_NAME, handler); }
/** * Registers the {@link JaegerTraceExporter}. * * @param spanExporter the instance of the {@code SpanExporter} where this service is registered. */ @VisibleForTesting static void register(final SpanExporter spanExporter, final SpanExporter.Handler handler) { spanExporter.registerHandler(REGISTER_NAME, handler); }
/** * Registers the {@code LoggingHandler}. * * @param spanExporter the instance of the {@code SpanExporter} where this service is registered. */ @VisibleForTesting static void register(SpanExporter spanExporter) { spanExporter.registerHandler(REGISTER_NAME, HANDLER); }
/** * Registers the {@code OcAgentTraceExporterHandler}. * * @param spanExporter the instance of the {@code SpanExporter} where this service is registered. */ @VisibleForTesting static void register(SpanExporter spanExporter, Handler handler) { spanExporter.registerHandler(REGISTER_NAME, handler); }
/** * Registers the {@code ZipkinTraceExporter}. * * @param spanExporter the instance of the {@code SpanExporter} where this service is registered. */ @VisibleForTesting static void register(SpanExporter spanExporter, Handler handler) { spanExporter.registerHandler(REGISTER_NAME, handler); }
/** * Registers the {@code LoggingHandler}. * * @param spanExporter the instance of the {@code SpanExporter} where this service is registered. */ @VisibleForTesting static void register(SpanExporter spanExporter) { spanExporter.registerHandler(REGISTER_NAME, HANDLER); }
/** * Registers the {@code StackdriverTraceExporter}. * * @param spanExporter the instance of the {@code SpanExporter} where this service is registered. */ @VisibleForTesting static void register(SpanExporter spanExporter, Handler handler) { spanExporter.registerHandler(REGISTER_NAME, handler); }
@Test public void registerUnregisterOcAgentTraceExporter() { OcAgentTraceExporter.register(spanExporter, handler); verify(spanExporter) .registerHandler( eq("io.opencensus.exporter.trace.ocagent.OcAgentTraceExporter"), any(OcAgentTraceExporterHandler.class)); OcAgentTraceExporter.unregister(spanExporter); verify(spanExporter) .unregisterHandler(eq("io.opencensus.exporter.trace.ocagent.OcAgentTraceExporter")); } }
@Test public void registerUnregisterLoggingService() { LoggingTraceExporter.register(spanExporter); verify(spanExporter) .registerHandler( eq("io.opencensus.exporter.trace.logging.LoggingTraceExporter"), any(LoggingExporterHandler.class)); LoggingTraceExporter.unregister(spanExporter); verify(spanExporter) .unregisterHandler(eq("io.opencensus.exporter.trace.logging.LoggingTraceExporter")); } }
@Test public void registerUnregisterJaegerExporter() { JaegerTraceExporter.register(spanExporter, handler); verify(spanExporter) .registerHandler( eq("io.opencensus.exporter.trace.jaeger.JaegerTraceExporter"), same(handler)); JaegerTraceExporter.unregister(spanExporter); verify(spanExporter) .unregisterHandler(eq("io.opencensus.exporter.trace.jaeger.JaegerTraceExporter")); } }
@Test public void registerUnregisterStackdriverExporter() { StackdriverTraceExporter.register(spanExporter, handler); verify(spanExporter) .registerHandler( eq("io.opencensus.exporter.trace.stackdriver.StackdriverTraceExporter"), same(handler)); StackdriverTraceExporter.unregister(spanExporter); verify(spanExporter) .unregisterHandler(eq("io.opencensus.exporter.trace.stackdriver.StackdriverTraceExporter")); } }
@Test public void registerUnregisterZipkinExporter() { ZipkinTraceExporter.register(spanExporter, handler); verify(spanExporter) .registerHandler( eq("io.opencensus.exporter.trace.zipkin.ZipkinTraceExporter"), same(handler)); ZipkinTraceExporter.unregister(spanExporter); verify(spanExporter) .unregisterHandler(eq("io.opencensus.exporter.trace.zipkin.ZipkinTraceExporter")); } }
@Test public void registerUnregisterInstanaExporter() { InstanaTraceExporter.register(spanExporter, handler); verify(spanExporter) .registerHandler( eq("io.opencensus.exporter.trace.instana.InstanaTraceExporter"), same(handler)); InstanaTraceExporter.unregister(spanExporter); verify(spanExporter) .unregisterHandler(eq("io.opencensus.exporter.trace.instana.InstanaTraceExporter")); } }
/** * Creates and registers the Datadog Trace exporter to the OpenCensus library. Only one Datadog * exporter can be registered at any point. * * @param configuration the {@code DatadogTraceConfiguration} used to create the exporter. * @throws MalformedURLException if the agent URL is invalid. * @since 0.19 */ public static void createAndRegister(DatadogTraceConfiguration configuration) throws MalformedURLException { synchronized (monitor) { checkState(handler == null, "Datadog exporter is already registered."); String agentEndpoint = configuration.getAgentEndpoint(); String service = configuration.getService(); String type = configuration.getType(); final DatadogExporterHandler exporterHandler = new DatadogExporterHandler(agentEndpoint, service, type); handler = exporterHandler; Tracing.getExportComponent() .getSpanExporter() .registerHandler(REGISTER_NAME, exporterHandler); } }
@Before public void setup() { handler = new TestHandler(); SpanExporter exporter = Tracing.getExportComponent().getSpanExporter(); exporter.registerHandler("testing", handler); TraceParams params = Tracing.getTraceConfig() .getActiveTraceParams() .toBuilder() .setSampler(Samplers.alwaysSample()) .build(); Tracing.getTraceConfig().updateActiveTraceParams(params); }