private String validPartitionKey(StringBuilder sBuilder,
            String partitionKey) throws TubeClientException {
        if (partitionKey == null) {
            throw new TubeClientException(sBuilder
                    .append("Parameter error: partitionKey is null!").toString());
        }
        String[] keyItems = partitionKey.split(TokenConstants.ATTR_SEP);
        if (keyItems.length != 3) {
            throw new TubeClientException(sBuilder
                    .append("Parameter error: partitionKey ")
                    .append(partitionKey)
                    .append(" format error: value must be aaaa:bbbb:cccc !").toString());
        }
        if (!consumeSubInfo.isSubscribedTopicContain(keyItems[1].trim())) {
            throw new TubeClientException(sBuilder
                    .append("Parameter error: not included in subcribed topic list: ")
                    .append("partitionKey is ")
                    .append(partitionKey).append(", subscribed topics are ")
                    .append(consumeSubInfo.getSubscribedTopics().toString()).toString());
        }
        if (partitionKey.contains(TokenConstants.ARRAY_SEP)) {
            throw new TubeClientException(sBuilder
                    .append("Parameter error: illegal format error of ")
                    .append(partitionKey).append(" : value must not include ',' char!").toString());
        }
        String tmpKey = sBuilder.append(keyItems[0].trim())
                .append(TokenConstants.ATTR_SEP).append(keyItems[1].trim())
                .append(TokenConstants.ATTR_SEP).append(keyItems[2].trim()).toString();
        sBuilder.delete(0, sBuilder.length());
        return tmpKey;
    }
Get partition information of the consumer.

@return consumer partition information
inlong-tubemq/tubemq-client/src/main/java/org/apache/inlong/tubemq/client/consumer/BaseMessageConsumer.java