core: upgrade census (now named instrumentation) to 0.3.0 (#2565)
In upstream, Census is renamed to "Instrumentation". `com.google.census` is renamed to `com.google.instrumentation.stats`.
In gRPC, "census" in every name is replaced by "stats".
diff --git a/core/src/main/java/io/grpc/inprocess/InProcessChannelBuilder.java b/core/src/main/java/io/grpc/inprocess/InProcessChannelBuilder.java
index da774a5..d95aaba 100644
--- a/core/src/main/java/io/grpc/inprocess/InProcessChannelBuilder.java
+++ b/core/src/main/java/io/grpc/inprocess/InProcessChannelBuilder.java
@@ -31,15 +31,15 @@
package io.grpc.inprocess;
-import com.google.census.CensusContextFactory;
import com.google.common.base.Preconditions;
+import com.google.instrumentation.stats.StatsContextFactory;
import io.grpc.ExperimentalApi;
import io.grpc.Internal;
import io.grpc.internal.AbstractManagedChannelImplBuilder;
import io.grpc.internal.ClientTransportFactory;
import io.grpc.internal.ConnectionClientTransport;
-import io.grpc.internal.NoopCensusContextFactory;
+import io.grpc.internal.NoopStatsContextFactory;
import java.net.SocketAddress;
@@ -68,9 +68,9 @@
super(new InProcessSocketAddress(name), "localhost");
this.name = Preconditions.checkNotNull(name, "name");
// TODO(zhangkun83): InProcessTransport by-passes framer and deframer, thus message sizses are
- // not counted. Therefore, we disable Census for now.
+ // not counted. Therefore, we disable stats for now.
// (https://github.com/grpc/grpc-java/issues/2284)
- super.censusContextFactory(NoopCensusContextFactory.INSTANCE);
+ super.statsContextFactory(NoopStatsContextFactory.INSTANCE);
}
@Override
@@ -94,9 +94,9 @@
@Internal
@Override
- public InProcessChannelBuilder censusContextFactory(CensusContextFactory censusFactory) {
+ public InProcessChannelBuilder statsContextFactory(StatsContextFactory statsFactory) {
// TODO(zhangkun83): InProcessTransport by-passes framer and deframer, thus message sizses are
- // not counted. Census is disabled by using a NOOP Census factory in the constructor, and here
+ // not counted. Stats is disabled by using a NOOP stats factory in the constructor, and here
// we prevent the user from overriding it.
// (https://github.com/grpc/grpc-java/issues/2284)
return this;
diff --git a/core/src/main/java/io/grpc/inprocess/InProcessServerBuilder.java b/core/src/main/java/io/grpc/inprocess/InProcessServerBuilder.java
index 0e75188..e7fedc4 100644
--- a/core/src/main/java/io/grpc/inprocess/InProcessServerBuilder.java
+++ b/core/src/main/java/io/grpc/inprocess/InProcessServerBuilder.java
@@ -31,13 +31,13 @@
package io.grpc.inprocess;
-import com.google.census.CensusContextFactory;
import com.google.common.base.Preconditions;
+import com.google.instrumentation.stats.StatsContextFactory;
import io.grpc.ExperimentalApi;
import io.grpc.Internal;
import io.grpc.internal.AbstractServerImplBuilder;
-import io.grpc.internal.NoopCensusContextFactory;
+import io.grpc.internal.NoopStatsContextFactory;
import java.io.File;
@@ -65,9 +65,9 @@
private InProcessServerBuilder(String name) {
this.name = Preconditions.checkNotNull(name, "name");
// TODO(zhangkun83): InProcessTransport by-passes framer and deframer, thus message sizses are
- // not counted. Therefore, we disable Census for now.
+ // not counted. Therefore, we disable stats for now.
// (https://github.com/grpc/grpc-java/issues/2284)
- super.censusContextFactory(NoopCensusContextFactory.INSTANCE);
+ super.statsContextFactory(NoopStatsContextFactory.INSTANCE);
}
@Override
@@ -82,9 +82,9 @@
@Internal
@Override
- public InProcessServerBuilder censusContextFactory(CensusContextFactory censusFactory) {
+ public InProcessServerBuilder statsContextFactory(StatsContextFactory statsFactory) {
// TODO(zhangkun83): InProcessTransport by-passes framer and deframer, thus message sizses are
- // not counted. Census is disabled by using a NOOP Census factory in the constructor, and here
+ // not counted. Stats is disabled by using a NOOP stats factory in the constructor, and here
// we prevent the user from overriding it.
// (https://github.com/grpc/grpc-java/issues/2284)
return this;
diff --git a/core/src/main/java/io/grpc/internal/AbstractManagedChannelImplBuilder.java b/core/src/main/java/io/grpc/internal/AbstractManagedChannelImplBuilder.java
index 5b44b59..de22269 100644
--- a/core/src/main/java/io/grpc/internal/AbstractManagedChannelImplBuilder.java
+++ b/core/src/main/java/io/grpc/internal/AbstractManagedChannelImplBuilder.java
@@ -34,11 +34,11 @@
import static com.google.common.base.MoreObjects.firstNonNull;
import static com.google.common.base.Preconditions.checkArgument;
-import com.google.census.Census;
-import com.google.census.CensusContextFactory;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Preconditions;
import com.google.common.util.concurrent.MoreExecutors;
+import com.google.instrumentation.stats.Stats;
+import com.google.instrumentation.stats.StatsContextFactory;
import io.grpc.Attributes;
import io.grpc.ClientInterceptor;
@@ -136,7 +136,7 @@
}
@Nullable
- private CensusContextFactory censusFactory;
+ private StatsContextFactory statsFactory;
protected AbstractManagedChannelImplBuilder(String target) {
this.target = Preconditions.checkNotNull(target, "target");
@@ -242,12 +242,12 @@
}
/**
- * Override the default Census implementation. This is meant to be used in tests.
+ * Override the default stats implementation. This is meant to be used in tests.
*/
@VisibleForTesting
@Internal
- public T censusContextFactory(CensusContextFactory censusFactory) {
- this.censusFactory = censusFactory;
+ public T statsContextFactory(StatsContextFactory statsFactory) {
+ this.statsFactory = statsFactory;
return thisT();
}
@@ -291,8 +291,8 @@
firstNonNull(compressorRegistry, CompressorRegistry.getDefaultInstance()),
GrpcUtil.TIMER_SERVICE, GrpcUtil.STOPWATCH_SUPPLIER, idleTimeoutMillis,
executor, userAgent, interceptors,
- firstNonNull(censusFactory,
- firstNonNull(Census.getCensusContextFactory(), NoopCensusContextFactory.INSTANCE)));
+ firstNonNull(statsFactory,
+ firstNonNull(Stats.getStatsContextFactory(), NoopStatsContextFactory.INSTANCE)));
}
/**
diff --git a/core/src/main/java/io/grpc/internal/AbstractServerImplBuilder.java b/core/src/main/java/io/grpc/internal/AbstractServerImplBuilder.java
index afbc411..e14d64f 100644
--- a/core/src/main/java/io/grpc/internal/AbstractServerImplBuilder.java
+++ b/core/src/main/java/io/grpc/internal/AbstractServerImplBuilder.java
@@ -34,10 +34,10 @@
import static com.google.common.base.MoreObjects.firstNonNull;
import static com.google.common.base.Preconditions.checkNotNull;
-import com.google.census.Census;
-import com.google.census.CensusContextFactory;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.util.concurrent.MoreExecutors;
+import com.google.instrumentation.stats.Stats;
+import com.google.instrumentation.stats.StatsContextFactory;
import io.grpc.BindableService;
import io.grpc.CompressorRegistry;
@@ -101,7 +101,7 @@
private CompressorRegistry compressorRegistry;
@Nullable
- private CensusContextFactory censusFactory;
+ private StatsContextFactory statsFactory;
@Override
public final T directExecutor() {
@@ -153,12 +153,12 @@
}
/**
- * Override the default Census implementation. This is meant to be used in tests.
+ * Override the default stats implementation. This is meant to be used in tests.
*/
@VisibleForTesting
@Internal
- public T censusContextFactory(CensusContextFactory censusFactory) {
- this.censusFactory = censusFactory;
+ public T statsContextFactory(StatsContextFactory statsFactory) {
+ this.statsFactory = statsFactory;
return thisT();
}
@@ -170,8 +170,8 @@
Context.ROOT, firstNonNull(decompressorRegistry, DecompressorRegistry.getDefaultInstance()),
firstNonNull(compressorRegistry, CompressorRegistry.getDefaultInstance()),
transportFilters,
- firstNonNull(censusFactory,
- firstNonNull(Census.getCensusContextFactory(), NoopCensusContextFactory.INSTANCE)),
+ firstNonNull(statsFactory,
+ firstNonNull(Stats.getStatsContextFactory(), NoopStatsContextFactory.INSTANCE)),
GrpcUtil.STOPWATCH_SUPPLIER);
for (InternalNotifyOnServerBuild notifyTarget : notifyOnBuildList) {
notifyTarget.notifyOnBuild(server);
diff --git a/core/src/main/java/io/grpc/internal/ManagedChannelImpl.java b/core/src/main/java/io/grpc/internal/ManagedChannelImpl.java
index ee41648..431648c 100644
--- a/core/src/main/java/io/grpc/internal/ManagedChannelImpl.java
+++ b/core/src/main/java/io/grpc/internal/ManagedChannelImpl.java
@@ -35,10 +35,10 @@
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Preconditions.checkState;
-import com.google.census.CensusContextFactory;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Stopwatch;
import com.google.common.base.Supplier;
+import com.google.instrumentation.stats.StatsContextFactory;
import io.grpc.Attributes;
import io.grpc.CallOptions;
@@ -139,7 +139,7 @@
private final Supplier<Stopwatch> stopwatchSupplier;
/** The timout before entering idle mode, less {@link #IDLE_GRACE_PERIOD_MILLIS}. */
private final long idleTimeoutMillis;
- private final CensusContextFactory censusFactory;
+ private final StatsContextFactory statsFactory;
/**
* Executor that runs deadline timers for requests.
@@ -379,7 +379,7 @@
SharedResourceHolder.Resource<ScheduledExecutorService> timerService,
Supplier<Stopwatch> stopwatchSupplier, long idleTimeoutMillis,
@Nullable Executor executor, @Nullable String userAgent,
- List<ClientInterceptor> interceptors, CensusContextFactory censusFactory) {
+ List<ClientInterceptor> interceptors, StatsContextFactory statsFactory) {
this.target = checkNotNull(target, "target");
this.nameResolverFactory = checkNotNull(nameResolverFactory, "nameResolverFactory");
this.nameResolverParams = checkNotNull(nameResolverParams, "nameResolverParams");
@@ -411,7 +411,7 @@
this.decompressorRegistry = decompressorRegistry;
this.compressorRegistry = compressorRegistry;
this.userAgent = userAgent;
- this.censusFactory = checkNotNull(censusFactory, "censusFactory");
+ this.statsFactory = checkNotNull(statsFactory, "statsFactory");
if (log.isLoggable(Level.INFO)) {
log.log(Level.INFO, "[{0}] Created with target {1}", new Object[] {getLogId(), target});
@@ -615,7 +615,7 @@
executor = ManagedChannelImpl.this.executor;
}
StatsTraceContext statsTraceCtx = StatsTraceContext.newClientContext(
- method.getFullMethodName(), censusFactory, stopwatchSupplier);
+ method.getFullMethodName(), statsFactory, stopwatchSupplier);
return new ClientCallImpl<ReqT, RespT>(
method,
executor,
@@ -725,7 +725,7 @@
@Override
public Channel makeChannel(ClientTransport transport) {
return new SingleTransportChannel(
- censusFactory, transport, executor, scheduledExecutor, authority(), stopwatchSupplier);
+ statsFactory, transport, executor, scheduledExecutor, authority(), stopwatchSupplier);
}
@Override
diff --git a/core/src/main/java/io/grpc/internal/NoopCensusContextFactory.java b/core/src/main/java/io/grpc/internal/NoopStatsContextFactory.java
similarity index 63%
rename from core/src/main/java/io/grpc/internal/NoopCensusContextFactory.java
rename to core/src/main/java/io/grpc/internal/NoopStatsContextFactory.java
index 977209b..c55ce24 100644
--- a/core/src/main/java/io/grpc/internal/NoopCensusContextFactory.java
+++ b/core/src/main/java/io/grpc/internal/NoopStatsContextFactory.java
@@ -31,59 +31,59 @@
package io.grpc.internal;
-import com.google.census.CensusContext;
-import com.google.census.CensusContextFactory;
-import com.google.census.MetricMap;
-import com.google.census.TagKey;
-import com.google.census.TagValue;
+import com.google.instrumentation.stats.MeasurementMap;
+import com.google.instrumentation.stats.StatsContext;
+import com.google.instrumentation.stats.StatsContextFactory;
+import com.google.instrumentation.stats.TagKey;
+import com.google.instrumentation.stats.TagValue;
-import java.nio.ByteBuffer;
+import java.io.InputStream;
+import java.io.OutputStream;
-public final class NoopCensusContextFactory extends CensusContextFactory {
- private static final byte[] SERIALIZED_BYTES = new byte[0];
- private static final CensusContext DEFAULT_CONTEXT = new NoopCensusContext();
- private static final CensusContext.Builder BUILDER = new NoopContextBuilder();
+public final class NoopStatsContextFactory extends StatsContextFactory {
+ private static final StatsContext DEFAULT_CONTEXT = new NoopStatsContext();
+ private static final StatsContext.Builder BUILDER = new NoopContextBuilder();
- public static final CensusContextFactory INSTANCE = new NoopCensusContextFactory();
+ public static final StatsContextFactory INSTANCE = new NoopStatsContextFactory();
- private NoopCensusContextFactory() {
+ private NoopStatsContextFactory() {
}
@Override
- public CensusContext deserialize(ByteBuffer buffer) {
+ public StatsContext deserialize(InputStream is) {
return DEFAULT_CONTEXT;
}
@Override
- public CensusContext getDefault() {
+ public StatsContext getDefault() {
return DEFAULT_CONTEXT;
}
- private static class NoopCensusContext extends CensusContext {
+ private static class NoopStatsContext extends StatsContext {
@Override
public Builder builder() {
return BUILDER;
}
@Override
- public CensusContext record(MetricMap metrics) {
+ public StatsContext record(MeasurementMap metrics) {
return DEFAULT_CONTEXT;
}
@Override
- public ByteBuffer serialize() {
- return ByteBuffer.wrap(SERIALIZED_BYTES).asReadOnlyBuffer();
+ public void serialize(OutputStream os) {
+ return;
}
}
- private static class NoopContextBuilder extends CensusContext.Builder {
+ private static class NoopContextBuilder extends StatsContext.Builder {
@Override
- public CensusContext.Builder set(TagKey key, TagValue value) {
+ public StatsContext.Builder set(TagKey key, TagValue value) {
return this;
}
@Override
- public CensusContext build() {
+ public StatsContext build() {
return DEFAULT_CONTEXT;
}
}
diff --git a/core/src/main/java/io/grpc/internal/ServerImpl.java b/core/src/main/java/io/grpc/internal/ServerImpl.java
index 010d17b..8c22bbb 100644
--- a/core/src/main/java/io/grpc/internal/ServerImpl.java
+++ b/core/src/main/java/io/grpc/internal/ServerImpl.java
@@ -39,10 +39,10 @@
import static io.grpc.internal.GrpcUtil.TIMER_SERVICE;
import static java.util.concurrent.TimeUnit.NANOSECONDS;
-import com.google.census.CensusContextFactory;
import com.google.common.base.Preconditions;
import com.google.common.base.Stopwatch;
import com.google.common.base.Supplier;
+import com.google.instrumentation.stats.StatsContextFactory;
import io.grpc.Attributes;
import io.grpc.CompressorRegistry;
@@ -95,7 +95,7 @@
private final InternalHandlerRegistry registry;
private final HandlerRegistry fallbackRegistry;
private final List<ServerTransportFilter> transportFilters;
- private final CensusContextFactory censusFactory;
+ private final StatsContextFactory statsFactory;
@GuardedBy("lock") private boolean started;
@GuardedBy("lock") private boolean shutdown;
/** non-{@code null} if immediate shutdown has been requested. */
@@ -129,7 +129,7 @@
ServerImpl(Executor executor, InternalHandlerRegistry registry, HandlerRegistry fallbackRegistry,
InternalServer transportServer, Context rootContext,
DecompressorRegistry decompressorRegistry, CompressorRegistry compressorRegistry,
- List<ServerTransportFilter> transportFilters, CensusContextFactory censusFactory,
+ List<ServerTransportFilter> transportFilters, StatsContextFactory statsFactory,
Supplier<Stopwatch> stopwatchSupplier) {
this.executor = executor;
this.registry = Preconditions.checkNotNull(registry, "registry");
@@ -142,7 +142,7 @@
this.compressorRegistry = compressorRegistry;
this.transportFilters = Collections.unmodifiableList(
new ArrayList<ServerTransportFilter>(transportFilters));
- this.censusFactory = Preconditions.checkNotNull(censusFactory, "censusFactory");
+ this.statsFactory = Preconditions.checkNotNull(statsFactory, "statsFactory");
this.stopwatchSupplier = Preconditions.checkNotNull(stopwatchSupplier, "stopwatchSupplier");
}
@@ -376,7 +376,7 @@
@Override
public StatsTraceContext methodDetermined(String methodName, Metadata headers) {
return StatsTraceContext.newServerContext(
- methodName, censusFactory, headers, stopwatchSupplier);
+ methodName, statsFactory, headers, stopwatchSupplier);
}
@Override
@@ -442,7 +442,7 @@
final ServerStream stream, Metadata headers) {
Long timeoutNanos = headers.get(TIMEOUT_KEY);
- // TODO(zhangkun83): attach the CensusContext from StatsTraceContext to baseContext
+ // TODO(zhangkun83): attach the StatsContext from StatsTraceContext to baseContext
Context baseContext = rootContext;
if (timeoutNanos == null) {
diff --git a/core/src/main/java/io/grpc/internal/SingleTransportChannel.java b/core/src/main/java/io/grpc/internal/SingleTransportChannel.java
index 19ba590..3d52451 100644
--- a/core/src/main/java/io/grpc/internal/SingleTransportChannel.java
+++ b/core/src/main/java/io/grpc/internal/SingleTransportChannel.java
@@ -31,10 +31,10 @@
package io.grpc.internal;
-import com.google.census.CensusContextFactory;
import com.google.common.base.Preconditions;
import com.google.common.base.Stopwatch;
import com.google.common.base.Supplier;
+import com.google.instrumentation.stats.StatsContextFactory;
import io.grpc.CallOptions;
import io.grpc.Channel;
@@ -50,7 +50,7 @@
*/
final class SingleTransportChannel extends Channel {
- private final CensusContextFactory censusFactory;
+ private final StatsContextFactory statsFactory;
private final ClientTransport transport;
private final Executor executor;
private final String authority;
@@ -67,10 +67,10 @@
/**
* Creates a new channel with a connected transport.
*/
- public SingleTransportChannel(CensusContextFactory censusFactory, ClientTransport transport,
+ public SingleTransportChannel(StatsContextFactory statsFactory, ClientTransport transport,
Executor executor, ScheduledExecutorService deadlineCancellationExecutor, String authority,
Supplier<Stopwatch> stopwatchSupplier) {
- this.censusFactory = Preconditions.checkNotNull(censusFactory, "censusFactory");
+ this.statsFactory = Preconditions.checkNotNull(statsFactory, "statsFactory");
this.transport = Preconditions.checkNotNull(transport, "transport");
this.executor = Preconditions.checkNotNull(executor, "executor");
this.deadlineCancellationExecutor = Preconditions.checkNotNull(
@@ -83,7 +83,7 @@
public <RequestT, ResponseT> ClientCall<RequestT, ResponseT> newCall(
MethodDescriptor<RequestT, ResponseT> methodDescriptor, CallOptions callOptions) {
StatsTraceContext statsTraceCtx = StatsTraceContext.newClientContext(
- methodDescriptor.getFullMethodName(), censusFactory, stopwatchSupplier);
+ methodDescriptor.getFullMethodName(), statsFactory, stopwatchSupplier);
return new ClientCallImpl<RequestT, ResponseT>(methodDescriptor,
new SerializingExecutor(executor), callOptions, statsTraceCtx, transportProvider,
deadlineCancellationExecutor);
diff --git a/core/src/main/java/io/grpc/internal/StatsTraceContext.java b/core/src/main/java/io/grpc/internal/StatsTraceContext.java
index 1a7af8f..110b0cc 100644
--- a/core/src/main/java/io/grpc/internal/StatsTraceContext.java
+++ b/core/src/main/java/io/grpc/internal/StatsTraceContext.java
@@ -31,21 +31,23 @@
package io.grpc.internal;
-import com.google.census.CensusContext;
-import com.google.census.CensusContextFactory;
-import com.google.census.MetricMap;
-import com.google.census.MetricName;
-import com.google.census.RpcConstants;
-import com.google.census.TagKey;
-import com.google.census.TagValue;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Stopwatch;
import com.google.common.base.Supplier;
+import com.google.instrumentation.stats.MeasurementDescriptor;
+import com.google.instrumentation.stats.MeasurementMap;
+import com.google.instrumentation.stats.RpcConstants;
+import com.google.instrumentation.stats.StatsContext;
+import com.google.instrumentation.stats.StatsContextFactory;
+import com.google.instrumentation.stats.TagKey;
+import com.google.instrumentation.stats.TagValue;
import io.grpc.Metadata;
import io.grpc.Status;
-import java.nio.ByteBuffer;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -61,107 +63,113 @@
@SuppressWarnings("NonAtomicVolatileUpdate")
public final class StatsTraceContext {
public static final StatsTraceContext NOOP = StatsTraceContext.newClientContext(
- "noopservice/noopmethod", NoopCensusContextFactory.INSTANCE,
+ "noopservice/noopmethod", NoopStatsContextFactory.INSTANCE,
GrpcUtil.STOPWATCH_SUPPLIER);
private enum Side {
CLIENT, SERVER
}
- private final CensusContext censusCtx;
+ private final StatsContext statsCtx;
private final Stopwatch stopwatch;
private final Side side;
- private final Metadata.Key<CensusContext> censusHeader;
+ private final Metadata.Key<StatsContext> statsHeader;
private volatile long wireBytesSent;
private volatile long wireBytesReceived;
private volatile long uncompressedBytesSent;
private volatile long uncompressedBytesReceived;
private final AtomicBoolean callEnded = new AtomicBoolean(false);
- private StatsTraceContext(Side side, String fullMethodName, CensusContext parentCtx,
- Supplier<Stopwatch> stopwatchSupplier, Metadata.Key<CensusContext> censusHeader) {
+ private StatsTraceContext(Side side, String fullMethodName, StatsContext parentCtx,
+ Supplier<Stopwatch> stopwatchSupplier, Metadata.Key<StatsContext> statsHeader) {
this.side = side;
TagKey methodTagKey =
side == Side.CLIENT ? RpcConstants.RPC_CLIENT_METHOD : RpcConstants.RPC_SERVER_METHOD;
// TODO(carl-mastrangelo): maybe cache TagValue in MethodDescriptor
- this.censusCtx = parentCtx.with(methodTagKey, new TagValue(fullMethodName));
+ this.statsCtx = parentCtx.with(methodTagKey, TagValue.create(fullMethodName));
this.stopwatch = stopwatchSupplier.get().start();
- this.censusHeader = censusHeader;
+ this.statsHeader = statsHeader;
}
/**
- * Creates a {@code StatsTraceContext} for an outgoing RPC, using the current CensusContext.
+ * Creates a {@code StatsTraceContext} for an outgoing RPC, using the current StatsContext.
*
* <p>The current time is used as the start time of the RPC.
*/
public static StatsTraceContext newClientContext(String methodName,
- CensusContextFactory censusFactory, Supplier<Stopwatch> stopwatchSupplier) {
+ StatsContextFactory statsFactory, Supplier<Stopwatch> stopwatchSupplier) {
return new StatsTraceContext(Side.CLIENT, methodName,
- // TODO(zhangkun83): use the CensusContext out of the current Context
- censusFactory.getDefault(),
- stopwatchSupplier, createCensusHeader(censusFactory));
+ // TODO(zhangkun83): use the StatsContext out of the current Context
+ statsFactory.getDefault(),
+ stopwatchSupplier, createStatsHeader(statsFactory));
}
@VisibleForTesting
static StatsTraceContext newClientContextForTesting(String methodName,
- CensusContextFactory censusFactory, CensusContext parent,
+ StatsContextFactory statsFactory, StatsContext parent,
Supplier<Stopwatch> stopwatchSupplier) {
return new StatsTraceContext(Side.CLIENT, methodName, parent, stopwatchSupplier,
- createCensusHeader(censusFactory));
+ createStatsHeader(statsFactory));
}
/**
- * Creates a {@code StatsTraceContext} for an incoming RPC, using the CensusContext deserialized
+ * Creates a {@code StatsTraceContext} for an incoming RPC, using the StatsContext deserialized
* from the headers.
*
* <p>The current time is used as the start time of the RPC.
*/
public static StatsTraceContext newServerContext(String methodName,
- CensusContextFactory censusFactory, Metadata headers,
+ StatsContextFactory statsFactory, Metadata headers,
Supplier<Stopwatch> stopwatchSupplier) {
- Metadata.Key<CensusContext> censusHeader = createCensusHeader(censusFactory);
- CensusContext parentCtx = headers.get(censusHeader);
+ Metadata.Key<StatsContext> statsHeader = createStatsHeader(statsFactory);
+ StatsContext parentCtx = headers.get(statsHeader);
if (parentCtx == null) {
- parentCtx = censusFactory.getDefault();
+ parentCtx = statsFactory.getDefault();
}
return new StatsTraceContext(Side.SERVER, methodName, parentCtx, stopwatchSupplier,
- censusHeader);
+ statsHeader);
}
/**
* Propagate the context to the outgoing headers.
*/
void propagateToHeaders(Metadata headers) {
- headers.discardAll(censusHeader);
- headers.put(censusHeader, censusCtx);
+ headers.discardAll(statsHeader);
+ headers.put(statsHeader, statsCtx);
}
- Metadata.Key<CensusContext> getCensusHeader() {
- return censusHeader;
+ Metadata.Key<StatsContext> getStatsHeader() {
+ return statsHeader;
}
@VisibleForTesting
- CensusContext getCensusContext() {
- return censusCtx;
+ StatsContext getStatsContext() {
+ return statsCtx;
}
@VisibleForTesting
- static Metadata.Key<CensusContext> createCensusHeader(
- final CensusContextFactory censusCtxFactory) {
- return Metadata.Key.of("grpc-census-bin", new Metadata.BinaryMarshaller<CensusContext>() {
+ static Metadata.Key<StatsContext> createStatsHeader(final StatsContextFactory statsCtxFactory) {
+ return Metadata.Key.of("grpc-census-bin", new Metadata.BinaryMarshaller<StatsContext>() {
@Override
- public byte[] toBytes(CensusContext context) {
- ByteBuffer buffer = context.serialize();
+ public byte[] toBytes(StatsContext context) {
// TODO(carl-mastrangelo): currently we only make sure the correctness. We may need to
// optimize out the allocation and copy in the future.
- byte[] bytes = new byte[buffer.remaining()];
- buffer.get(bytes);
- return bytes;
+ ByteArrayOutputStream buffer = new ByteArrayOutputStream();
+ try {
+ context.serialize(buffer);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ return buffer.toByteArray();
}
@Override
- public CensusContext parseBytes(byte[] serialized) {
- return censusCtxFactory.deserialize(ByteBuffer.wrap(serialized));
+ public StatsContext parseBytes(byte[] serialized) {
+ try {
+ return statsCtxFactory.deserialize(new ByteArrayInputStream(serialized));
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
}
});
}
@@ -209,11 +217,11 @@
return;
}
stopwatch.stop();
- MetricName latencyMetric;
- MetricName wireBytesSentMetric;
- MetricName wireBytesReceivedMetric;
- MetricName uncompressedBytesSentMetric;
- MetricName uncompressedBytesReceivedMetric;
+ MeasurementDescriptor latencyMetric;
+ MeasurementDescriptor wireBytesSentMetric;
+ MeasurementDescriptor wireBytesReceivedMetric;
+ MeasurementDescriptor uncompressedBytesSentMetric;
+ MeasurementDescriptor uncompressedBytesReceivedMetric;
if (side == Side.CLIENT) {
latencyMetric = RpcConstants.RPC_CLIENT_ROUNDTRIP_LATENCY;
wireBytesSentMetric = RpcConstants.RPC_CLIENT_REQUEST_BYTES;
@@ -227,9 +235,9 @@
uncompressedBytesSentMetric = RpcConstants.RPC_SERVER_UNCOMPRESSED_RESPONSE_BYTES;
uncompressedBytesReceivedMetric = RpcConstants.RPC_SERVER_UNCOMPRESSED_REQUEST_BYTES;
}
- censusCtx
- .with(RpcConstants.RPC_STATUS, new TagValue(status.getCode().toString()))
- .record(MetricMap.builder()
+ statsCtx
+ .with(RpcConstants.RPC_STATUS, TagValue.create(status.getCode().toString()))
+ .record(MeasurementMap.builder()
.put(latencyMetric, stopwatch.elapsed(TimeUnit.MILLISECONDS))
.put(wireBytesSentMetric, wireBytesSent)
.put(wireBytesReceivedMetric, wireBytesReceived)
diff --git a/core/src/test/java/io/grpc/internal/CallCredentialsApplyingTest.java b/core/src/test/java/io/grpc/internal/CallCredentialsApplyingTest.java
index 1942492..82db268 100644
--- a/core/src/test/java/io/grpc/internal/CallCredentialsApplyingTest.java
+++ b/core/src/test/java/io/grpc/internal/CallCredentialsApplyingTest.java
@@ -106,7 +106,7 @@
private final Metadata origHeaders = new Metadata();
private final StatsTraceContext statsTraceCtx = StatsTraceContext.newClientContext(
- method.getFullMethodName(), NoopCensusContextFactory.INSTANCE, GrpcUtil.STOPWATCH_SUPPLIER);
+ method.getFullMethodName(), NoopStatsContextFactory.INSTANCE, GrpcUtil.STOPWATCH_SUPPLIER);
private ForwardingConnectionClientTransport transport;
private CallOptions callOptions;
diff --git a/core/src/test/java/io/grpc/internal/ClientCallImplTest.java b/core/src/test/java/io/grpc/internal/ClientCallImplTest.java
index 4ef6346..48d375e 100644
--- a/core/src/test/java/io/grpc/internal/ClientCallImplTest.java
+++ b/core/src/test/java/io/grpc/internal/ClientCallImplTest.java
@@ -51,12 +51,12 @@
import static org.mockito.Mockito.verifyZeroInteractions;
import static org.mockito.Mockito.when;
-import com.google.census.CensusContext;
-import com.google.census.RpcConstants;
-import com.google.census.TagValue;
import com.google.common.collect.ImmutableSet;
import com.google.common.util.concurrent.MoreExecutors;
import com.google.common.util.concurrent.SettableFuture;
+import com.google.instrumentation.stats.RpcConstants;
+import com.google.instrumentation.stats.StatsContext;
+import com.google.instrumentation.stats.TagValue;
import io.grpc.CallOptions;
import io.grpc.ClientCall;
@@ -71,8 +71,8 @@
import io.grpc.MethodDescriptor.MethodType;
import io.grpc.Status;
import io.grpc.internal.ClientCallImpl.ClientTransportProvider;
-import io.grpc.internal.testing.CensusTestUtils.FakeCensusContextFactory;
-import io.grpc.internal.testing.CensusTestUtils;
+import io.grpc.internal.testing.StatsTestUtils.FakeStatsContextFactory;
+import io.grpc.internal.testing.StatsTestUtils;
import org.junit.After;
import org.junit.Before;
@@ -121,13 +121,13 @@
new TestMarshaller<Void>(),
new TestMarshaller<Void>());
- private final FakeCensusContextFactory censusCtxFactory = new FakeCensusContextFactory();
- private final CensusContext parentCensusContext = censusCtxFactory.getDefault().with(
- CensusTestUtils.EXTRA_TAG, new TagValue("extra-tag-value"));
+ private final FakeStatsContextFactory statsCtxFactory = new FakeStatsContextFactory();
+ private final StatsContext parentStatsContext = statsCtxFactory.getDefault().with(
+ StatsTestUtils.EXTRA_TAG, TagValue.create("extra-tag-value"));
private final StatsTraceContext statsTraceCtx = StatsTraceContext.newClientContextForTesting(
- method.getFullMethodName(), censusCtxFactory, parentCensusContext,
+ method.getFullMethodName(), statsCtxFactory, parentStatsContext,
fakeClock.getStopwatchSupplier());
- private final CensusContext censusCtx = censusCtxFactory.contexts.poll();
+ private final StatsContext statsCtx = statsCtxFactory.contexts.poll();
@Mock private ClientStreamListener streamListener;
@Mock private ClientTransport clientTransport;
@@ -154,7 +154,7 @@
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
- assertNotNull(censusCtx);
+ assertNotNull(statsCtx);
when(provider.get(any(CallOptions.class))).thenReturn(transport);
when(transport.newStream(any(MethodDescriptor.class), any(Metadata.class),
any(CallOptions.class), any(StatsTraceContext.class))).thenReturn(stream);
@@ -443,10 +443,10 @@
}
@Test
- public void prepareHeaders_censusCtxAdded() {
+ public void prepareHeaders_statsCtxAdded() {
Metadata m = new Metadata();
ClientCallImpl.prepareHeaders(m, decompressorRegistry, Codec.Identity.NONE, statsTraceCtx);
- assertEquals(parentCensusContext, m.get(statsTraceCtx.getCensusHeader()));
+ assertEquals(parentStatsContext, m.get(statsTraceCtx.getStatsHeader()));
}
@Test
@@ -825,7 +825,7 @@
}
private void assertStatusInStats(Status.Code statusCode) {
- CensusTestUtils.MetricsRecord record = censusCtxFactory.pollRecord();
+ StatsTestUtils.MetricsRecord record = statsCtxFactory.pollRecord();
assertNotNull(record);
TagValue statusTag = record.tags.get(RpcConstants.RPC_STATUS);
assertNotNull(statusTag);
diff --git a/core/src/test/java/io/grpc/internal/DelayedClientTransport2Test.java b/core/src/test/java/io/grpc/internal/DelayedClientTransport2Test.java
index 5efdcf4..c5c4121 100644
--- a/core/src/test/java/io/grpc/internal/DelayedClientTransport2Test.java
+++ b/core/src/test/java/io/grpc/internal/DelayedClientTransport2Test.java
@@ -110,10 +110,10 @@
private final CallOptions callOptions = CallOptions.DEFAULT.withAuthority("dummy_value");
private final CallOptions callOptions2 = CallOptions.DEFAULT.withAuthority("dummy_value2");
private final StatsTraceContext statsTraceCtx = StatsTraceContext.newClientContext(
- method.getFullMethodName(), NoopCensusContextFactory.INSTANCE,
+ method.getFullMethodName(), NoopStatsContextFactory.INSTANCE,
GrpcUtil.STOPWATCH_SUPPLIER);
private final StatsTraceContext statsTraceCtx2 = StatsTraceContext.newClientContext(
- method2.getFullMethodName(), NoopCensusContextFactory.INSTANCE,
+ method2.getFullMethodName(), NoopStatsContextFactory.INSTANCE,
GrpcUtil.STOPWATCH_SUPPLIER);
private final FakeClock fakeExecutor = new FakeClock();
diff --git a/core/src/test/java/io/grpc/internal/DelayedClientTransportTest.java b/core/src/test/java/io/grpc/internal/DelayedClientTransportTest.java
index c57acc9..1c6b0ae 100644
--- a/core/src/test/java/io/grpc/internal/DelayedClientTransportTest.java
+++ b/core/src/test/java/io/grpc/internal/DelayedClientTransportTest.java
@@ -105,10 +105,10 @@
private final CallOptions callOptions = CallOptions.DEFAULT.withAuthority("dummy_value");
private final CallOptions callOptions2 = CallOptions.DEFAULT.withAuthority("dummy_value2");
private final StatsTraceContext statsTraceCtx = StatsTraceContext.newClientContext(
- method.getFullMethodName(), NoopCensusContextFactory.INSTANCE,
+ method.getFullMethodName(), NoopStatsContextFactory.INSTANCE,
GrpcUtil.STOPWATCH_SUPPLIER);
private final StatsTraceContext statsTraceCtx2 = StatsTraceContext.newClientContext(
- method2.getFullMethodName(), NoopCensusContextFactory.INSTANCE,
+ method2.getFullMethodName(), NoopStatsContextFactory.INSTANCE,
GrpcUtil.STOPWATCH_SUPPLIER);
private final FakeClock fakeExecutor = new FakeClock();
diff --git a/core/src/test/java/io/grpc/internal/ManagedChannelImplIdlenessTest.java b/core/src/test/java/io/grpc/internal/ManagedChannelImplIdlenessTest.java
index 89dc573..83249cd 100644
--- a/core/src/test/java/io/grpc/internal/ManagedChannelImplIdlenessTest.java
+++ b/core/src/test/java/io/grpc/internal/ManagedChannelImplIdlenessTest.java
@@ -140,7 +140,7 @@
TimeUnit.SECONDS.toMillis(IDLE_TIMEOUT_SECONDS),
executor.getScheduledExecutorService(), USER_AGENT,
Collections.<ClientInterceptor>emptyList(),
- NoopCensusContextFactory.INSTANCE);
+ NoopStatsContextFactory.INSTANCE);
newTransports = TestUtils.captureTransports(mockTransportFactory);
for (int i = 0; i < 2; i++) {
diff --git a/core/src/test/java/io/grpc/internal/ManagedChannelImplTest.java b/core/src/test/java/io/grpc/internal/ManagedChannelImplTest.java
index a719c39..c862cdc 100644
--- a/core/src/test/java/io/grpc/internal/ManagedChannelImplTest.java
+++ b/core/src/test/java/io/grpc/internal/ManagedChannelImplTest.java
@@ -78,7 +78,7 @@
import io.grpc.Status;
import io.grpc.StringMarshaller;
import io.grpc.TransportManager;
-import io.grpc.internal.testing.CensusTestUtils.FakeCensusContextFactory;
+import io.grpc.internal.testing.StatsTestUtils.FakeStatsContextFactory;
import org.junit.After;
import org.junit.Before;
@@ -127,7 +127,7 @@
private final ResolvedServerInfo server = new ResolvedServerInfo(socketAddress, Attributes.EMPTY);
private final FakeClock timer = new FakeClock();
private final FakeClock executor = new FakeClock();
- private final FakeCensusContextFactory censusCtxFactory = new FakeCensusContextFactory();
+ private final FakeStatsContextFactory statsCtxFactory = new FakeStatsContextFactory();
private SpyingLoadBalancerFactory loadBalancerFactory =
new SpyingLoadBalancerFactory(PickFirstBalancerFactory.getInstance());
@@ -165,7 +165,7 @@
mockTransportFactory, DecompressorRegistry.getDefaultInstance(),
CompressorRegistry.getDefaultInstance(), timerService, timer.getStopwatchSupplier(),
ManagedChannelImpl.IDLE_TIMEOUT_MILLIS_DISABLE,
- executor.getScheduledExecutorService(), userAgent, interceptors, censusCtxFactory);
+ executor.getScheduledExecutorService(), userAgent, interceptors, statsCtxFactory);
// Force-exit the initial idle-mode
channel.exitIdleMode();
// Will start NameResolver in the scheduled executor
@@ -257,8 +257,8 @@
verify(mockTransport).newStream(same(method), same(headers), same(CallOptions.DEFAULT),
statsTraceCtxCaptor.capture());
- assertEquals(censusCtxFactory.pollContextOrFail(),
- statsTraceCtxCaptor.getValue().getCensusContext());
+ assertEquals(statsCtxFactory.pollContextOrFail(),
+ statsTraceCtxCaptor.getValue().getStatsContext());
verify(mockStream).start(streamListenerCaptor.capture());
verify(mockStream).setCompressor(isA(Compressor.class));
ClientStreamListener streamListener = streamListenerCaptor.getValue();
@@ -273,8 +273,8 @@
call2.start(mockCallListener2, headers2);
verify(mockTransport).newStream(same(method), same(headers2), same(CallOptions.DEFAULT),
statsTraceCtxCaptor.capture());
- assertEquals(censusCtxFactory.pollContextOrFail(),
- statsTraceCtxCaptor.getValue().getCensusContext());
+ assertEquals(statsCtxFactory.pollContextOrFail(),
+ statsTraceCtxCaptor.getValue().getStatsContext());
verify(mockStream2).start(streamListenerCaptor.capture());
ClientStreamListener streamListener2 = streamListenerCaptor.getValue();
diff --git a/core/src/test/java/io/grpc/internal/ManagedChannelImplTransportManagerTest.java b/core/src/test/java/io/grpc/internal/ManagedChannelImplTransportManagerTest.java
index 4e22278..14f3c35 100644
--- a/core/src/test/java/io/grpc/internal/ManagedChannelImplTransportManagerTest.java
+++ b/core/src/test/java/io/grpc/internal/ManagedChannelImplTransportManagerTest.java
@@ -102,10 +102,10 @@
private final CallOptions callOptions = CallOptions.DEFAULT.withAuthority("dummy_value");
private final CallOptions callOptions2 = CallOptions.DEFAULT.withAuthority("dummy_value2");
private final StatsTraceContext statsTraceCtx = StatsTraceContext.newClientContext(
- method.getFullMethodName(), NoopCensusContextFactory.INSTANCE,
+ method.getFullMethodName(), NoopStatsContextFactory.INSTANCE,
GrpcUtil.STOPWATCH_SUPPLIER);
private final StatsTraceContext statsTraceCtx2 = StatsTraceContext.newClientContext(
- method2.getFullMethodName(), NoopCensusContextFactory.INSTANCE,
+ method2.getFullMethodName(), NoopStatsContextFactory.INSTANCE,
GrpcUtil.STOPWATCH_SUPPLIER);
private ManagedChannelImpl channel;
@@ -142,7 +142,7 @@
CompressorRegistry.getDefaultInstance(), GrpcUtil.TIMER_SERVICE,
GrpcUtil.STOPWATCH_SUPPLIER, ManagedChannelImpl.IDLE_TIMEOUT_MILLIS_DISABLE,
executor, USER_AGENT, Collections.<ClientInterceptor>emptyList(),
- NoopCensusContextFactory.INSTANCE);
+ NoopStatsContextFactory.INSTANCE);
ArgumentCaptor<TransportManager<ClientTransport>> tmCaptor
= ArgumentCaptor.forClass(null);
diff --git a/core/src/test/java/io/grpc/internal/MessageDeframerTest.java b/core/src/test/java/io/grpc/internal/MessageDeframerTest.java
index ba5e47f..eec245d 100644
--- a/core/src/test/java/io/grpc/internal/MessageDeframerTest.java
+++ b/core/src/test/java/io/grpc/internal/MessageDeframerTest.java
@@ -43,18 +43,18 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoMoreInteractions;
-import com.google.census.RpcConstants;
import com.google.common.base.Charsets;
import com.google.common.io.ByteStreams;
import com.google.common.primitives.Bytes;
+import com.google.instrumentation.stats.RpcConstants;
import io.grpc.Codec;
import io.grpc.Status;
import io.grpc.StatusRuntimeException;
import io.grpc.internal.MessageDeframer.Listener;
import io.grpc.internal.MessageDeframer.SizeEnforcingInputStream;
-import io.grpc.internal.testing.CensusTestUtils.FakeCensusContextFactory;
-import io.grpc.internal.testing.CensusTestUtils.MetricsRecord;
+import io.grpc.internal.testing.StatsTestUtils.FakeStatsContextFactory;
+import io.grpc.internal.testing.StatsTestUtils.MetricsRecord;
import org.junit.Rule;
import org.junit.Test;
@@ -81,11 +81,11 @@
@Rule public final ExpectedException thrown = ExpectedException.none();
private Listener listener = mock(Listener.class);
- private final FakeCensusContextFactory censusCtxFactory = new FakeCensusContextFactory();
+ private final FakeStatsContextFactory statsCtxFactory = new FakeStatsContextFactory();
// MessageFramerTest tests with a server-side StatsTraceContext, so here we test with a
// client-side StatsTraceContext.
private StatsTraceContext statsTraceCtx = StatsTraceContext.newClientContext(
- "service/method", censusCtxFactory, GrpcUtil.STOPWATCH_SUPPLIER);
+ "service/method", statsCtxFactory, GrpcUtil.STOPWATCH_SUPPLIER);
private MessageDeframer deframer = new MessageDeframer(listener, Codec.Identity.NONE,
DEFAULT_MAX_MESSAGE_SIZE, statsTraceCtx);
@@ -393,7 +393,7 @@
private void checkStats(long wireBytesReceived, long uncompressedBytesReceived) {
statsTraceCtx.callEnded(Status.OK);
- MetricsRecord record = censusCtxFactory.pollRecord();
+ MetricsRecord record = statsCtxFactory.pollRecord();
assertEquals(0, record.getMetricAsLongOrFail(
RpcConstants.RPC_CLIENT_REQUEST_BYTES));
assertEquals(0, record.getMetricAsLongOrFail(
diff --git a/core/src/test/java/io/grpc/internal/MessageFramerTest.java b/core/src/test/java/io/grpc/internal/MessageFramerTest.java
index aad366b..fada3ee 100644
--- a/core/src/test/java/io/grpc/internal/MessageFramerTest.java
+++ b/core/src/test/java/io/grpc/internal/MessageFramerTest.java
@@ -41,14 +41,14 @@
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.verifyZeroInteractions;
-import com.google.census.RpcConstants;
+import com.google.instrumentation.stats.RpcConstants;
import io.grpc.Codec;
import io.grpc.Metadata;
import io.grpc.Status;
import io.grpc.internal.StatsTraceContext;
-import io.grpc.internal.testing.CensusTestUtils.FakeCensusContextFactory;
-import io.grpc.internal.testing.CensusTestUtils.MetricsRecord;
+import io.grpc.internal.testing.StatsTestUtils.FakeStatsContextFactory;
+import io.grpc.internal.testing.StatsTestUtils.MetricsRecord;
import org.junit.Before;
import org.junit.Test;
@@ -78,18 +78,18 @@
private ArgumentCaptor<ByteWritableBuffer> frameCaptor;
private BytesWritableBufferAllocator allocator =
new BytesWritableBufferAllocator(1000, 1000);
- private FakeCensusContextFactory censusCtxFactory;
+ private FakeStatsContextFactory statsCtxFactory;
private StatsTraceContext statsTraceCtx;
/** Set up for test. */
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
- censusCtxFactory = new FakeCensusContextFactory();
+ statsCtxFactory = new FakeStatsContextFactory();
// MessageDeframerTest tests with a client-side StatsTraceContext, so here we test with a
// server-side StatsTraceContext.
statsTraceCtx = StatsTraceContext.newServerContext(
- "service/method", censusCtxFactory, new Metadata(), GrpcUtil.STOPWATCH_SUPPLIER);
+ "service/method", statsCtxFactory, new Metadata(), GrpcUtil.STOPWATCH_SUPPLIER);
framer = new MessageFramer(sink, allocator, statsTraceCtx);
}
@@ -389,7 +389,7 @@
private void checkStats(long wireBytesSent, long uncompressedBytesSent) {
statsTraceCtx.callEnded(Status.OK);
- MetricsRecord record = censusCtxFactory.pollRecord();
+ MetricsRecord record = statsCtxFactory.pollRecord();
assertEquals(0, record.getMetricAsLongOrFail(
RpcConstants.RPC_SERVER_REQUEST_BYTES));
assertEquals(0, record.getMetricAsLongOrFail(
diff --git a/core/src/test/java/io/grpc/internal/ServerCallImplTest.java b/core/src/test/java/io/grpc/internal/ServerCallImplTest.java
index 55730ff..142527d 100644
--- a/core/src/test/java/io/grpc/internal/ServerCallImplTest.java
+++ b/core/src/test/java/io/grpc/internal/ServerCallImplTest.java
@@ -43,9 +43,9 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-import com.google.census.RpcConstants;
-import com.google.census.TagValue;
import com.google.common.io.CharStreams;
+import com.google.instrumentation.stats.RpcConstants;
+import com.google.instrumentation.stats.TagValue;
import io.grpc.CompressorRegistry;
import io.grpc.Context;
@@ -57,8 +57,8 @@
import io.grpc.ServerCall;
import io.grpc.Status;
import io.grpc.internal.ServerCallImpl.ServerStreamListenerImpl;
-import io.grpc.internal.testing.CensusTestUtils.FakeCensusContextFactory;
-import io.grpc.internal.testing.CensusTestUtils;
+import io.grpc.internal.testing.StatsTestUtils.FakeStatsContextFactory;
+import io.grpc.internal.testing.StatsTestUtils;
import org.junit.Before;
import org.junit.Rule;
@@ -90,9 +90,9 @@
MethodType.UNARY, "/service/method", new LongMarshaller(), new LongMarshaller());
private final Metadata requestHeaders = new Metadata();
- private final FakeCensusContextFactory censusCtxFactory = new FakeCensusContextFactory();
+ private final FakeStatsContextFactory statsCtxFactory = new FakeStatsContextFactory();
private final StatsTraceContext statsTraceCtx = StatsTraceContext.newServerContext(
- method.getFullMethodName(), censusCtxFactory, requestHeaders, GrpcUtil.STOPWATCH_SUPPLIER);
+ method.getFullMethodName(), statsCtxFactory, requestHeaders, GrpcUtil.STOPWATCH_SUPPLIER);
@Before
public void setUp() {
@@ -327,7 +327,7 @@
}
private void checkStats(Status.Code statusCode) {
- CensusTestUtils.MetricsRecord record = censusCtxFactory.pollRecord();
+ StatsTestUtils.MetricsRecord record = statsCtxFactory.pollRecord();
assertNotNull(record);
TagValue statusTag = record.tags.get(RpcConstants.RPC_STATUS);
assertNotNull(statusTag);
diff --git a/core/src/test/java/io/grpc/internal/ServerImplTest.java b/core/src/test/java/io/grpc/internal/ServerImplTest.java
index 7dfacb8..aceb08e 100644
--- a/core/src/test/java/io/grpc/internal/ServerImplTest.java
+++ b/core/src/test/java/io/grpc/internal/ServerImplTest.java
@@ -52,12 +52,12 @@
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
-import com.google.census.CensusContext;
-import com.google.census.RpcConstants;
-import com.google.census.TagValue;
import com.google.common.collect.ImmutableList;
import com.google.common.truth.Truth;
import com.google.common.util.concurrent.MoreExecutors;
+import com.google.instrumentation.stats.RpcConstants;
+import com.google.instrumentation.stats.StatsContext;
+import com.google.instrumentation.stats.TagValue;
import io.grpc.Attributes;
import io.grpc.Compressor;
@@ -77,8 +77,8 @@
import io.grpc.ServiceDescriptor;
import io.grpc.Status;
import io.grpc.StringMarshaller;
-import io.grpc.internal.testing.CensusTestUtils;
-import io.grpc.internal.testing.CensusTestUtils.FakeCensusContextFactory;
+import io.grpc.internal.testing.StatsTestUtils;
+import io.grpc.internal.testing.StatsTestUtils.FakeStatsContextFactory;
import io.grpc.util.MutableHandlerRegistry;
import org.junit.After;
@@ -119,7 +119,7 @@
Context.ROOT.withValue(SERVER_ONLY, "yes").withCancellation();
private static final ImmutableList<ServerTransportFilter> NO_FILTERS = ImmutableList.of();
- private final FakeCensusContextFactory censusCtxFactory = new FakeCensusContextFactory();
+ private final FakeStatsContextFactory statsCtxFactory = new FakeStatsContextFactory();
private final CompressorRegistry compressorRegistry = CompressorRegistry.getDefaultInstance();
private final DecompressorRegistry decompressorRegistry =
DecompressorRegistry.getDefaultInstance();
@@ -138,7 +138,7 @@
private MutableHandlerRegistry fallbackRegistry = new MutableHandlerRegistry();
private SimpleServer transportServer = new SimpleServer();
private ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
@Captor
@@ -174,7 +174,7 @@
public void shutdown() {}
};
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.start();
server.shutdown();
@@ -193,7 +193,7 @@
}
};
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.shutdown();
assertTrue(server.isShutdown());
@@ -203,7 +203,7 @@
@Test
public void startStopImmediateWithChildTransport() throws IOException {
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.start();
class DelayedShutdownServerTransport extends SimpleServerTransport {
@@ -228,7 +228,7 @@
@Test
public void startShutdownNowImmediateWithChildTransport() throws IOException {
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.start();
class DelayedShutdownServerTransport extends SimpleServerTransport {
@@ -256,7 +256,7 @@
@Test
public void shutdownNowAfterShutdown() throws IOException {
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.start();
class DelayedShutdownServerTransport extends SimpleServerTransport {
@@ -291,7 +291,7 @@
}
};
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.start();
class DelayedShutdownServerTransport extends SimpleServerTransport {
@@ -329,7 +329,7 @@
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry,
new FailingStartupServer(), SERVER_CONTEXT, decompressorRegistry, compressorRegistry,
- NO_FILTERS, censusCtxFactory, GrpcUtil.STOPWATCH_SUPPLIER);
+ NO_FILTERS, statsCtxFactory, GrpcUtil.STOPWATCH_SUPPLIER);
try {
server.start();
fail("expected exception");
@@ -356,7 +356,7 @@
assertEquals(Status.Code.UNIMPLEMENTED, status.getCode());
assertEquals("Method not found: Waiter/nonexist", status.getDescription());
- CensusTestUtils.MetricsRecord record = censusCtxFactory.pollRecord();
+ StatsTestUtils.MetricsRecord record = statsCtxFactory.pollRecord();
assertNotNull(record);
TagValue methodTag = record.tags.get(RpcConstants.RPC_SERVER_METHOD);
assertNotNull(methodTag);
@@ -370,8 +370,8 @@
public void basicExchangeSuccessful() throws Exception {
final Metadata.Key<String> metadataKey
= Metadata.Key.of("inception", Metadata.ASCII_STRING_MARSHALLER);
- final Metadata.Key<CensusContext> censusHeaderKey
- = StatsTraceContext.createCensusHeader(censusCtxFactory);
+ final Metadata.Key<StatsContext> statsHeaderKey
+ = StatsTraceContext.createStatsHeader(statsCtxFactory);
final AtomicReference<ServerCall<String, Integer>> callReference
= new AtomicReference<ServerCall<String, Integer>>();
MethodDescriptor<String, Integer> method = MethodDescriptor.create(
@@ -398,9 +398,9 @@
Metadata requestHeaders = new Metadata();
requestHeaders.put(metadataKey, "value");
- CensusContext censusContextOnClient = censusCtxFactory.getDefault().with(
- CensusTestUtils.EXTRA_TAG, new TagValue("extraTagValue"));
- requestHeaders.put(censusHeaderKey, censusContextOnClient);
+ StatsContext statsContextOnClient = statsCtxFactory.getDefault().with(
+ StatsTestUtils.EXTRA_TAG, TagValue.create("extraTagValue"));
+ requestHeaders.put(statsHeaderKey, statsContextOnClient);
StatsTraceContext statsTraceCtx =
transportListener.methodDetermined("Waiter/serve", requestHeaders);
assertNotNull(statsTraceCtx);
@@ -456,7 +456,7 @@
verifyNoMoreInteractions(callListener);
// Check stats
- CensusTestUtils.MetricsRecord record = censusCtxFactory.pollRecord();
+ StatsTestUtils.MetricsRecord record = statsCtxFactory.pollRecord();
assertNotNull(record);
TagValue methodTag = record.tags.get(RpcConstants.RPC_SERVER_METHOD);
assertNotNull(methodTag);
@@ -464,7 +464,7 @@
TagValue statusTag = record.tags.get(RpcConstants.RPC_STATUS);
assertNotNull(statusTag);
assertEquals(Status.Code.OK.toString(), statusTag.toString());
- TagValue extraTag = record.tags.get(CensusTestUtils.EXTRA_TAG);
+ TagValue extraTag = record.tags.get(StatsTestUtils.EXTRA_TAG);
assertNotNull(extraTag);
assertEquals("extraTagValue", extraTag.toString());
assertNull(record.getMetric(RpcConstants.RPC_CLIENT_REQUEST_BYTES));
@@ -542,7 +542,7 @@
ServerImpl server = new ServerImpl(MoreExecutors.directExecutor(), registry, fallbackRegistry,
transportServer, SERVER_CONTEXT, decompressorRegistry, compressorRegistry,
- ImmutableList.of(filter1, filter2), censusCtxFactory, GrpcUtil.STOPWATCH_SUPPLIER);
+ ImmutableList.of(filter1, filter2), statsCtxFactory, GrpcUtil.STOPWATCH_SUPPLIER);
server.start();
ServerTransportListener transportListener
= transportServer.registerNewServerTransport(new SimpleServerTransport());
@@ -623,7 +623,7 @@
transportServer = new MaybeDeadlockingServer();
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.start();
new Thread() {
@@ -829,7 +829,7 @@
}
};
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.start();
@@ -840,7 +840,7 @@
public void getPortBeforeStartedFails() {
transportServer = new SimpleServer();
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
thrown.expect(IllegalStateException.class);
thrown.expectMessage("started");
@@ -851,7 +851,7 @@
public void getPortAfterTerminationFails() throws Exception {
transportServer = new SimpleServer();
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.start();
server.shutdown();
@@ -872,7 +872,7 @@
.build();
transportServer = new SimpleServer();
ServerImpl server = new ServerImpl(executor, registry, fallbackRegistry, transportServer,
- SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, censusCtxFactory,
+ SERVER_CONTEXT, decompressorRegistry, compressorRegistry, NO_FILTERS, statsCtxFactory,
GrpcUtil.STOPWATCH_SUPPLIER);
server.start();