概要
このチェックは Flink を監視します。Datadog は Flink の Datadog HTTP Reporter を使用し、Datadog の HTTP API によって Flink のメトリクスを収集します。
セットアップ
インストール
Flink チェックは Datadog Agent パッケージに含まれています。
サーバーに追加でインストールする必要はありません。
構成
メトリクスの収集
Flink で Datadog HTTP Reporter を構成します。
<FLINK_HOME>/conf/flink-conf.yaml
に以下の行を追加し、<DATADOG_API_KEY>
を Datadog API キーと置き換えます。
metrics.reporter.dghttp.factory.class: org.apache.flink.metrics.datadog.DatadogHttpReporterFactory
metrics.reporter.dghttp.apikey: <DATADOG_API_KEY>
metrics.reporter.dghttp.dataCenter: US #(optional) The data center (EU/US) to connect to, defaults to US.
<FLINK_HOME>/conf/flink-conf.yaml
で、システムのスコープを再マッピングします。
metrics.scope.jm: flink.jobmanager
metrics.scope.jm.job: flink.jobmanager.job
metrics.scope.tm: flink.taskmanager
metrics.scope.tm.job: flink.taskmanager.job
metrics.scope.task: flink.task
metrics.scope.operator: flink.operator
注: Flink のメトリクスをサポートするには、システムスコープをマッピングし直す必要があります。しない場合は、カスタムメトリクスとして送信されます。
<FLINK_HOME>/conf/flink-conf.yaml
に、たとえば以下のカスタムタグのようなタグを追加します。
metrics.reporter.dghttp.scope.variables.additional: <KEY1>:<VALUE1>, <KEY1>:<VALUE2>
注: デフォルトでは、メトリクスの名前はタグとして送信され、識別されるため、job_id
や task_id
などのカスタムタグを追加する必要はありません。
Flink を再起動すると、Flink のメトリクスが Datadog に送信されます。
ログ収集
Agent バージョン 6.0 以降で利用可能
Flink はデフォルトで log4j
ロガーを使用します。ファイルへのロギングを有効にするには、Flink ディストリビューションの conf/
ディレクトリにある log4j*.properties
コンフィギュレーションファイルを編集して、フォーマットをカスタマイズします。どのコンフィギュレーションファイルがあなたのセットアップに関連するかについては、Flink のロギングに関するドキュメントを参照してください。デフォルトの構成については、Flink のリポジトリを参照してください。
インテグレーションパイプラインは、デフォルトで、次のレイアウトパターンをサポートします。
%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %-60c %x - %m%n
タイムスタンプの部分には、たとえば 2020-02-03 18:43:12,251
などが入ります。
フォーマットが異なる場合は、インテグレーションパイプラインを複製して編集してください。
Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml
ファイルでこれを有効にします。
flink.d/conf.yaml
ファイルのコメントを解除して、ログコンフィギュレーションブロックを編集します。環境に基づいて、path
パラメーターと service
パラメーターの値を変更してください。使用可能なすべてのコンフィギュレーションオプションの詳細については、flink.d/conf.yaml のサンプルを参照してください。
logs:
- type: file
path: /var/log/flink/server.log
source: flink
service: myapp
#To handle multi line that starts with yyyy-mm-dd use the following pattern
#log_processing_rules:
# - type: multi_line
# pattern: \d{4}\-(0?[1-9]|1[012])\-(0?[1-9]|[12][0-9]|3[01])
# name: new_log_start_with_date
Agent を再起動します。
検証
Agent の status サブコマンドを実行し、Checks セクションで flink
を探します。
収集データ
メトリクス
サービスチェック
Flink には、サービスのチェック機能は含まれません。
イベント
Flink には、イベントは含まれません。
トラブルシューティング
ご不明な点は、Datadog のサポートチームまでお問合せください。