データアーカイブライブラリメトリクス

データアーカイブライブラリには、アーカイブプロセスを監視するための次の一連のメトリックがあります。

メートル法 説明
messageCounter オペレータが読み取るメッセージ数 ( ソースが使用するメッセージ数と同じであることが必要 )
getDataSuccessCounter blob-store から正常にダウンロードされたメッセージの数
getDataFailCounter blob-store からのダウンロードに失敗したメッセージの数
sizeCounter メッセージのサイズ ( バイト配列サイズ )
getKeysNullCounter getKeys/getMultipleKeys/getSplittedKeys API が null を返す回数
getKeysFailCounter getKeys/getMultipleKeys/getSplittedKeys API の結果がエラーになった回数 (この メトリックにはヌルのケースが含まれています )
timeWindowMissingCounter timewindow タイプインデックス属性の値が null であった回数
timeWindowInvalidCounter timewindow タイプインデックス属性の値が無効であった回数 ( 長い値を想定 )
ここで、 TileInvalidZoomLevelCounter について説明します heretile タイプインデックス属性の値が誤ったズーム レベルに関連付けられている回数
ここでは、 TileNonParsablelCounter について説明します heretile タイプインデックス属性の値が無効であった回数 ( 長い値を想定 )
invalidColumnValueCounter 任意のインデックス属性の値がサポートされていないデータ型を持っていた回数 ( 文字列、 int 、 long 、ブール型がサポートされているデータ型 )
ParserIgnoreCounter 検証エラーのためにライブラリによって無視されたメッセージの数
parserDeadLetterCounter 検証エラーにより、デッドレターストレージにアーカイブするようにライブラリによってマークされたメッセージの数
KeyPartitionCounter 時間帯内の一意のインデックス属性グループの数
AggregateSuccessMessageCounter aggregate API によって正常に処理されたメッセージの数
AggregateSuccessSizeCounter aggregate API によって正常に処理されたメッセージのサイズ
AggregateNullMessageCounter aggregate API が null を返すメッセージの数
AggregateNullSizeCounter aggregate API が null を返すメッセージのサイズ
AggregateFailMessageCounter aggregate API でエラーが発生したメッセージの数(この メトリックにはヌルのケースが含まれています)
AggregateFailSizeCounter aggregate API でエラーが発生したメッセージのサイズ(この メトリックにはヌルのケースが含まれています)
aggregateIgnoreCounter aggregate API の結果が無視された回数
AggregateDeadLetterCounter aggregate API に渡されたメッセージがデッドレターストレージ用に集約された回数
windowDeadLetterMessageCounter デッドレターストレージにアーカイブするために設定されたメッセージの数
windowDeadLetterSizeCounter デッドレターストレージにアーカイブするために設定されたメッセージのサイズ
transformDeadletterSuccessCounter transformForDeadLetter デッドレターストレージ用に API を使用して正常に変換されたメッセージの数
transformDeadletterFailCounter transformForDeadLetter デッドレターストレージに API を使用して変換できなかったメッセージの数
blobSuccessRequestCounter ブロブストアに正常にアップロードされたファイルの数
blobSizeCounter ブロブストアに正常にアップロードされたファイルのサイズ
blobTimeCounter ライブラリがファイルをブロブストアにアップロードするのにかかる時間
indexInvokeCounter sink 演算子が受信したインデックスレコードの数 (blobSuccessRequestCounter と同じにする必要があります )
indexUploadCounter インデックスストアに正常に公開されたインデックスレコードの数
indexValidCounter sink 通常のアーカイブストレージについてオペレータが受信したインデックスレコードの数
indexDeadLetterCounter sink 特殊なデッドレターストレージのためにオペレータが受信したインデックスレコードの数
indexSuccessRequestCounter インデックスストアへの成功したリクエストの数 (1 つのリクエストには N 個のインデックスレコードを含めることができます )
indexTimeCounter インデックスレコードをインデックスストアに公開するためにライブラリが要した時間
indexBatchLimitCounter sink 1 つのリクエストで公開されるインデックスレコード数のバッチ制限にオペレータが達した回数
indexTimeoutCounter タイムアウトによってインデックスレコードの公開リクエストがトリガーされた回数

ユーザー定義のメトリックを追加します

データアーカイブライブラリは、アーカイブプロセスの包括的なメトリクスのセットを提供しますが、ユーザーは標準の Flink API を使用して独自のメトリクスを定義することができます。 新しいカスタムメトリックを定義するには、次の手順を実行

  • カスタムメトリクスを UDF 実装のインスタンス変数として追加します
    public class MyExampleImplementation implements UDF {
    private Counter customMetric;
    ...
    }
    
  • open(Configuration parameters, RuntimeContext runtimeContext) API を上書きし、前のステップで追加したカスタムメトリックを提供されたRuntimeContextMetricGroupに登録します。 例 :
    ...
    @Override
    public void open(Configuration parameters, RuntimeContext runtimeContext) {
      customMetric = runtimeContext.getMetricGroup().counter("myCustomMetric");
    }
    
  • UDF 実装のメトリックを記録します。
    customMetric.inc();
    
  • provided 次の依存関係をスコープに追加する必要があります。 この例は、 maven ビルドツール用です。
    <dependency>
     <groupId>org.apache.flink</groupId>
     <artifactId>flink-core</artifactId>
     <scope>provided</scope>
    </dependency>
    <dependency>
     <groupId>org.apache.flink</groupId>
     <artifactId>flink-metrics-core</artifactId>
     <scope>provided</scope>
    </dependency>
    

com/here/platform/data/archive/example/AvroSimpleKeyExample.java 実装例については、 Data Archive Avro の例のを参照してください。

メトリクスの監視

Flink ランタイムコンテキストに登録されているメトリクスは、 Grafana で接頭辞 flink_taskmanager_job_task_operator_として使用できます。 例 :

flink_taskmanager_job_task_operator_messageCounter
flink_taskmanager_job_task_operator_myCustomMetric

メトリクスの範囲と名前の詳細については、 Flink のドキュメントを参照してください。

」に一致する結果は 件です

    」に一致する結果はありません