You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Steven Schlansker (JIRA)" <ji...@apache.org> on 2017/02/01 19:00:53 UTC

[jira] [Created] (KAFKA-4720) Add KStream.peek(ForeachAction)

Steven Schlansker created KAFKA-4720:
----------------------------------------

             Summary: Add KStream.peek(ForeachAction<K,V>)
                 Key: KAFKA-4720
                 URL: https://issues.apache.org/jira/browse/KAFKA-4720
             Project: Kafka
          Issue Type: New Feature
          Components: streams
    Affects Versions: 0.10.1.1
            Reporter: Steven Schlansker


Java's Stream provides a handy peek method that observes elements in the stream without transforming or filtering them.  While you can emulate this functionality with either a filter or map, peek provides potentially useful semantic information (doesn't modify the stream) and is much more concise.

Example usage: using Dropwizard Metrics to provide event counters

{code}
KStream<Integer, String> s = ...;
s.map(this::mungeData)
 .peek((i, s) -> metrics.noteMungedEvent(i, s))
 .filter(this::hadProcessingError)
 .print();
{code}




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)