Bruno Cadonna created KAFKA-9152: ------------------------------------ Summary: Improve Sensor Retrieval Key: KAFKA-9152 URL: https://issues.apache.org/jira/browse/KAFKA-9152 Project: Kafka Issue Type: Improvement Components: streams Reporter: Bruno Cadonna
This ticket shall improve two aspects of the retrieval of sensors: 1. Currently, when a sensor is retrieved with {{*Metrics.*Sensor()}} (e.g. {{ThreadMetrics.createTaskSensor()}}) after it was created with the same method {{*Metrics.*Sensor()}}, the sensor is added again to the corresponding queue in {{*Sensors}} (e.g. {{threadLevelSensors}}) in {{StreamsMetricsImpl}}. Those queues are used to remove the sensors when {{removeAll*LevelSensors()}} is called. Having multiple times the same sensors in this queue is not an issue from a correctness point of view. However, it would reduce the footprint to only store a sensor once in those queues. 2. When a sensor is retrieved, the current code attempts to create a new sensor and to add to it again the corresponding metrics. This could be avoided. Both aspects could be improved by checking whether a sensor already exists by calling {{getSensor()}} on the {{Metrics}} object and checking the return value. -- This message was sent by Atlassian Jira (v8.3.4#803005)