private boolean setTags(Matcher matcher, TableMessage message) {
    List<String> tagKeys = new ArrayList<>();
    List<Object> tagValues = new ArrayList<>();
    String tagsGroup = matcher.group(TAGS);
    if (tagsGroup != null && !tagsGroup.isEmpty()) {
      String[] tagPairs = tagsGroup.split(COMMA);
      for (String tagPair : tagPairs) {
        if (!tagPair.isEmpty()) {
          String[] keyValue = tagPair.split(EQUAL);
          if (keyValue.length == 2 && !NULL.equals(keyValue[1])) {
            tagKeys.add(keyValue[0]);
            tagValues.add(new Binary[] {new Binary(keyValue[1].getBytes(StandardCharsets.UTF_8))});
          }
        }
      }
    }
    if (!tagKeys.isEmpty() && !tagValues.isEmpty() && tagKeys.size() == tagValues.size()) {
      message.setTagKeys(tagKeys);
      message.setTagValues(tagValues);
      return true;
    } else {
      return false;
    }
  }
The Line payload formatter. myTable,tag1=value1,tag2=value2 attr1=value1,attr2=value2
fieldKey="fieldValue" 1740109006000 \n myTable,tag1=value1,tag2=value2 fieldKey="fieldValue"
1740109006000
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/mqtt/LinePayloadFormatter.java