Search in sources :

Example 41 with KafkaMetric

use of org.apache.kafka.common.metrics.KafkaMetric in project kafka by apache.

the class MeteredKeyValueStoreTest method shouldGetAllFromInnerStoreAndRecordAllMetric.

@Test
public void shouldGetAllFromInnerStoreAndRecordAllMetric() {
    expect(inner.all()).andReturn(new KeyValueIteratorStub<>(Collections.singletonList(BYTE_KEY_VALUE_PAIR).iterator()));
    init();
    final KeyValueIterator<String, String> iterator = metered.all();
    assertThat(iterator.next().value, equalTo(VALUE));
    assertFalse(iterator.hasNext());
    iterator.close();
    final KafkaMetric metric = metric(new MetricName("all-rate", STORE_LEVEL_GROUP, "", tags));
    assertTrue((Double) metric.metricValue() > 0);
    verify(inner);
}
Also used : MetricName(org.apache.kafka.common.MetricName) KafkaMetric(org.apache.kafka.common.metrics.KafkaMetric) Test(org.junit.Test)

Example 42 with KafkaMetric

use of org.apache.kafka.common.metrics.KafkaMetric in project kafka by apache.

the class MeteredKeyValueStoreTest method shouldGetRecordsWithPrefixKey.

@Test
public void shouldGetRecordsWithPrefixKey() {
    final StringSerializer stringSerializer = new StringSerializer();
    expect(inner.prefixScan(KEY, stringSerializer)).andReturn(new KeyValueIteratorStub<>(Collections.singletonList(BYTE_KEY_VALUE_PAIR).iterator()));
    init();
    final KeyValueIterator<String, String> iterator = metered.prefixScan(KEY, stringSerializer);
    assertThat(iterator.next().value, equalTo(VALUE));
    iterator.close();
    final KafkaMetric metric = metrics.metric(new MetricName("prefix-scan-rate", STORE_LEVEL_GROUP, "", tags));
    assertTrue((Double) metric.metricValue() > 0);
    verify(inner);
}
Also used : MetricName(org.apache.kafka.common.MetricName) KafkaMetric(org.apache.kafka.common.metrics.KafkaMetric) StringSerializer(org.apache.kafka.common.serialization.StringSerializer) Test(org.junit.Test)

Example 43 with KafkaMetric

use of org.apache.kafka.common.metrics.KafkaMetric in project kafka by apache.

the class MeteredSessionStoreTest method shouldFetchForKeyAndRecordFetchMetric.

@Test
public void shouldFetchForKeyAndRecordFetchMetric() {
    expect(innerStore.fetch(KEY_BYTES)).andReturn(new KeyValueIteratorStub<>(Collections.singleton(KeyValue.pair(WINDOWED_KEY_BYTES, VALUE_BYTES)).iterator()));
    init();
    final KeyValueIterator<Windowed<String>, String> iterator = store.fetch(KEY);
    assertThat(iterator.next().value, equalTo(VALUE));
    assertFalse(iterator.hasNext());
    iterator.close();
    // it suffices to verify one fetch metric since all fetch metrics are recorded by the same sensor
    // and the sensor is tested elsewhere
    final KafkaMetric metric = metric("fetch-rate");
    assertTrue((Double) metric.metricValue() > 0);
    verify(innerStore);
}
Also used : Windowed(org.apache.kafka.streams.kstream.Windowed) KafkaMetric(org.apache.kafka.common.metrics.KafkaMetric) Test(org.junit.Test)

Example 44 with KafkaMetric

use of org.apache.kafka.common.metrics.KafkaMetric in project kafka by apache.

the class MeteredSessionStoreTest method shouldWriteBytesToInnerStoreAndRecordPutMetric.

@Test
public void shouldWriteBytesToInnerStoreAndRecordPutMetric() {
    innerStore.put(eq(WINDOWED_KEY_BYTES), aryEq(VALUE_BYTES));
    expectLastCall();
    init();
    store.put(WINDOWED_KEY, VALUE);
    // it suffices to verify one put metric since all put metrics are recorded by the same sensor
    // and the sensor is tested elsewhere
    final KafkaMetric metric = metric("put-rate");
    assertTrue(((Double) metric.metricValue()) > 0);
    verify(innerStore);
}
Also used : KafkaMetric(org.apache.kafka.common.metrics.KafkaMetric) Test(org.junit.Test)

Example 45 with KafkaMetric

use of org.apache.kafka.common.metrics.KafkaMetric in project kafka by apache.

the class MeteredSessionStoreTest method shouldFetchRangeFromStoreAndRecordFetchMetric.

@Test
public void shouldFetchRangeFromStoreAndRecordFetchMetric() {
    expect(innerStore.fetch(KEY_BYTES, KEY_BYTES)).andReturn(new KeyValueIteratorStub<>(Collections.singleton(KeyValue.pair(WINDOWED_KEY_BYTES, VALUE_BYTES)).iterator()));
    init();
    final KeyValueIterator<Windowed<String>, String> iterator = store.fetch(KEY, KEY);
    assertThat(iterator.next().value, equalTo(VALUE));
    assertFalse(iterator.hasNext());
    iterator.close();
    // it suffices to verify one fetch metric since all fetch metrics are recorded by the same sensor
    // and the sensor is tested elsewhere
    final KafkaMetric metric = metric("fetch-rate");
    assertTrue((Double) metric.metricValue() > 0);
    verify(innerStore);
}
Also used : Windowed(org.apache.kafka.streams.kstream.Windowed) KafkaMetric(org.apache.kafka.common.metrics.KafkaMetric) Test(org.junit.Test)

Aggregations

KafkaMetric (org.apache.kafka.common.metrics.KafkaMetric)95 Test (org.junit.Test)73 MetricName (org.apache.kafka.common.MetricName)36 HashMap (java.util.HashMap)17 MemoryRecordsBuilder (org.apache.kafka.common.record.MemoryRecordsBuilder)14 LinkedHashMap (java.util.LinkedHashMap)12 ConsumerRecord (org.apache.kafka.clients.consumer.ConsumerRecord)12 Windowed (org.apache.kafka.streams.kstream.Windowed)12 Test (org.junit.jupiter.api.Test)11 TopicPartition (org.apache.kafka.common.TopicPartition)10 List (java.util.List)8 Cluster (org.apache.kafka.common.Cluster)8 Node (org.apache.kafka.common.Node)8 Sensor (org.apache.kafka.common.metrics.Sensor)8 LegacyRecord (org.apache.kafka.common.record.LegacyRecord)8 MemoryRecords (org.apache.kafka.common.record.MemoryRecords)8 Record (org.apache.kafka.common.record.Record)8 SimpleRecord (org.apache.kafka.common.record.SimpleRecord)8 Metrics (org.apache.kafka.common.metrics.Metrics)7 PartitionData (org.apache.kafka.common.requests.FetchRequest.PartitionData)7