ディレクトリ内のマルチファイルの出力を監視し、データを処理してHDFSに入れるストリームがあります。これが私のストリーム作成コマンドです:
stream create --name fileHdfs --definition "file --dir=/var/log/supervisor/ --pattern=tracker.out-*.log --outputType=text/plain | logHdfsTransformer | hdfs --fsUri=hdfs://192.168.1.115:8020 --directory=/data/log/appsync --fileName=log --partitionPath=path(dateFormat('yyyy/MM/dd'))" --deploy
問題はソースです。ファイルモジュールは、ファイルから読み取ったすべてのデータを、毎ターン1行ではなくログ処理モジュールに送信します。そのため、ペイロード文字列には数百万の文字があり、処理できません。元:
--- PAYLOAD LENGTH---- 9511284
source:file モジュールを使用する場合に行単位で読む方法を教えてください、ありがとう!!!