Package io.grpc.xds.client
Class LoadReportClient
java.lang.Object
io.grpc.xds.client.LoadReportClient
Client of xDS load reporting service based on LRS protocol, which reports load stats of
gRPC client's perspective to a management server.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
private class
private final class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final io.grpc.internal.BackoffPolicy.Provider
final LoadStatsManager2
private final XdsLogger
private final io.grpc.InternalLogId
private io.grpc.internal.BackoffPolicy
private io.grpc.SynchronizationContext.ScheduledHandle
private LoadReportClient.LrsStream
private static final io.grpc.MethodDescriptor
<LoadStatsRequest, LoadStatsResponse> private final EnvoyProtoData.Node
private final com.google.common.base.Stopwatch
private boolean
private final io.grpc.SynchronizationContext
private final ScheduledExecutorService
private final XdsTransportFactory.XdsTransport
-
Constructor Summary
ConstructorsConstructorDescriptionLoadReportClient
(LoadStatsManager2 loadStatsManager, XdsTransportFactory.XdsTransport xdsTransport, EnvoyProtoData.Node node, io.grpc.SynchronizationContext syncContext, ScheduledExecutorService scheduledExecutorService, io.grpc.internal.BackoffPolicy.Provider backoffPolicyProvider, com.google.common.base.Supplier<com.google.common.base.Stopwatch> stopwatchSupplier) -
Method Summary
Modifier and TypeMethodDescriptionboolean
void
Establishes load reporting communication and negotiates with traffic director to report load stats periodically.private void
void
Terminates load reporting.
-
Field Details
-
logId
private final io.grpc.InternalLogId logId -
logger
-
xdsTransport
-
node
-
syncContext
private final io.grpc.SynchronizationContext syncContext -
timerService
-
retryStopwatch
private final com.google.common.base.Stopwatch retryStopwatch -
backoffPolicyProvider
private final io.grpc.internal.BackoffPolicy.Provider backoffPolicyProvider -
loadStatsManager
-
started
private boolean started -
lrsRpcRetryPolicy
-
lrsRpcRetryTimer
-
lrsStream
-
method
-
-
Constructor Details
-
LoadReportClient
public LoadReportClient(LoadStatsManager2 loadStatsManager, XdsTransportFactory.XdsTransport xdsTransport, EnvoyProtoData.Node node, io.grpc.SynchronizationContext syncContext, ScheduledExecutorService scheduledExecutorService, io.grpc.internal.BackoffPolicy.Provider backoffPolicyProvider, com.google.common.base.Supplier<com.google.common.base.Stopwatch> stopwatchSupplier)
-
-
Method Details
-
lrsStreamIsNull
public boolean lrsStreamIsNull() -
startLoadReporting
public void startLoadReporting()Establishes load reporting communication and negotiates with traffic director to report load stats periodically. Calling this method on an already startedLoadReportClient
is no-op. -
stopLoadReporting
public void stopLoadReporting()Terminates load reporting. Calling this method on an already stoppedLoadReportClient
is no-op. -
startLrsRpc
private void startLrsRpc()
-