Class TelemetryReporter
java.lang.Object
io.confluent.telemetry.reporter.TelemetryReporter
- All Implemented Interfaces:
io.confluent.telemetry.api.events.EventEmitterProvider, AutoCloseable, org.apache.kafka.common.ClusterResourceListener, org.apache.kafka.common.Configurable, org.apache.kafka.common.metrics.MetricsReporter, org.apache.kafka.common.Reconfigurable, org.apache.kafka.server.telemetry.ClientTelemetryExporterProvider
- Direct Known Subclasses:
KafkaServerMetricsReporter
public class TelemetryReporter
extends Object
implements org.apache.kafka.common.metrics.MetricsReporter, org.apache.kafka.common.ClusterResourceListener, io.confluent.telemetry.api.events.EventEmitterProvider, org.apache.kafka.server.telemetry.ClientTelemetryExporterProvider
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final StringFields inherited from interface io.confluent.telemetry.api.events.EventEmitterProvider
DEFAULT -
Constructor Summary
ConstructorsConstructorDescriptionTelemetryReporter(io.confluent.telemetry.events.EventLoggerFactory eventLoggerFactory) -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.kafka.server.telemetry.ClientTelemetryExportervoidclose()Called when the metrics repository is closed.voidNote: we are assuming that these methods are invoked in the following order: 1.voidcontextChange(org.apache.kafka.common.metrics.MetricsContext metricsContext) emitter()io.confluent.telemetry.api.events.EventEmitterorg.apache.kafka.common.metrics.MetricsgetUsmMetricsIncludeList(boolean clientMetricsEnabled) voidvoidmetricChange(org.apache.kafka.common.metrics.KafkaMetric metric) This is called whenever a metric is added/registeredvoidmetricRemoval(org.apache.kafka.common.metrics.KafkaMetric metric) This is called whenever a metric is removedvoidonRemoteConfigurationReceived(io.confluent.telemetry.config.v2.remote.RemoteConfiguration remoteConfig) voidonUpdate(org.apache.kafka.common.ClusterResource clusterResource) voidreconfigure(Map<String, ?> newRawConfig) voidvalidateReconfiguration(Map<String, ?> configs)
-
Field Details
-
SELF_METRICS_DOMAIN
- See Also:
-
SELF_METRICS_NAMESPACE
- See Also:
-
TELEMETRY_REPORTER_ID_TAG
- See Also:
-
CONFLUENT_METRICS_VERSION_TAG
- See Also:
-
CONFLUENT_METRICS_COMMIT_ID_TAG
- See Also:
-
-
Constructor Details
-
TelemetryReporter
public TelemetryReporter() -
TelemetryReporter
public TelemetryReporter(io.confluent.telemetry.events.EventLoggerFactory eventLoggerFactory)
-
-
Method Details
-
configure
Note: we are assuming that these methods are invoked in the following order: 1. configure() [must be called first invalid input: '&' only once] 2. contextChange() [must be called second] 3. contextChange() / reconfigurableConfigs() / reconfigure() [each may be called multiple times]- Specified by:
configurein interfaceorg.apache.kafka.common.Configurable
-
validateReconfiguration
public void validateReconfiguration(Map<String, ?> configs) throws org.apache.kafka.common.config.ConfigException- Specified by:
validateReconfigurationin interfaceorg.apache.kafka.common.metrics.MetricsReporter- Specified by:
validateReconfigurationin interfaceorg.apache.kafka.common.Reconfigurable- Throws:
org.apache.kafka.common.config.ConfigException
-
reconfigure
-
reconfigurableConfigs
-
contextChange
public void contextChange(org.apache.kafka.common.metrics.MetricsContext metricsContext) - Specified by:
contextChangein interfaceorg.apache.kafka.common.metrics.MetricsReporter
-
getCollectors
-
getSelfMetrics
public org.apache.kafka.common.metrics.Metrics getSelfMetrics() -
close
public void close()Called when the metrics repository is closed.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceorg.apache.kafka.common.metrics.MetricsReporter
-
onUpdate
public void onUpdate(org.apache.kafka.common.ClusterResource clusterResource) - Specified by:
onUpdatein interfaceorg.apache.kafka.common.ClusterResourceListener
-
init
- Specified by:
initin interfaceorg.apache.kafka.common.metrics.MetricsReporter
-
onRemoteConfigurationReceived
public void onRemoteConfigurationReceived(io.confluent.telemetry.config.v2.remote.RemoteConfiguration remoteConfig) -
metricChange
public void metricChange(org.apache.kafka.common.metrics.KafkaMetric metric) This is called whenever a metric is added/registered- Specified by:
metricChangein interfaceorg.apache.kafka.common.metrics.MetricsReporter
-
metricRemoval
public void metricRemoval(org.apache.kafka.common.metrics.KafkaMetric metric) This is called whenever a metric is removed- Specified by:
metricRemovalin interfaceorg.apache.kafka.common.metrics.MetricsReporter
-
getUsmMetricsIncludeList
-
emitter
-
eventEmitter
public io.confluent.telemetry.api.events.EventEmitter eventEmitter()- Specified by:
eventEmitterin interfaceio.confluent.telemetry.api.events.EventEmitterProvider
-
clientTelemetryExporter
public org.apache.kafka.server.telemetry.ClientTelemetryExporter clientTelemetryExporter()- Specified by:
clientTelemetryExporterin interfaceorg.apache.kafka.server.telemetry.ClientTelemetryExporterProvider
-