public class AmazonKinesisFirehoseClient extends AmazonWebServiceClient implements AmazonKinesisFirehose
Amazon Kinesis Firehose is a fully-managed service that delivers real-time streaming data to destinations such as Amazon Simple Storage Service (Amazon S3), Amazon Elasticsearch Service (Amazon ES), and Amazon Redshift.
Modifier and Type | Field and Description |
---|---|
protected List<com.amazonaws.transform.JsonErrorUnmarshaller> |
jsonErrorUnmarshallers
List of exception unmarshallers for all Amazon Kinesis Firehose
exceptions.
|
client, clientConfiguration, endpoint, endpointPrefix, LOGGING_AWS_REQUEST_METRIC, requestHandler2s, timeOffset
Constructor and Description |
---|
AmazonKinesisFirehoseClient()
Deprecated.
|
AmazonKinesisFirehoseClient(AWSCredentials awsCredentials)
Constructs a new client to invoke service methods on
AmazonKinesisFirehose using the specified AWS account credentials.
|
AmazonKinesisFirehoseClient(AWSCredentials awsCredentials,
ClientConfiguration clientConfiguration)
Constructs a new client to invoke service methods on
AmazonKinesisFirehose using the specified AWS account credentials and
client configuration options.
|
AmazonKinesisFirehoseClient(AWSCredentialsProvider awsCredentialsProvider)
Constructs a new client to invoke service methods on
AmazonKinesisFirehose using the specified AWS account credentials
provider.
|
AmazonKinesisFirehoseClient(AWSCredentialsProvider awsCredentialsProvider,
ClientConfiguration clientConfiguration)
Constructs a new client to invoke service methods on
AmazonKinesisFirehose using the specified AWS account credentials
provider and client configuration options.
|
AmazonKinesisFirehoseClient(AWSCredentialsProvider awsCredentialsProvider,
ClientConfiguration clientConfiguration,
HttpClient httpClient)
Constructs a new client to invoke service methods on
AmazonKinesisFirehose using the specified AWS account credentials
provider, client configuration options and request metric collector.
|
AmazonKinesisFirehoseClient(AWSCredentialsProvider awsCredentialsProvider,
ClientConfiguration clientConfiguration,
RequestMetricCollector requestMetricCollector)
Deprecated.
|
AmazonKinesisFirehoseClient(ClientConfiguration clientConfiguration)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
ResponseMetadata |
getCachedResponseMetadata(AmazonWebServiceRequest request)
Deprecated.
ResponseMetadata cache can hold up to 50 requests and
responses in memory and will cause memory issue. This method
now always returns null.
|
PutRecordBatchResult |
putRecordBatch(PutRecordBatchRequest putRecordBatchRequest)
Writes multiple data records into a delivery stream in a single call,
which can achieve higher throughput per producer than when writing single
records.
|
addRequestHandler, addRequestHandler, configSigner, configSigner, createExecutionContext, createExecutionContext, createExecutionContext, endClientExecution, endClientExecution, findRequestMetricCollector, getEndpoint, getEndpointPrefix, getRequestMetricsCollector, getServiceAbbreviation, getServiceName, getServiceNameIntern, getSigner, getSignerByURI, getSignerRegionOverride, getTimeOffset, isProfilingEnabled, isRequestMetricsEnabled, removeRequestHandler, removeRequestHandler, requestMetricCollector, setConfiguration, setEndpoint, setEndpoint, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, shutdown, withTimeOffset
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
setEndpoint, setRegion, shutdown
protected List<com.amazonaws.transform.JsonErrorUnmarshaller> jsonErrorUnmarshallers
@Deprecated public AmazonKinesisFirehoseClient()
All service calls made using this new client object are blocking, and will not return until the service call completes.
DefaultAWSCredentialsProviderChain
@Deprecated public AmazonKinesisFirehoseClient(ClientConfiguration clientConfiguration)
All service calls made using this new client object are blocking, and will not return until the service call completes.
clientConfiguration
- The client configuration options controlling
how this client connects to AmazonKinesisFirehose (ex: proxy
settings, retry counts, etc.).DefaultAWSCredentialsProviderChain
public AmazonKinesisFirehoseClient(AWSCredentials awsCredentials)
If AWS session credentials are passed in, then those credentials will be used to authenticate requests. Otherwise, if AWS long-term credentials are passed in, then session management will be handled automatically by the SDK. Callers are encouraged to use long-term credentials and let the SDK handle starting and renewing sessions.
Automatically managed sessions will be shared among all clients that use
the same credentials and service endpoint. To opt out of this behavior,
explicitly provide an instance of AWSCredentialsProvider
that
returns AWSSessionCredentials
.
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentials
- The AWS credentials (access key ID and secret key)
to use when authenticating with AWS services.public AmazonKinesisFirehoseClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration)
If AWS session credentials are passed in, then those credentials will be used to authenticate requests. Otherwise, if AWS long-term credentials are passed in, then session management will be handled automatically by the SDK. Callers are encouraged to use long-term credentials and let the SDK handle starting and renewing sessions.
Automatically managed sessions will be shared among all clients that use
the same credentials and service endpoint. To opt out of this behavior,
explicitly provide an instance of AWSCredentialsProvider
that
returns AWSSessionCredentials
.
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentials
- The AWS credentials (access key ID and secret key)
to use when authenticating with AWS services.clientConfiguration
- The client configuration options controlling
how this client connects to AmazonKinesisFirehose (ex: proxy
settings, retry counts, etc.).public AmazonKinesisFirehoseClient(AWSCredentialsProvider awsCredentialsProvider)
If AWS session credentials are passed in, then those credentials will be used to authenticate requests. Otherwise, if AWS long-term credentials are passed in, then session management will be handled automatically by the SDK. Callers are encouraged to use long-term credentials and let the SDK handle starting and renewing sessions.
Automatically managed sessions will be shared among all clients that use
the same credentials and service endpoint. To opt out of this behavior,
explicitly provide an instance of AWSCredentialsProvider
that
returns AWSSessionCredentials
.
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will
provide credentials to authenticate requests with AWS
services.public AmazonKinesisFirehoseClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration)
If AWS session credentials are passed in, then those credentials will be used to authenticate requests. Otherwise, if AWS long-term credentials are passed in, then session management will be handled automatically by the SDK. Callers are encouraged to use long-term credentials and let the SDK handle starting and renewing sessions.
Automatically managed sessions will be shared among all clients that use
the same credentials and service endpoint. To opt out of this behavior,
explicitly provide an instance of AWSCredentialsProvider
that
returns AWSSessionCredentials
.
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will
provide credentials to authenticate requests with AWS
services.clientConfiguration
- The client configuration options controlling
how this client connects to AmazonKinesisFirehose (ex: proxy
settings, retry counts, etc.).@Deprecated public AmazonKinesisFirehoseClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, RequestMetricCollector requestMetricCollector)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will
provide credentials to authenticate requests with AWS
services.clientConfiguration
- The client configuration options controlling
how this client connects to AmazonKinesisFirehose (ex: proxy
settings, retry counts, etc.).requestMetricCollector
- optional request metric collectorpublic AmazonKinesisFirehoseClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, HttpClient httpClient)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will
provide credentials to authenticate requests with AWS
services.clientConfiguration
- The client configuration options controlling
how this client connects to AmazonKinesisFirehose (ex: proxy
settings, retry counts, etc.).httpClient
- A http clientpublic PutRecordBatchResult putRecordBatch(PutRecordBatchRequest putRecordBatchRequest) throws AmazonServiceException, AmazonClientException
Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput per producer than when writing single records. To write single data records into a delivery stream, use PutRecord. Applications using these operations are referred to as producers.
Each PutRecordBatch request supports up to 500 records. Each record in the request can be as large as 1,000 KB (before 64-bit encoding), up to a limit of 4 MB for the entire request. By default, each delivery stream can take in up to 2,000 transactions per second, 5,000 records per second, or 5 MB per second. Note that if you use PutRecord and PutRecordBatch, the limits are an aggregate across these two operations for each delivery stream. For more information about limits and how to request an increase, see Amazon Kinesis Firehose Limits.
You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KB in size, and any kind of data, for example, a segment from a log file, geographic location data, web site clickstream data, and so on.
Firehose buffers records before delivering them to the destination. To
disambiguate the data blobs at the destination, a common solution is to
use delimiters in the data, such as a newline (\n
) or some
other character unique within the data. This allows the consumer
application(s) to parse individual data items when reading the data from
the destination.
The PutRecordBatch response includes a count of any failed records, FailedPutCount, and an array of responses, RequestResponses. The FailedPutCount value is a count of records that failed. Each entry in the RequestResponses array gives additional information of the processed record. Each entry in RequestResponses directly correlates with a record in the request array using the same ordering, from the top to the bottom of the request and response. RequestResponses always includes the same number of records as the request array. RequestResponses both successfully and unsuccessfully processed records. Firehose attempts to process all records in each PutRecordBatch request. A single record failure does not stop the processing of subsequent records.
A successfully processed record includes a RecordId value, which
is a unique value identified for the record. An unsuccessfully processed
record includes ErrorCode and ErrorMessage values.
ErrorCode reflects the type of error and is one of the following
values: ServiceUnavailable
or InternalFailure
.
ErrorMessage
provides more detailed information about the
error.
If FailedPutCount is greater than 0 (zero), retry the request. A retry of the entire batch of records is possible; however, we strongly recommend that you inspect the entire response and resend only those records that failed processing. This minimizes duplicate records and also reduces the total bytes sent (and corresponding charges).
If the PutRecordBatch operation throws a ServiceUnavailableException, back off and retry. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.
Data records sent to Firehose are stored for 24 hours from the time they are added to a delivery stream as it attempts to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.
putRecordBatch
in interface AmazonKinesisFirehose
putRecordBatchRequest
- Contains the parameters for PutRecordBatch.
ResourceNotFoundException
InvalidArgumentException
ServiceUnavailableException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Kinesis Firehose indicating either a problem with the data in
the request, or a server side issue.@Deprecated public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing the request.
getCachedResponseMetadata
in interface AmazonKinesisFirehose
request
- The originally executed requestCopyright © 2018. All rights reserved.