import io.opentelemetry.api.trace.Span; import io.opentelemetry.api.trace.Tracer; import io.opentelemetry.api.trace.propagation.W3CTraceContextPropagator; public class TracingExample { public static void main(String[] args) { Tracer tracer = Tracing.getGlobalTracer("my-service"); Span span = tracer.spanBuilder("my-span").startSpan(); span.setAttribute("key", "value"); try { } catch (Exception e) { span.recordException(e); } finally { span.end(); } } } import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.api.common.Attributes; import io.opentelemetry.api.trace.Span; import io.opentelemetry.api.trace.Tracer; import io.opentelemetry.sdk.logging.data.LogRecordBuilder; import io.opentelemetry.sdk.logging.export.BatchLogProcessor; import io.opentelemetry.sdk.logging.export.LoggingExporter; import io.opentelemetry.sdk.logging.spi.BatchLogProcessorBuilder; import io.opentelemetry.sdk.trace.SdkTracerProviderBuilder; public class LoggingExample { public static void main(String[] args) { Logger logger = Logger.getLogger(LoggingExample.class.getName()); Tracer tracer = Tracing.getGlobalTracer("my-service"); BatchLogProcessor logProcessor = createLogProcessor(); Span span = tracer.spanBuilder("my-span").startSpan(); LogRecordBuilder logRecordBuilder = LoggingExporter.getLogRecordBuilder(); logRecordBuilder.setSeverity(Level.INFO); logRecordBuilder.setName("my-log"); logRecordBuilder.setBody("This is a log message"); logRecordBuilder.setAttributes(Attributes.of(AttributeKey.stringKey("key"), "value")); span.record(logRecordBuilder.build()); span.end(); } private static BatchLogProcessor createLogProcessor() { BatchLogProcessorBuilder logProcessorBuilder = LoggingExporter.getBatchLogProcessorBuilder(); logProcessorBuilder.setExporter(myExporter); return logProcessorBuilder.build(); } }


上一篇:
下一篇:
切换中文