Package com.linkedin.venice.router.stats
Class AggRouterHttpRequestStats
java.lang.Object
com.linkedin.venice.stats.AbstractVeniceAggStats<T>
com.linkedin.venice.stats.AbstractVeniceAggStoreStats<RouterHttpRequestStats>
com.linkedin.venice.router.stats.AggRouterHttpRequestStats
- All Implemented Interfaces:
StoreDataChangedListener
-
Field Summary
Fields inherited from class com.linkedin.venice.stats.AbstractVeniceAggStats
STORE_NAME_FOR_TOTAL_STAT, storeStats, totalStats
-
Constructor Summary
ConstructorDescriptionAggRouterHttpRequestStats
(String cluster, io.tehuti.metrics.MetricsRepository metricsRepository, RequestType requestType, boolean isKeyValueProfilingEnabled, ReadOnlyStoreRepository metadataRepository, boolean isUnregisterMetricForDeletedStoreEnabled) AggRouterHttpRequestStats
(String clusterName, io.tehuti.metrics.MetricsRepository metricsRepository, RequestType requestType, ReadOnlyStoreRepository metadataRepository, boolean isUnregisterMetricForDeletedStoreEnabled) -
Method Summary
Modifier and TypeMethodDescriptiongetScatterGatherStatsForStore
(String storeName) void
recordAllowedRetryRequest
(String storeName) void
recordBadRequest
(String storeName, io.netty.handler.codec.http.HttpResponseStatus responseStatus) void
recordBadRequestKeyCount
(String storeName, int keyCount) void
recordCompressedResponseSize
(String storeName, double compressedResponseSize) void
recordDecompressionTime
(String storeName, double decompressionTime) void
recordDelayConstraintAbortedRetryRequest
(String storeName) void
recordDisallowedRetryRequest
(String storeName) void
void
recordErrorRetryCount
(String storeName) void
recordFanoutRequestCount
(String storeName, int count) void
recordFindUnhealthyHostRequest
(String storeName) void
recordHealthyRequest
(String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus) void
recordKeyNum
(String storeName, int keyNum) void
recordKeySize
(String storeName, long keySize) void
recordLatency
(String storeName, double latency) void
recordMetaStoreShadowRead
(String storeName) void
recordMultiGetFallback
(String storeName, int keyCount) void
void
recordQuota
(String storeName, double quota) void
recordReadQuotaUsage
(String storeName, int quotaUsage) Calculate read quota usage based on how many key/value pairs are successfully returned from server.void
recordRequest
(String storeName) void
recordRequestParsingLatency
(String storeName, double latency) void
recordRequestRoutingLatency
(String storeName, double latency) void
recordRequestSize
(String storeName, double keySize) void
recordRequestThrottledByRouterCapacity
(String storeName) void
recordRequestUsage
(String storeName, int usage) void
recordResponse
(String storeName) void
recordResponseSize
(String storeName, double valueSize) void
recordResponseWaitingTime
(String storeName, double waitingTime) void
recordRetryDelay
(String storeName, double delay) void
recordRetryRouteLimitAbortedRetryRequest
(String storeName) void
recordSlowRouteAbortedRetryRequest
(String storeName) void
recordTardyRequest
(String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus) void
recordThrottledRequest
(String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus httpResponseStatus) void
recordThrottledRequest
(String storeName, io.netty.handler.codec.http.HttpResponseStatus httpResponseStatus) Once we stop reporting throttled requests inRouterExceptionAndTrackingUtils
, and we only report them inVeniceResponseAggregator
then we will always have a latency and we'll be able to remove this overload.void
recordTotalQuota
(double totalQuota) void
recordUnavailableReplicaStreamingRequest
(String storeName) void
recordUnavailableRequest
(String storeName) void
recordUnhealthyRequest
(String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus) void
recordUnhealthyRequest
(String storeName, io.netty.handler.codec.http.HttpResponseStatus responseStatus) Methods inherited from class com.linkedin.venice.stats.AbstractVeniceAggStoreStats
getStoreStats, handleStoreDeleted
Methods inherited from class com.linkedin.venice.stats.AbstractVeniceAggStats
getNullableStoreStats, getTotalStats, setStatsSupplier
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.linkedin.venice.meta.StoreDataChangedListener
handleStoreChanged, handleStoreCreated, handleStoreDeleted
-
Constructor Details
-
AggRouterHttpRequestStats
public AggRouterHttpRequestStats(String clusterName, io.tehuti.metrics.MetricsRepository metricsRepository, RequestType requestType, ReadOnlyStoreRepository metadataRepository, boolean isUnregisterMetricForDeletedStoreEnabled) -
AggRouterHttpRequestStats
public AggRouterHttpRequestStats(String cluster, io.tehuti.metrics.MetricsRepository metricsRepository, RequestType requestType, boolean isKeyValueProfilingEnabled, ReadOnlyStoreRepository metadataRepository, boolean isUnregisterMetricForDeletedStoreEnabled)
-
-
Method Details
-
getScatterGatherStatsForStore
-
recordRequest
-
recordHealthyRequest
public void recordHealthyRequest(String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus) -
recordUnhealthyRequest
public void recordUnhealthyRequest(String storeName, io.netty.handler.codec.http.HttpResponseStatus responseStatus) -
recordUnhealthyRequest
public void recordUnhealthyRequest(String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus) -
recordReadQuotaUsage
Calculate read quota usage based on how many key/value pairs are successfully returned from server.- Parameters:
storeName
-quotaUsage
-
-
recordTardyRequest
public void recordTardyRequest(String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus) -
recordThrottledRequest
public void recordThrottledRequest(String storeName, io.netty.handler.codec.http.HttpResponseStatus httpResponseStatus) Once we stop reporting throttled requests inRouterExceptionAndTrackingUtils
, and we only report them inVeniceResponseAggregator
then we will always have a latency and we'll be able to remove this overload. TODO: Remove this overload after fixing the above. -
recordThrottledRequest
public void recordThrottledRequest(String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus httpResponseStatus) -
recordBadRequest
public void recordBadRequest(String storeName, io.netty.handler.codec.http.HttpResponseStatus responseStatus) -
recordBadRequestKeyCount
-
recordRequestThrottledByRouterCapacity
-
recordErrorRetryCount
-
recordFanoutRequestCount
-
recordLatency
-
recordResponseWaitingTime
-
recordRequestSize
-
recordCompressedResponseSize
-
recordResponseSize
-
recordDecompressionTime
-
recordQuota
-
recordTotalQuota
public void recordTotalQuota(double totalQuota) -
recordFindUnhealthyHostRequest
-
recordResponse
-
recordMetaStoreShadowRead
-
recordKeyNum
-
recordRequestUsage
-
recordMultiGetFallback
-
recordRequestParsingLatency
-
recordRequestRoutingLatency
-
recordDelayConstraintAbortedRetryRequest
-
recordSlowRouteAbortedRetryRequest
-
recordRetryRouteLimitAbortedRetryRequest
-
recordKeySize
-
recordAllowedRetryRequest
-
recordDisallowedRetryRequest
-
recordNoAvailableReplicaAbortedRetryRequest
-
recordErrorRetryAttemptTriggeredByPendingRequestCheck
-
recordRetryDelay
-