无法使用量规,构建失败:

 def open(configuration: Configuration) {
  getRuntimeContext()
    .getMetricGroup()
    .gauge("RecordConverter.latency", new Gauge[Int]() {
      @Override
      def getValue(): Int = {
        return latency;
      }
    });
   }


================================================== ==========

error: overloaded method value gauge with alternatives:
[ERROR]   [T, G <: org.apache.flink.metrics.Gauge[T]](x$1: String,x$2: G)G <and>
[ERROR]   [T, G <: org.apache.flink.metrics.Gauge[T]](x$1: Int, x$2: G)G
[ERROR]  cannot be applied to (String, org.apache.flink.metrics.Gauge[Int])
[ERROR]         .gauge("RecordConverter.latency", new Gauge[Int]() {
[ERROR]          ^

最佳答案

您必须显式设置类型,如下所示:

 .gauge[Int, Gauge[Int]]("RecordConverter.latency"...

10-06 03:49