private void checkColumnExist(String modifyTimeColumn) {
    if (!this.latencyEnable) {
      return;
    }
    if (modifyTimeColumn == null || this.schema.findField(modifyTimeColumn) == null) {
      LOG.warn("can't find event time column {}", modifyTimeColumn);
      findColumn = false;
    } else {
      findColumn = true;
      int modifyTimeColumnIndex = flinkSchema.getFieldIndex(modifyTimeColumn);
      LogicalType type = flinkSchema.getTypeAt(modifyTimeColumnIndex);
      LOG.info(
          "event latency with column {}, index {}, type {}",
          modifyTimeColumn,
          modifyTimeColumnIndex,
          type);
      modifyTimeGetter = RowData.createFieldGetter(type, modifyTimeColumnIndex);
    }
  }
A generator that generates the latency metrics of the writing operators in flink applications.
amoro-format-mixed/amoro-mixed-flink/amoro-mixed-flink-common/src/main/java/org/apache/amoro/flink/metric/MetricsGenerator.java