Apache NiFiを使用して設定ファイルに記載されたURLのファイルを取得するためには、以下の手順を実行する必要があります。
これにより、NiFiは指定されたURLからファイルを取得し、指定された出力ディレクトリに保存します。設定ファイルからURLを取得する方法については、NiFiのバージョンや使用しているプラグインに依存します。一般的な方法としては、NiFiのプロセッサ間で値を渡すための属性やフローファイルのパラメータを使用することができます。
設定ファイルから取得した値をRemote URLに指定するには、NiFiのプロパティを使用して値を渡す方法があります。以下に例を示します。
#!/bin/bash # NiFiのホストとポートを指定します NIFI_HOST="localhost" NIFI_PORT="8080" # 設定するプロパティ名と値を指定します PROPERTY_NAME="url" PROPERTY_VALUE="http://example.com/files/sample.txt" # NiFiのREST APIエンドポイントURLを構築します API_URL="http://${NIFI_HOST}:${NIFI_PORT}/nifi-api/controller- services/{service-id}/properties" # サービスIDを取得するために、NiFiのプロパティエンドポイントを呼び出します SERVICE_NAME="InvokeHTTP" # 対象のプロセッサ名を指定します SERVICE_ID=$(curl -sX GET "${API_URL}" | jq --arg SERVICE_NAME "$SERVICE_NAME" '.controllerServices[] | select(.component.name == $SERVICE_NAME) | .id') # プロパティ値を設定するために、NiFiのプロパティエンドポイントを呼び出します curl -sX PUT "${API_URL}" \ -H "Content-Type: application/json" \ -d '{"properties":{"'"$PROPERTY_NAME"'":"'"$PROPERTY_VALUE"'"}}' \ | jq