Search in sources :

Example 1 with KafkaMetricsContext

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

the class KafkaConsumer method buildMetrics.

private static Metrics buildMetrics(ConsumerConfig config, Time time, String clientId) {
    Map<String, String> metricsTags = Collections.singletonMap(CLIENT_ID_METRIC_TAG, clientId);
    MetricConfig metricConfig = new MetricConfig().samples(config.getInt(ConsumerConfig.METRICS_NUM_SAMPLES_CONFIG)).timeWindow(config.getLong(ConsumerConfig.METRICS_SAMPLE_WINDOW_MS_CONFIG), TimeUnit.MILLISECONDS).recordLevel(Sensor.RecordingLevel.forName(config.getString(ConsumerConfig.METRICS_RECORDING_LEVEL_CONFIG))).tags(metricsTags);
    List<MetricsReporter> reporters = config.getConfiguredInstances(ConsumerConfig.METRIC_REPORTER_CLASSES_CONFIG, MetricsReporter.class, Collections.singletonMap(ConsumerConfig.CLIENT_ID_CONFIG, clientId));
    JmxReporter jmxReporter = new JmxReporter();
    jmxReporter.configure(config.originals(Collections.singletonMap(ConsumerConfig.CLIENT_ID_CONFIG, clientId)));
    reporters.add(jmxReporter);
    MetricsContext metricsContext = new KafkaMetricsContext(JMX_PREFIX, config.originalsWithPrefix(CommonClientConfigs.METRICS_CONTEXT_PREFIX));
    return new Metrics(metricConfig, reporters, time, metricsContext);
}
Also used : MetricConfig(org.apache.kafka.common.metrics.MetricConfig) KafkaConsumerMetrics(org.apache.kafka.clients.consumer.internals.KafkaConsumerMetrics) Metrics(org.apache.kafka.common.metrics.Metrics) MetricsReporter(org.apache.kafka.common.metrics.MetricsReporter) KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) MetricsContext(org.apache.kafka.common.metrics.MetricsContext) KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) JmxReporter(org.apache.kafka.common.metrics.JmxReporter)

Example 2 with KafkaMetricsContext

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

the class MirrorConnectorConfig method metricsReporters.

List<MetricsReporter> metricsReporters() {
    List<MetricsReporter> reporters = getConfiguredInstances(CommonClientConfigs.METRIC_REPORTER_CLASSES_CONFIG, MetricsReporter.class);
    JmxReporter jmxReporter = new JmxReporter();
    jmxReporter.configure(this.originals());
    reporters.add(jmxReporter);
    MetricsContext metricsContext = new KafkaMetricsContext("kafka.connect.mirror");
    for (MetricsReporter reporter : reporters) {
        reporter.contextChange(metricsContext);
    }
    return reporters;
}
Also used : MetricsReporter(org.apache.kafka.common.metrics.MetricsReporter) KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) MetricsContext(org.apache.kafka.common.metrics.MetricsContext) KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) JmxReporter(org.apache.kafka.common.metrics.JmxReporter)

Example 3 with KafkaMetricsContext

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

the class MeteredWindowStoreTest method testMetrics.

@Test
public void testMetrics() {
    replay(innerStoreMock);
    store.init((StateStoreContext) context, store);
    final JmxReporter reporter = new JmxReporter();
    final MetricsContext metricsContext = new KafkaMetricsContext("kafka.streams");
    reporter.contextChange(metricsContext);
    metrics.addReporter(reporter);
    assertTrue(reporter.containsMbean(String.format("kafka.streams:type=%s,%s=%s,task-id=%s,%s-state-id=%s", STORE_LEVEL_GROUP, THREAD_ID_TAG_KEY, threadId, context.taskId().toString(), STORE_TYPE, STORE_NAME)));
}
Also used : KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) MetricsContext(org.apache.kafka.common.metrics.MetricsContext) KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) JmxReporter(org.apache.kafka.common.metrics.JmxReporter) Test(org.junit.Test)

