diff options
Diffstat (limited to 'examples')
-rw-r--r-- | examples/src/main/java/io/opencensus/examples/zpages/ZPagesTester.java | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/examples/src/main/java/io/opencensus/examples/zpages/ZPagesTester.java b/examples/src/main/java/io/opencensus/examples/zpages/ZPagesTester.java index 56825097..8555abd9 100644 --- a/examples/src/main/java/io/opencensus/examples/zpages/ZPagesTester.java +++ b/examples/src/main/java/io/opencensus/examples/zpages/ZPagesTester.java @@ -16,14 +16,90 @@ package io.opencensus.examples.zpages; +import io.opencensus.common.Scope; +import io.opencensus.contrib.grpc.metrics.RpcMeasureConstants; +import io.opencensus.contrib.grpc.metrics.RpcViews; import io.opencensus.contrib.zpages.ZPageHandlers; +import io.opencensus.stats.MeasureMap; +import io.opencensus.stats.Stats; +import io.opencensus.stats.StatsRecorder; +import io.opencensus.tags.TagValue; +import io.opencensus.tags.Tagger; +import io.opencensus.tags.Tags; +import io.opencensus.trace.SpanBuilder; +import io.opencensus.trace.Tracer; +import io.opencensus.trace.Tracing; +import io.opencensus.trace.samplers.Samplers; +import java.util.Collections; /** Testing only class for the UI. */ public class ZPagesTester { + private ZPagesTester() {} + private static final Tagger tagger = Tags.getTagger(); + private static final Tracer tracer = Tracing.getTracer(); + private static final StatsRecorder statsRecorder = Stats.getStatsRecorder(); + + private static final String SPAN_NAME = "ExampleSpan"; + + private static void recordExampleData() throws InterruptedException { + Tracing.getExportComponent() + .getSampledSpanStore() + .registerSpanNamesForCollection(Collections.singletonList(SPAN_NAME)); + RpcViews.registerAllViews(); // Use old RPC constants to get interval stats. + SpanBuilder spanBuilder = + tracer.spanBuilder(SPAN_NAME).setRecordEvents(true).setSampler(Samplers.alwaysSample()); + + try (Scope scope = spanBuilder.startScopedSpan()) { + tracer.getCurrentSpan().addAnnotation("Starts recording."); + MeasureMap measureMap = + statsRecorder + .newMeasureMap() + // Client measurements. + .put(RpcMeasureConstants.RPC_CLIENT_STARTED_COUNT, 1) + .put(RpcMeasureConstants.RPC_CLIENT_FINISHED_COUNT, 1) + .put(RpcMeasureConstants.RPC_CLIENT_ROUNDTRIP_LATENCY, 1.0) + .put(RpcMeasureConstants.RPC_CLIENT_REQUEST_COUNT, 1) + .put(RpcMeasureConstants.RPC_CLIENT_RESPONSE_COUNT, 1) + .put(RpcMeasureConstants.RPC_CLIENT_REQUEST_BYTES, 1e5) + .put(RpcMeasureConstants.RPC_CLIENT_RESPONSE_BYTES, 1e5) + .put(RpcMeasureConstants.RPC_CLIENT_UNCOMPRESSED_REQUEST_BYTES, 1e5) + .put(RpcMeasureConstants.RPC_CLIENT_UNCOMPRESSED_RESPONSE_BYTES, 1e5) + // Server measurements. + .put(RpcMeasureConstants.RPC_SERVER_STARTED_COUNT, 1) + .put(RpcMeasureConstants.RPC_SERVER_FINISHED_COUNT, 1) + .put(RpcMeasureConstants.RPC_SERVER_SERVER_LATENCY, 1.0) + .put(RpcMeasureConstants.RPC_SERVER_REQUEST_COUNT, 1) + .put(RpcMeasureConstants.RPC_SERVER_RESPONSE_COUNT, 1) + .put(RpcMeasureConstants.RPC_SERVER_REQUEST_BYTES, 1e5) + .put(RpcMeasureConstants.RPC_SERVER_RESPONSE_BYTES, 1e5) + .put(RpcMeasureConstants.RPC_SERVER_UNCOMPRESSED_REQUEST_BYTES, 1e5) + .put(RpcMeasureConstants.RPC_SERVER_UNCOMPRESSED_RESPONSE_BYTES, 1e5); + measureMap.record( + tagger + .currentBuilder() + .put(RpcMeasureConstants.RPC_STATUS, TagValue.create("OK")) + .build()); + MeasureMap measureMapErrors = + statsRecorder + .newMeasureMap() + .put(RpcMeasureConstants.RPC_CLIENT_ERROR_COUNT, 1) + .put(RpcMeasureConstants.RPC_SERVER_ERROR_COUNT, 1); + measureMapErrors.record( + tagger + .currentBuilder() + .put(RpcMeasureConstants.RPC_STATUS, TagValue.create("UNKNOWN")) + .build()); + + Thread.sleep(200); // sleep for fake work. + tracer.getCurrentSpan().addAnnotation("Finish recording."); + } + } + /** Main method. */ public static void main(String[] args) throws Exception { ZPageHandlers.startHttpServerAndRegisterAll(8080); + recordExampleData(); } } |