diff options
Diffstat (limited to 'exporters')
12 files changed, 72 insertions, 56 deletions
diff --git a/exporters/stats/prometheus/build.gradle b/exporters/stats/prometheus/build.gradle index 5c821f42..0fa0dec6 100644 --- a/exporters/stats/prometheus/build.gradle +++ b/exporters/stats/prometheus/build.gradle @@ -13,5 +13,6 @@ dependencies { testCompile project(':opencensus-api') - signature "org.codehaus.mojo.signature:java17:+@signature" + signature "org.codehaus.mojo.signature:java17:1.0@signature" + signature "net.sf.androidscents.signature:android-api-level-14:4.0_r4@signature" }
\ No newline at end of file diff --git a/exporters/stats/prometheus/src/main/java/io/opencensus/exporter/stats/prometheus/PrometheusStatsCollector.java b/exporters/stats/prometheus/src/main/java/io/opencensus/exporter/stats/prometheus/PrometheusStatsCollector.java index 5c089ab2..d555c92b 100644 --- a/exporters/stats/prometheus/src/main/java/io/opencensus/exporter/stats/prometheus/PrometheusStatsCollector.java +++ b/exporters/stats/prometheus/src/main/java/io/opencensus/exporter/stats/prometheus/PrometheusStatsCollector.java @@ -101,7 +101,8 @@ public final class PrometheusStatsCollector extends Collector implements Collect .setRecordEvents(true) .startSpan(); span.addAnnotation("Collect Prometheus Metric Samples."); - try (Scope scope = tracer.withSpan(span)) { + Scope scope = tracer.withSpan(span); + try { for (View view : viewManager.getAllExportedViews()) { if (containsDisallowedLeLabelForHistogram( convertToLabelNames(view.getColumns()), @@ -125,6 +126,7 @@ public final class PrometheusStatsCollector extends Collector implements Collect } span.addAnnotation("Finish collecting Prometheus Metric Samples."); } finally { + scope.close(); span.end(); } return samples; @@ -140,7 +142,8 @@ public final class PrometheusStatsCollector extends Collector implements Collect .setRecordEvents(true) .startSpan(); span.addAnnotation("Describe Prometheus Metrics."); - try (Scope scope = tracer.withSpan(span)) { + Scope scope = tracer.withSpan(span); + try { for (View view : viewManager.getAllExportedViews()) { try { samples.add(PrometheusExportUtils.createDescribableMetricFamilySamples(view)); @@ -153,6 +156,7 @@ public final class PrometheusStatsCollector extends Collector implements Collect } span.addAnnotation("Finish describing Prometheus Metrics."); } finally { + scope.close(); span.end(); } return samples; diff --git a/exporters/stats/signalfx/build.gradle b/exporters/stats/signalfx/build.gradle index d35817b7..9dcb1ef7 100644 --- a/exporters/stats/signalfx/build.gradle +++ b/exporters/stats/signalfx/build.gradle @@ -17,5 +17,6 @@ dependencies { testCompile project(':opencensus-api') - signature "org.codehaus.mojo.signature:java17:+@signature" + signature "org.codehaus.mojo.signature:java17:1.0@signature" + signature "net.sf.androidscents.signature:android-api-level-14:4.0_r4@signature" } diff --git a/exporters/stats/signalfx/src/main/java/io/opencensus/exporter/stats/signalfx/SignalFxStatsExporterWorkerThread.java b/exporters/stats/signalfx/src/main/java/io/opencensus/exporter/stats/signalfx/SignalFxStatsExporterWorkerThread.java index 3906b609..348778e2 100644 --- a/exporters/stats/signalfx/src/main/java/io/opencensus/exporter/stats/signalfx/SignalFxStatsExporterWorkerThread.java +++ b/exporters/stats/signalfx/src/main/java/io/opencensus/exporter/stats/signalfx/SignalFxStatsExporterWorkerThread.java @@ -69,8 +69,9 @@ final class SignalFxStatsExporterWorkerThread extends Thread { } @VisibleForTesting - void export() { - try (Session session = sender.createSession()) { + void export() throws IOException { + Session session = sender.createSession(); + try { for (View view : views.getAllExportedViews()) { ViewData data = views.getView(view.getName()); if (data == null) { @@ -81,8 +82,8 @@ final class SignalFxStatsExporterWorkerThread extends Thread { session.setDatapoint(datapoint); } } - } catch (IOException e) { - // Does not happen, flush/close errors are communicated through the sender's error handlers. + } finally { + session.close(); } } diff --git a/exporters/stats/stackdriver/build.gradle b/exporters/stats/stackdriver/build.gradle index ebf59b70..72a03819 100644 --- a/exporters/stats/stackdriver/build.gradle +++ b/exporters/stats/stackdriver/build.gradle @@ -25,5 +25,5 @@ dependencies { testCompile project(':opencensus-api') - signature "org.codehaus.mojo.signature:java17:+@signature" + signature "org.codehaus.mojo.signature:java17:1.0@signature" }
\ No newline at end of file diff --git a/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorker.java b/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorker.java index 7873e29e..ecafeab0 100644 --- a/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorker.java +++ b/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorker.java @@ -130,41 +130,39 @@ final class StackdriverExporterWorker implements Runnable { Span span = tracer.getCurrentSpan(); span.addAnnotation("Create Stackdriver Metric."); - try (Scope scope = tracer.withSpan(span)) { - // TODO(songya): don't need to create MetricDescriptor for RpcViewConstants once we defined - // canonical metrics. Registration is required only for custom view definitions. Canonical - // views should be pre-registered. - MetricDescriptor metricDescriptor = - StackdriverExportUtils.createMetricDescriptor(view, projectId, domain, displayNamePrefix); - if (metricDescriptor == null) { - // Don't register interval views in this version. - return false; - } + // TODO(songya): don't need to create MetricDescriptor for RpcViewConstants once we defined + // canonical metrics. Registration is required only for custom view definitions. Canonical + // views should be pre-registered. + MetricDescriptor metricDescriptor = + StackdriverExportUtils.createMetricDescriptor(view, projectId, domain, displayNamePrefix); + if (metricDescriptor == null) { + // Don't register interval views in this version. + return false; + } - CreateMetricDescriptorRequest request = - CreateMetricDescriptorRequest.newBuilder() - .setName(projectName.toString()) - .setMetricDescriptor(metricDescriptor) - .build(); - try { - metricServiceClient.createMetricDescriptor(request); - span.addAnnotation("Finish creating MetricDescriptor."); - return true; - } catch (ApiException e) { - logger.log(Level.WARNING, "ApiException thrown when creating MetricDescriptor.", e); - span.setStatus( - Status.CanonicalCode.valueOf(e.getStatusCode().getCode().name()) - .toStatus() - .withDescription( - "ApiException thrown when creating MetricDescriptor: " + exceptionMessage(e))); - return false; - } catch (Throwable e) { - logger.log(Level.WARNING, "Exception thrown when creating MetricDescriptor.", e); - span.setStatus( - Status.UNKNOWN.withDescription( - "Exception thrown when creating MetricDescriptor: " + exceptionMessage(e))); - return false; - } + CreateMetricDescriptorRequest request = + CreateMetricDescriptorRequest.newBuilder() + .setName(projectName.toString()) + .setMetricDescriptor(metricDescriptor) + .build(); + try { + metricServiceClient.createMetricDescriptor(request); + span.addAnnotation("Finish creating MetricDescriptor."); + return true; + } catch (ApiException e) { + logger.log(Level.WARNING, "ApiException thrown when creating MetricDescriptor.", e); + span.setStatus( + Status.CanonicalCode.valueOf(e.getStatusCode().getCode().name()) + .toStatus() + .withDescription( + "ApiException thrown when creating MetricDescriptor: " + exceptionMessage(e))); + return false; + } catch (Throwable e) { + logger.log(Level.WARNING, "Exception thrown when creating MetricDescriptor.", e); + span.setStatus( + Status.UNKNOWN.withDescription( + "Exception thrown when creating MetricDescriptor: " + exceptionMessage(e))); + return false; } } @@ -189,7 +187,7 @@ final class StackdriverExporterWorker implements Runnable { Lists.partition(timeSeriesList, MAX_BATCH_EXPORT_SIZE)) { Span span = tracer.getCurrentSpan(); span.addAnnotation("Export Stackdriver TimeSeries."); - try (Scope scope = tracer.withSpan(span)) { + try { CreateTimeSeriesRequest request = CreateTimeSeriesRequest.newBuilder() .setName(projectName.toString()) @@ -222,15 +220,18 @@ final class StackdriverExporterWorker implements Runnable { .setRecordEvents(true) .setSampler(probabilitySampler) .startSpan(); - try (Scope scope = tracer.withSpan(span)) { + Scope scope = tracer.withSpan(span); + try { export(); } catch (Throwable e) { logger.log(Level.WARNING, "Exception thrown by the Stackdriver stats exporter.", e); span.setStatus( Status.UNKNOWN.withDescription( "Exception from Stackdriver Exporter: " + exceptionMessage(e))); + } finally { + scope.close(); + span.end(); } - span.end(); try { Thread.sleep(scheduleDelayMillis); } catch (InterruptedException ie) { diff --git a/exporters/trace/instana/build.gradle b/exporters/trace/instana/build.gradle index edd54fc5..ca30e2d6 100644 --- a/exporters/trace/instana/build.gradle +++ b/exporters/trace/instana/build.gradle @@ -10,5 +10,6 @@ dependencies { testCompile project(':opencensus-api') - signature "org.codehaus.mojo.signature:java16:+@signature" + signature "org.codehaus.mojo.signature:java17:1.0@signature" + signature "net.sf.androidscents.signature:android-api-level-14:4.0_r4@signature" } diff --git a/exporters/trace/jaeger/build.gradle b/exporters/trace/jaeger/build.gradle index ee1638da..252950fa 100644 --- a/exporters/trace/jaeger/build.gradle +++ b/exporters/trace/jaeger/build.gradle @@ -19,17 +19,18 @@ sourceSets { dependencies { compile project(':opencensus-api') - compile (libraries.jaeger_reporter) { + compile(libraries.jaeger_reporter) { // Prefer library version. exclude group: 'com.google.guava', module: 'guava' } testCompile project(':opencensus-api'), - 'org.testcontainers:testcontainers:1.7.0', - 'com.google.http-client:google-http-client-gson:1.23.0' + 'org.testcontainers:testcontainers:1.7.0', + 'com.google.http-client:google-http-client-gson:1.23.0' // Unless linked to impl, spans will be blank and not exported during integration tests. testRuntime project(':opencensus-impl') - signature "org.codehaus.mojo.signature:java16:+@signature" + signature "org.codehaus.mojo.signature:java17:1.0@signature" + signature "net.sf.androidscents.signature:android-api-level-14:4.0_r4@signature" } diff --git a/exporters/trace/logging/build.gradle b/exporters/trace/logging/build.gradle index be505a6a..a7fb0ff6 100644 --- a/exporters/trace/logging/build.gradle +++ b/exporters/trace/logging/build.gradle @@ -6,5 +6,6 @@ dependencies { testCompile project(':opencensus-api') - signature "org.codehaus.mojo.signature:java16:+@signature" + signature "org.codehaus.mojo.signature:java17:1.0@signature" + signature "net.sf.androidscents.signature:android-api-level-14:4.0_r4@signature" }
\ No newline at end of file diff --git a/exporters/trace/stackdriver/build.gradle b/exporters/trace/stackdriver/build.gradle index fc8bfef4..8af1d96e 100644 --- a/exporters/trace/stackdriver/build.gradle +++ b/exporters/trace/stackdriver/build.gradle @@ -25,5 +25,6 @@ dependencies { testCompile project(':opencensus-api') - signature "org.codehaus.mojo.signature:java17:+@signature" + signature "org.codehaus.mojo.signature:java17:1.0@signature" + signature "net.sf.androidscents.signature:android-api-level-14:4.0_r4@signature" } diff --git a/exporters/trace/stackdriver/src/main/java/io/opencensus/exporter/trace/stackdriver/StackdriverV2ExporterHandler.java b/exporters/trace/stackdriver/src/main/java/io/opencensus/exporter/trace/stackdriver/StackdriverV2ExporterHandler.java index 5d168425..16a880c2 100644 --- a/exporters/trace/stackdriver/src/main/java/io/opencensus/exporter/trace/stackdriver/StackdriverV2ExporterHandler.java +++ b/exporters/trace/stackdriver/src/main/java/io/opencensus/exporter/trace/stackdriver/StackdriverV2ExporterHandler.java @@ -473,12 +473,13 @@ final class StackdriverV2ExporterHandler extends SpanExporter.Handler { // Start a new span with explicit 1/10000 sampling probability to avoid the case when user // sets the default sampler to always sample and we get the gRPC span of the stackdriver // export call always sampled and go to an infinite loop. - try (Scope scope = + Scope scope = tracer .spanBuilder("ExportStackdriverTraces") .setSampler(probabilitySampler) .setRecordEvents(true) - .startScopedSpan()) { + .startScopedSpan(); + try { List<Span> spans = new ArrayList<>(spanDataList.size()); for (SpanData spanData : spanDataList) { spans.add(generateSpan(spanData, RESOURCE_LABELS)); @@ -486,6 +487,8 @@ final class StackdriverV2ExporterHandler extends SpanExporter.Handler { // Sync call because it is already called for a batch of data, and on a separate thread. // TODO(bdrutu): Consider to make this async in the future. traceServiceClient.batchWriteSpans(projectName, spans); + } finally { + scope.close(); } } } diff --git a/exporters/trace/zipkin/build.gradle b/exporters/trace/zipkin/build.gradle index 3a479690..f36e5615 100644 --- a/exporters/trace/zipkin/build.gradle +++ b/exporters/trace/zipkin/build.gradle @@ -12,5 +12,6 @@ dependencies { testCompile project(':opencensus-api') - signature "org.codehaus.mojo.signature:java16:+@signature" + signature "org.codehaus.mojo.signature:java17:1.0@signature" + signature "net.sf.androidscents.signature:android-api-level-14:4.0_r4@signature" } |