reactor-core/src/main/java/reactor/core/publisher/Mono.java
public final Mono<Tuple2<Long, T>> elapsed(Scheduler scheduler) {
		Objects.requireNonNull(scheduler, "scheduler");
		return onAssembly(new MonoElapsed<>(this, scheduler));
	}
public final Mono<Tuple2<Long, T>> elapsed(Scheduler scheduler) {
		Objects.requireNonNull(scheduler, "scheduler");
		return onAssembly(new MonoElapsed<>(this, scheduler));
	}
public final Mono < Tuple2 < Long , T > > elapsed ( Scheduler scheduler ) { Objects . requireNonNull ( scheduler , "scheduler" ) ; return onAssembly ( new MonoElapsed <> ( this , scheduler ) ) ; }
Map this {@link Mono} sequence into {@link reactor.util.function.Tuple2 Tuple2&lt;Long, T&gt;}
of timemillis and source data. The timemillis corresponds to the elapsed time between the subscribe and the first
next signal, as measured by the provided {@link Scheduler}.

<p>
<img class="marble" src="doc-files/marbles/elapsedForMono.svg" alt="">

@param scheduler a {@link Scheduler} instance to read time from
@return a new {@link Mono} that emits a tuple of time elapsed in milliseconds and matching data
Map this { @link Mono } sequence into { @link reactor . util . function . Tuple2 Tuple2&lt ; Long T&gt ; } of timemillis and source data . The timemillis corresponds to the elapsed time between the subscribe and the first next signal as measured by the provided { @link Scheduler } .