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
public class AggRouterHttpRequestStats extends AbstractVeniceAggStoreStats<RouterHttpRequestStats>
-
-
Field Summary
-
Fields inherited from class com.linkedin.venice.stats.AbstractVeniceAggStats
STORE_NAME_FOR_TOTAL_STAT, storeStats, totalStats
-
-
Constructor Summary
Constructors Constructor Description AggRouterHttpRequestStats(java.lang.String cluster, io.tehuti.metrics.MetricsRepository metricsRepository, RequestType requestType, boolean isKeyValueProfilingEnabled, ReadOnlyStoreRepository metadataRepository, boolean isUnregisterMetricForDeletedStoreEnabled)
AggRouterHttpRequestStats(java.lang.String clusterName, io.tehuti.metrics.MetricsRepository metricsRepository, RequestType requestType, ReadOnlyStoreRepository metadataRepository, boolean isUnregisterMetricForDeletedStoreEnabled)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ScatterGatherStats
getScatterGatherStatsForStore(java.lang.String storeName)
void
recordAllowedRetryRequest(java.lang.String storeName)
void
recordBadRequest(java.lang.String storeName, io.netty.handler.codec.http.HttpResponseStatus responseStatus)
void
recordBadRequestKeyCount(java.lang.String storeName, int keyCount)
void
recordCompressedResponseSize(java.lang.String storeName, double compressedResponseSize)
void
recordDecompressionTime(java.lang.String storeName, double decompressionTime)
void
recordDelayConstraintAbortedRetryRequest(java.lang.String storeName)
void
recordDisallowedRetryRequest(java.lang.String storeName)
void
recordErrorRetryAttemptTriggeredByPendingRequestCheck(java.lang.String storeName)
void
recordErrorRetryCount(java.lang.String storeName)
void
recordFanoutRequestCount(java.lang.String storeName, int count)
void
recordFindUnhealthyHostRequest(java.lang.String storeName)
void
recordHealthyRequest(java.lang.String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus)
void
recordKeyNum(java.lang.String storeName, int keyNum)
void
recordKeySize(java.lang.String storeName, long keySize)
void
recordLatency(java.lang.String storeName, double latency)
void
recordMetaStoreShadowRead(java.lang.String storeName)
void
recordMultiGetFallback(java.lang.String storeName, int keyCount)
void
recordNoAvailableReplicaAbortedRetryRequest(java.lang.String storeName)
void
recordQuota(java.lang.String storeName, double quota)
void
recordReadQuotaUsage(java.lang.String storeName, int quotaUsage)
Calculate read quota usage based on how many key/value pairs are successfully returned from server.void
recordRequest(java.lang.String storeName)
void
recordRequestParsingLatency(java.lang.String storeName, double latency)
void
recordRequestRoutingLatency(java.lang.String storeName, double latency)
void
recordRequestSize(java.lang.String storeName, double keySize)
void
recordRequestThrottledByRouterCapacity(java.lang.String storeName)
void
recordRequestUsage(java.lang.String storeName, int usage)
void
recordResponse(java.lang.String storeName)
void
recordResponseSize(java.lang.String storeName, double valueSize)
void
recordResponseWaitingTime(java.lang.String storeName, double waitingTime)
void
recordRetryDelay(java.lang.String storeName, double delay)
void
recordRetryRouteLimitAbortedRetryRequest(java.lang.String storeName)
void
recordSlowRouteAbortedRetryRequest(java.lang.String storeName)
void
recordTardyRequest(java.lang.String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus)
void
recordThrottledRequest(java.lang.String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus httpResponseStatus)
void
recordThrottledRequest(java.lang.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(java.lang.String storeName)
void
recordUnavailableRequest(java.lang.String storeName)
void
recordUnhealthyRequest(java.lang.String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus)
void
recordUnhealthyRequest(java.lang.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 Detail
-
AggRouterHttpRequestStats
public AggRouterHttpRequestStats(java.lang.String clusterName, io.tehuti.metrics.MetricsRepository metricsRepository, RequestType requestType, ReadOnlyStoreRepository metadataRepository, boolean isUnregisterMetricForDeletedStoreEnabled)
-
AggRouterHttpRequestStats
public AggRouterHttpRequestStats(java.lang.String cluster, io.tehuti.metrics.MetricsRepository metricsRepository, RequestType requestType, boolean isKeyValueProfilingEnabled, ReadOnlyStoreRepository metadataRepository, boolean isUnregisterMetricForDeletedStoreEnabled)
-
-
Method Detail
-
getScatterGatherStatsForStore
public ScatterGatherStats getScatterGatherStatsForStore(java.lang.String storeName)
-
recordRequest
public void recordRequest(java.lang.String storeName)
-
recordHealthyRequest
public void recordHealthyRequest(java.lang.String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus)
-
recordUnhealthyRequest
public void recordUnhealthyRequest(java.lang.String storeName, io.netty.handler.codec.http.HttpResponseStatus responseStatus)
-
recordUnavailableReplicaStreamingRequest
public void recordUnavailableReplicaStreamingRequest(java.lang.String storeName)
-
recordUnhealthyRequest
public void recordUnhealthyRequest(java.lang.String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus)
-
recordReadQuotaUsage
public void recordReadQuotaUsage(java.lang.String storeName, int quotaUsage)
Calculate read quota usage based on how many key/value pairs are successfully returned from server.- Parameters:
storeName
-quotaUsage
-
-
recordTardyRequest
public void recordTardyRequest(java.lang.String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus responseStatus)
-
recordThrottledRequest
public void recordThrottledRequest(java.lang.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(java.lang.String storeName, double latency, io.netty.handler.codec.http.HttpResponseStatus httpResponseStatus)
-
recordBadRequest
public void recordBadRequest(java.lang.String storeName, io.netty.handler.codec.http.HttpResponseStatus responseStatus)
-
recordBadRequestKeyCount
public void recordBadRequestKeyCount(java.lang.String storeName, int keyCount)
-
recordRequestThrottledByRouterCapacity
public void recordRequestThrottledByRouterCapacity(java.lang.String storeName)
-
recordErrorRetryCount
public void recordErrorRetryCount(java.lang.String storeName)
-
recordFanoutRequestCount
public void recordFanoutRequestCount(java.lang.String storeName, int count)
-
recordLatency
public void recordLatency(java.lang.String storeName, double latency)
-
recordResponseWaitingTime
public void recordResponseWaitingTime(java.lang.String storeName, double waitingTime)
-
recordRequestSize
public void recordRequestSize(java.lang.String storeName, double keySize)
-
recordCompressedResponseSize
public void recordCompressedResponseSize(java.lang.String storeName, double compressedResponseSize)
-
recordResponseSize
public void recordResponseSize(java.lang.String storeName, double valueSize)
-
recordDecompressionTime
public void recordDecompressionTime(java.lang.String storeName, double decompressionTime)
-
recordQuota
public void recordQuota(java.lang.String storeName, double quota)
-
recordTotalQuota
public void recordTotalQuota(double totalQuota)
-
recordFindUnhealthyHostRequest
public void recordFindUnhealthyHostRequest(java.lang.String storeName)
-
recordResponse
public void recordResponse(java.lang.String storeName)
-
recordMetaStoreShadowRead
public void recordMetaStoreShadowRead(java.lang.String storeName)
-
recordKeyNum
public void recordKeyNum(java.lang.String storeName, int keyNum)
-
recordRequestUsage
public void recordRequestUsage(java.lang.String storeName, int usage)
-
recordMultiGetFallback
public void recordMultiGetFallback(java.lang.String storeName, int keyCount)
-
recordRequestParsingLatency
public void recordRequestParsingLatency(java.lang.String storeName, double latency)
-
recordRequestRoutingLatency
public void recordRequestRoutingLatency(java.lang.String storeName, double latency)
-
recordUnavailableRequest
public void recordUnavailableRequest(java.lang.String storeName)
-
recordDelayConstraintAbortedRetryRequest
public void recordDelayConstraintAbortedRetryRequest(java.lang.String storeName)
-
recordSlowRouteAbortedRetryRequest
public void recordSlowRouteAbortedRetryRequest(java.lang.String storeName)
-
recordRetryRouteLimitAbortedRetryRequest
public void recordRetryRouteLimitAbortedRetryRequest(java.lang.String storeName)
-
recordKeySize
public void recordKeySize(java.lang.String storeName, long keySize)
-
recordAllowedRetryRequest
public void recordAllowedRetryRequest(java.lang.String storeName)
-
recordDisallowedRetryRequest
public void recordDisallowedRetryRequest(java.lang.String storeName)
-
recordNoAvailableReplicaAbortedRetryRequest
public void recordNoAvailableReplicaAbortedRetryRequest(java.lang.String storeName)
-
recordErrorRetryAttemptTriggeredByPendingRequestCheck
public void recordErrorRetryAttemptTriggeredByPendingRequestCheck(java.lang.String storeName)
-
recordRetryDelay
public void recordRetryDelay(java.lang.String storeName, double delay)
-
-