Class ManagedLedgerCacheMetrics
- java.lang.Object
-
- org.apache.pulsar.broker.stats.metrics.ManagedLedgerCacheMetrics
-
public class ManagedLedgerCacheMetrics extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected static double[]ENTRY_LATENCY_BUCKETS_MSprotected static double[]ENTRY_SIZE_BUCKETS_BYTESprotected static java.lang.StringMETRICS_VERSION_SUFFIXprotected PulsarServicepulsarprotected static java.util.regex.PatternV2_LEDGER_NAME_PATTERN
-
Constructor Summary
Constructors Constructor Description ManagedLedgerCacheMetrics(PulsarService pulsar)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected doubleaverage(java.util.List<java.lang.Double> values)protected org.apache.pulsar.common.stats.MetricscreateMetrics()Creates a metrics with empty immutable dimension.protected org.apache.pulsar.common.stats.MetricscreateMetrics(java.util.Map<java.lang.String,java.lang.String> dimensionMap)protected org.apache.pulsar.common.stats.MetricscreateMetricsByDimension(java.lang.String namespace)Creates a dimension key for metrics.protected org.apache.pulsar.common.stats.MetricscreateMetricsByDimension(java.lang.String namespace, java.lang.String fromClusterName, java.lang.String toClusterName)Creates a dimension key for replication metrics.java.util.List<org.apache.pulsar.common.stats.Metrics>generate()protected java.lang.StringgetLocalClusterName()protected org.apache.bookkeeper.mledger.ManagedLedgerFactoryMXBeangetManagedLedgerCacheStats()Returns the managed ledger cache statistics from ML factory.protected java.util.Map<java.lang.String,org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl>getManagedLedgers()Returns managed ledgers map from ML factory.protected java.lang.StringparseNamespaceFromLedgerName(java.lang.String ledgerName)protected voidpopulateAggregationMap(java.util.Map<java.lang.String,java.util.List<java.lang.Double>> map, java.lang.String mkey, double value)protected voidpopulateAggregationMapWithSum(java.util.Map<java.lang.String,java.lang.Double> map, java.lang.String mkey, double value)protected voidpopulateDimensionMap(java.util.Map<org.apache.pulsar.common.stats.Metrics,java.util.List<org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl>> ledgersByDimensionMap, org.apache.pulsar.common.stats.Metrics metrics, org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl ledger)Helper to manage populating topics map.protected voidpopulateDimensionMap(java.util.Map<org.apache.pulsar.common.stats.Metrics,java.util.List<org.apache.pulsar.common.policies.data.TopicStats>> topicsStatsByDimensionMap, org.apache.pulsar.common.stats.Metrics metrics, org.apache.pulsar.common.policies.data.TopicStats destStats)protected voidpopulateMaxMap(java.util.Map<java.lang.String,java.lang.Long> map, java.lang.String mkey, long value)protected doublesum(java.util.List<java.lang.Double> values)
-
-
-
Field Detail
-
METRICS_VERSION_SUFFIX
protected static final java.lang.String METRICS_VERSION_SUFFIX
- See Also:
- Constant Field Values
-
V2_LEDGER_NAME_PATTERN
protected static final java.util.regex.Pattern V2_LEDGER_NAME_PATTERN
-
ENTRY_LATENCY_BUCKETS_MS
protected static final double[] ENTRY_LATENCY_BUCKETS_MS
-
ENTRY_SIZE_BUCKETS_BYTES
protected static final double[] ENTRY_SIZE_BUCKETS_BYTES
-
pulsar
protected final PulsarService pulsar
-
-
Constructor Detail
-
ManagedLedgerCacheMetrics
public ManagedLedgerCacheMetrics(PulsarService pulsar)
-
-
Method Detail
-
generate
public java.util.List<org.apache.pulsar.common.stats.Metrics> generate()
-
createMetrics
protected org.apache.pulsar.common.stats.Metrics createMetrics()
Creates a metrics with empty immutable dimension.Use this for metrics that doesn't need any dimension - i.e global metrics
- Returns:
-
createMetrics
protected org.apache.pulsar.common.stats.Metrics createMetrics(java.util.Map<java.lang.String,java.lang.String> dimensionMap)
-
getManagedLedgerCacheStats
protected org.apache.bookkeeper.mledger.ManagedLedgerFactoryMXBean getManagedLedgerCacheStats()
Returns the managed ledger cache statistics from ML factory.- Returns:
-
getManagedLedgers
protected java.util.Map<java.lang.String,org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl> getManagedLedgers()
Returns managed ledgers map from ML factory.- Returns:
-
getLocalClusterName
protected java.lang.String getLocalClusterName()
-
average
protected double average(java.util.List<java.lang.Double> values)
-
sum
protected double sum(java.util.List<java.lang.Double> values)
-
parseNamespaceFromLedgerName
protected java.lang.String parseNamespaceFromLedgerName(java.lang.String ledgerName)
-
createMetricsByDimension
protected org.apache.pulsar.common.stats.Metrics createMetricsByDimension(java.lang.String namespace)
Creates a dimension key for metrics.- Parameters:
namespace- Namespace of metric- Returns:
-
createMetricsByDimension
protected org.apache.pulsar.common.stats.Metrics createMetricsByDimension(java.lang.String namespace, java.lang.String fromClusterName, java.lang.String toClusterName)Creates a dimension key for replication metrics.- Parameters:
namespace-fromClusterName-toClusterName-- Returns:
-
populateAggregationMap
protected void populateAggregationMap(java.util.Map<java.lang.String,java.util.List<java.lang.Double>> map, java.lang.String mkey, double value)
-
populateAggregationMapWithSum
protected void populateAggregationMapWithSum(java.util.Map<java.lang.String,java.lang.Double> map, java.lang.String mkey, double value)
-
populateMaxMap
protected void populateMaxMap(java.util.Map<java.lang.String,java.lang.Long> map, java.lang.String mkey, long value)
-
populateDimensionMap
protected void populateDimensionMap(java.util.Map<org.apache.pulsar.common.stats.Metrics,java.util.List<org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl>> ledgersByDimensionMap, org.apache.pulsar.common.stats.Metrics metrics, org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl ledger)Helper to manage populating topics map.- Parameters:
ledgersByDimensionMap-metrics-ledger-
-
populateDimensionMap
protected void populateDimensionMap(java.util.Map<org.apache.pulsar.common.stats.Metrics,java.util.List<org.apache.pulsar.common.policies.data.TopicStats>> topicsStatsByDimensionMap, org.apache.pulsar.common.stats.Metrics metrics, org.apache.pulsar.common.policies.data.TopicStats destStats)
-
-