我已經構建了一個Kinesis Firehose流來將數據推送到紅移,並試圖使用kinesis代理從EC2實例推送數據。Kinesis代理不發送記錄到流
Firehose Stream能夠解析記錄,但不能識別流水線正在收到以下java錯誤。
com.amazon.kinesis.streaming.agent.tailing.AsyncPublisher
[ERROR] AsyncPublisher[kinesis:csvtoredshiftstream:/tmp/redshift.log*]:RecordBuffer
(id=2,records=2,bytes=45) Retriable send error (com.amazonaws.services.kinesis.model.ResourceNotFoundException:
Stream csvtoredshiftstream under account xyz not found.
(Service: AmazonKinesis; Status Code: 400;
Error Code: ResourceNotFoundException;
Request ID: f4a63623-9a15-b2f8-a597-13b478c81bbc)). Will retry.
Request your pointers to identify and resolve the issue.
問候, Srivignesh KN
是在流水流或在紅移你的錯誤?看起來你在發佈事件之前沒有創建流'csvtoredshiftstream'。我沒有使用流水,我猜kinesis-agent將事件收集到流水流中,但問題是流不存在。如果是這樣,先嚐試創建流,然後發佈一個'CreateStreamRequest createStreamRequest = new CreateStreamRequest()。withStreamName(「csvtoredshiftstream」)'。 – prayagupd
謝謝@peter,我可以通過以下面的方式在agent.json中指定流水事件來克服錯誤。 { 「cloudwatch.emitMetrics」:真, 「kinesis.endpoint」: 「」, 「firehose.endpoint」: 「firehose.us-west-2.amazonaws.com」, 「流」:[{ 「filePattern」: 「/tmp/s3streaming.*」, 「deliveryStream」: 「S3TestingStream」, 「partitionKeyOption」: 「RANDOM」 },{ 「filePattern」: 「/tmp/app.log*」 , 「deliveryStream」:「yourdeliverystream」 } ] } –