Skip to content

Commit 0e24fbe

Browse files
committed
handle removal of the event api
1 parent 88ac5a6 commit 0e24fbe

File tree

2 files changed

+22
-19
lines changed
  • instrumentation/runtime-telemetry/runtime-telemetry-java8/javaagent/src/main/java/io/opentelemetry/instrumentation/javaagent/runtimemetrics/java8
  • testing-common/src/main/java/io/opentelemetry/javaagent/testing/common

2 files changed

+22
-19
lines changed

instrumentation/runtime-telemetry/runtime-telemetry-java8/javaagent/src/main/java/io/opentelemetry/instrumentation/javaagent/runtimemetrics/java8/JarAnalyzer.java

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@
1313
import io.opentelemetry.api.common.AttributeKey;
1414
import io.opentelemetry.api.common.Attributes;
1515
import io.opentelemetry.api.common.AttributesBuilder;
16-
import io.opentelemetry.api.incubator.events.EventLogger;
17-
import io.opentelemetry.api.incubator.events.GlobalEventLoggerProvider;
16+
import io.opentelemetry.api.incubator.logs.ExtendedLogRecordBuilder;
1817
import io.opentelemetry.instrumentation.runtimemetrics.java8.internal.JmxRuntimeMetricsUtil;
1918
import io.opentelemetry.sdk.common.Clock;
2019
import io.opentelemetry.sdk.internal.DaemonThreadFactory;
@@ -57,14 +56,16 @@ final class JarAnalyzer implements ClassFileTransformer {
5756
private final Set<URI> seenUris = new HashSet<>();
5857
private final BlockingQueue<URL> toProcess = new LinkedBlockingDeque<>();
5958

60-
private JarAnalyzer(OpenTelemetry unused, int jarsPerSecond) {
61-
// TODO(jack-berg): Use OpenTelemetry to obtain EventLogger when event API is stable
62-
EventLogger eventLogger =
63-
GlobalEventLoggerProvider.get()
64-
.eventLoggerBuilder(JmxRuntimeMetricsUtil.getInstrumentationName())
65-
.setInstrumentationVersion(JmxRuntimeMetricsUtil.getInstrumentationVersion())
66-
.build();
67-
Worker worker = new Worker(eventLogger, toProcess, jarsPerSecond);
59+
private JarAnalyzer(OpenTelemetry openTelemetry, int jarsPerSecond) {
60+
ExtendedLogRecordBuilder logRecordBuilder =
61+
(ExtendedLogRecordBuilder)
62+
openTelemetry
63+
.getLogsBridge()
64+
.loggerBuilder(JmxRuntimeMetricsUtil.getInstrumentationName())
65+
.setInstrumentationVersion(JmxRuntimeMetricsUtil.getInstrumentationVersion())
66+
.build()
67+
.logRecordBuilder();
68+
Worker worker = new Worker(logRecordBuilder, toProcess, jarsPerSecond);
6869
Thread workerThread =
6970
new DaemonThreadFactory(JarAnalyzer.class.getSimpleName() + "_WorkerThread")
7071
.newThread(worker);
@@ -152,11 +153,12 @@ private void handle(ProtectionDomain protectionDomain) {
152153

153154
private static final class Worker implements Runnable {
154155

155-
private final EventLogger eventLogger;
156+
private final ExtendedLogRecordBuilder eventLogger;
156157
private final BlockingQueue<URL> toProcess;
157158
private final io.opentelemetry.sdk.internal.RateLimiter rateLimiter;
158159

159-
private Worker(EventLogger eventLogger, BlockingQueue<URL> toProcess, int jarsPerSecond) {
160+
private Worker(
161+
ExtendedLogRecordBuilder eventLogger, BlockingQueue<URL> toProcess, int jarsPerSecond) {
160162
this.eventLogger = eventLogger;
161163
this.toProcess = toProcess;
162164
this.rateLimiter =
@@ -166,7 +168,7 @@ private Worker(EventLogger eventLogger, BlockingQueue<URL> toProcess, int jarsPe
166168

167169
/**
168170
* Continuously poll the {@link #toProcess} for archive {@link URL}s, and process each wit
169-
* {@link #processUrl(EventLogger, URL)}.
171+
* {@link #processUrl(ExtendedLogRecordBuilder, URL)}.
170172
*/
171173
@Override
172174
public void run() {
@@ -200,7 +202,7 @@ public void run() {
200202
* Process the {@code archiveUrl}, extracting metadata from it and emitting an event with the
201203
* content.
202204
*/
203-
static void processUrl(EventLogger eventLogger, URL archiveUrl) {
205+
static void processUrl(ExtendedLogRecordBuilder eventLogger, URL archiveUrl) {
204206
JarDetails jarDetails;
205207
try {
206208
jarDetails = JarDetails.forUrl(archiveUrl);
@@ -239,6 +241,6 @@ static void processUrl(EventLogger eventLogger, URL archiveUrl) {
239241
builder.put(PACKAGE_CHECKSUM, packageChecksum);
240242
builder.put(PACKAGE_CHECKSUM_ALGORITHM, "SHA1");
241243

242-
eventLogger.builder(EVENT_NAME_INFO).setAttributes(builder.build()).emit();
244+
eventLogger.setEventName(EVENT_NAME_INFO).setAllAttributes(builder.build()).emit();
243245
}
244246
}

testing-common/src/main/java/io/opentelemetry/javaagent/testing/common/AgentTestingExporterAccess.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSummaryData;
4242
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSummaryPointData;
4343
import io.opentelemetry.sdk.metrics.internal.data.ImmutableValueAtQuantile;
44-
import io.opentelemetry.sdk.testing.logs.TestLogRecordData;
44+
import io.opentelemetry.sdk.testing.logs.internal.TestExtendedLogRecordData;
4545
import io.opentelemetry.sdk.testing.trace.TestSpanData;
4646
import io.opentelemetry.sdk.trace.data.EventData;
4747
import io.opentelemetry.sdk.trace.data.LinkData;
@@ -416,8 +416,8 @@ private static LogRecordData createLogData(
416416
LogRecord logRecord,
417417
io.opentelemetry.sdk.resources.Resource resource,
418418
InstrumentationScopeInfo instrumentationScopeInfo) {
419-
TestLogRecordData.Builder builder =
420-
TestLogRecordData.builder()
419+
TestExtendedLogRecordData.Builder builder =
420+
TestExtendedLogRecordData.builder()
421421
.setResource(resource)
422422
.setInstrumentationScopeInfo(instrumentationScopeInfo)
423423
.setTimestamp(logRecord.getTimeUnixNano(), TimeUnit.NANOSECONDS)
@@ -429,7 +429,8 @@ private static LogRecordData createLogData(
429429
TraceState.getDefault()))
430430
.setSeverity(fromProto(logRecord.getSeverityNumber()))
431431
.setSeverityText(logRecord.getSeverityText())
432-
.setAttributes(fromProto(logRecord.getAttributesList()));
432+
.setAttributes(fromProto(logRecord.getAttributesList()))
433+
.setEventName(logRecord.getEventName());
433434
if (canUseValue) {
434435
builder.setBodyValue(getBodyValue(logRecord.getBody()));
435436
} else {

0 commit comments

Comments
 (0)