Hi Eno,

I tried accessing the Kafka consumer and producer beans using:

info -d kafka.consumer -b
kafka.consumer:client-id=app-c7117b6f-3af1-473a-a87a-1d981574c071-StreamThread-1-consumer,type=kafka-metrics-count

info -d kafka.producer -b
kafka.producer:client-id=app-c7117b6f-3af1-473a-a87a-1d981574c071-StreamThread-1-producer,node-id=node-1,type=producer-node-metrics

And I encounter the same exception like before:
"#IllegalArgumentException: Bean name [...] isn't valid".

Thanks,
Jendrik

On 30/01/17 12:25, Eno Thereska wrote:
> Hi Jendrik,
>
> I haven't tried jmxterm. Can you confirm if it is able to access the Kafka 
> producer/consumer metrics (they exist since Kafka Streams internally uses 
> Kafka)?
>
> I've personally used jconsole to look at the collected streams metrics, but 
> that might be limited for your needs.
>
> Thanks
> Eno
>
>> On 30 Jan 2017, at 10:41, Jendrik Poloczek 
>> <jendrik.poloc...@madewithtea.com> wrote:
>>
>> Hi,
>>
>> I want to read the Kafka Streams JMX metrics using jmxterm, similiar to
>> this Kafka documentation:
>> https://cwiki.apache.org/confluence/display/KAFKA/jmxterm+quickstart.
>>
>> I am using the same version: jmxterm-1.0-alpha-4-uber.jar. I managed to
>> retrieve metrics from the Kafka Streams application via JMX with tags
>> like: kafka.streams:type=kafka-metrics-count. However, when I try to
>> retrieve a bean with tags like:
>> kafka.streams:client-id=app-c7117b6f-3af1-473a-a87a-1d981574c071-StreamThread-1,type=stream-metrics,
>> the application responds with:
>>
>> "#IllegalArgumentException: Bean name
>> kafka.streams:client-id=app-c7117b6f-3af1-473a-a87a-1d981574c071-StreamThread-1,type=stream-metrics
>> isn't valid"
>>
>> Checking on the JMX best practices in the Oracle documentation I found
>> the following: "The set of characters in a key is limited. It is
>> recommended to stick to legal Java identifiers. The set of characters in
>> a value is also limited. If special characters may occur, it is
>> recommended that the value be quoted, using ObjectName.quote.
>> (http://www.oracle.com/technetwork/java/javase/tech/best-practices-jsp-136021.html)
>>
>> Which led me to the conclusion that the naming of the key/tag identifier
>> (client-id) is not satisfying the naming constraint. Other beans with a
>> "node-id" tag cause the same IllegalArgumentException. The client-id tag
>> is also part of the widely-used Kafka producer and consumer, so I am
>> wondering if I am missing something here.
>>
>> Thank you for support on this issue!
>> Jendrik
>>

Reply via email to