拡張ファンアウト (KCL 2.x) アプリケーションで使用した場合のこれら 2 つのメトリックの違いを誰かが明確にできるかどうか疑問に思っていました。
KCL の「MillisBehindLatest」は、GetRecords 呼び出しで使用される反復子の経過時間を測定すると思います。ただし、KCL 2.x を使用する場合、レコードは代わりに HTTP/2 経由でコンシューマーにプッシュされるため、代わりに SubscribeToShardEvent.MillisBehindLatest を使用する必要があります。
実際には、KCL 2.x アプリケーションはこれらのメトリクスの両方を cloudwatch に送信します。イテレータによるポーリングが行われていない場合に MillisBehindLatest が発行される理由は不明です。