Example 4 with KafkaMetricsContext

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

the class MeteredSessionStoreTest method testMetrics.

@Test
public void testMetrics() {
    init();
    final JmxReporter reporter = new JmxReporter();
    final MetricsContext metricsContext = new KafkaMetricsContext("kafka.streams");
    reporter.contextChange(metricsContext);
    metrics.addReporter(reporter);
    assertTrue(reporter.containsMbean(String.format("kafka.streams:type=%s,%s=%s,task-id=%s,%s-state-id=%s", STORE_LEVEL_GROUP, THREAD_ID_TAG_KEY, threadId, taskId.toString(), STORE_TYPE, STORE_NAME)));
}
Also used : KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) MetricsContext(org.apache.kafka.common.metrics.MetricsContext) KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) JmxReporter(org.apache.kafka.common.metrics.JmxReporter) Test(org.junit.Test)

Example 5 with KafkaMetricsContext

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

the class StreamTaskTest method testMetrics.

@Test
public void testMetrics() {
    task = createStatelessTask(createConfig("100"));
    assertNotNull(getMetric("enforced-processing", "%s-rate", task.id().toString()));
    assertNotNull(getMetric("enforced-processing", "%s-total", task.id().toString()));
    assertNotNull(getMetric("record-lateness", "%s-avg", task.id().toString()));
    assertNotNull(getMetric("record-lateness", "%s-max", task.id().toString()));
    assertNotNull(getMetric("active-process", "%s-ratio", task.id().toString()));
    assertNotNull(getMetric("active-buffer", "%s-count", task.id().toString()));
    testMetricsForBuiltInMetricsVersionLatest();
    final JmxReporter reporter = new JmxReporter();
    final MetricsContext metricsContext = new KafkaMetricsContext("kafka.streams");
    reporter.contextChange(metricsContext);
    metrics.addReporter(reporter);
    final String threadIdTag = THREAD_ID_TAG;
    assertTrue(reporter.containsMbean(String.format("kafka.streams:type=stream-task-metrics,%s=%s,task-id=%s", threadIdTag, threadId, task.id())));
}
Also used : KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) MetricsContext(org.apache.kafka.common.metrics.MetricsContext) KafkaMetricsContext(org.apache.kafka.common.metrics.KafkaMetricsContext) JmxReporter(org.apache.kafka.common.metrics.JmxReporter) Test(org.junit.Test)

Aggregations

JmxReporter (org.apache.kafka.common.metrics.JmxReporter)10 KafkaMetricsContext (org.apache.kafka.common.metrics.KafkaMetricsContext)10 MetricsContext (org.apache.kafka.common.metrics.MetricsContext)10 Test (org.junit.Test)6 MetricsReporter (org.apache.kafka.common.metrics.MetricsReporter)4 MetricConfig (org.apache.kafka.common.metrics.MetricConfig)3 Metrics (org.apache.kafka.common.metrics.Metrics)3 InetSocketAddress (java.net.InetSocketAddress)1 ApiVersions (org.apache.kafka.clients.ApiVersions)1 DefaultHostResolver (org.apache.kafka.clients.DefaultHostResolver)1 NetworkClient (org.apache.kafka.clients.NetworkClient)1 AdminMetadataManager (org.apache.kafka.clients.admin.internals.AdminMetadataManager)1 KafkaConsumerMetrics (org.apache.kafka.clients.consumer.internals.KafkaConsumerMetrics)1 KafkaException (org.apache.kafka.common.KafkaException)1 ChannelBuilder (org.apache.kafka.common.network.ChannelBuilder)1 Selector (org.apache.kafka.common.network.Selector)1 LogContext (org.apache.kafka.common.utils.LogContext)1 Time (org.apache.kafka.common.utils.Time)1 ClientMetrics (org.apache.kafka.streams.internals.metrics.ClientMetrics)1