Print the contents of Kafka topics to the ksqlDB CLI.
The topicName is case sensitive. Quote the name if it contains invalid characters. See Valid Identifiers for more information.
The PRINT statement supports the following properties:
|FROM BEGINNING||Print starting with the first message in the topic. If not specified, PRINT starts with the most recent message.|
|INTERVAL interval||Print every
|LIMIT limit||Stop printing after
The following statement shows how to print all of the records in a topic named
rider-locations, created by
CREATE STREAM riderLocations (profileId VARCHAR, latitude DOUBLE, longitude DOUBLE)
WITH (kafka_topic='rider-locations', value_format='json', partitions=1);.
Note, the topic name has been quoted as it contains the invalid dash character.
ksqlDB attempts to determine the format of the data in the topic and outputs what it thinks are the key and value formats at the top of the output.
Attempting to determine a data format from only the serialized bytes is not an exact science!
For example, it is not possible to distinguish between serialized
because they both occupy eight bytes. Short strings can also be mistaken for serialized numbers.
Where it appears different records are using different formats ksqlDB will state the format is
The output should resemble:
1 2 3 4 5
The key format for this topic is
KAFKA_STRING. However, the
KAFKA_STRING, but it could also be
The value format for this topic is
JSON. However, the
KAFKA_STRING. This is because
JSON is serialized as text. Hence you could choose to deserialize
this value data as a
KAFKA_STRING if you wanted to. However,
JSON is likely the better option.