private Set<File> getLogDirSet(final BrokerConfig tubeConfig) throws IOException {
        TopicMetadata topicMetadata = null;
        final Set<String> paths = new HashSet<>();
        paths.add(tubeConfig.getPrimaryPath());
        for (final String topic : metadataManager.getTopics()) {
            topicMetadata = metadataManager.getTopicMetadata(topic);
            if (topicMetadata != null
                    && TStringUtils.isNotBlank(topicMetadata.getDataPath())) {
                paths.add(topicMetadata.getDataPath());
            }
        }
        final Set<File> fileSet = new HashSet<>();
        for (final String path : paths) {
            final File dir = new File(path);
            if (!dir.exists() && !dir.mkdirs()) {
                throw new IOException(new StringBuilder(512)
                        .append("Could not make Log directory ")
                        .append(dir.getAbsolutePath()).toString());
            }
            if (!dir.isDirectory() || !dir.canRead()) {
                throw new IOException(new StringBuilder(512).append("Log path ")
                        .append(dir.getAbsolutePath())
                        .append(" is not a readable directory").toString());
            }
            fileSet.add(dir);
        }
        return fileSet;
    }
Query all topic's publish info.

@return the current topic's offset info
inlong-tubemq/tubemq-server/src/main/java/org/apache/inlong/tubemq/server/broker/msgstore/MessageStoreManager.java