Amazon Kinesis Firehose

Amazon Kinesis Firehose destination plugin

Amazon Kinesis Firehose is a fully managed service provided by Amazon Web Services (AWS) for ingesting, transforming, and loading streaming data into AWS data stores and analytics tools. The Kinesis Firehose Destination Plugin in Calyptia Core lets you configure your pipeline to collect various data types such as logs, metrics, traces, and events and stream them directly to your Kinesis Firehose delivery stream for efficient and reliable delivery to your desired AWS data store or analytics tool.

Configuration parameters

The Amazon Kinesis Firehouse destination plugin provides these configuration parameters.

General

KeyDescription
RegionThe AWS region of your Kinesis Streams.
Kinesis Firehouse NameKinesis Firehouse Name.

AWS authentication

KeyDescription
IAM Role ARNARN of an IAM role to assume (ex. for cross account access).
Firehose API EndpointCustom Endpoint for the FirehoSe API.
STS API EndpointCustom Endpoint for the STS API.
External ID for STS APISpecify an external ID for the STS API, can be used with the role_arn parameter if your role requires an external ID.

Advanced

KeyDescription
CompressionCompression type for Firehose records. Each log record is individually compressed and sent to Firehose. 'gzip' and 'arrow' are the supported values. 'arrow' is only an available if Apache Arrow was enabled at compile time. Defaults to no compression.
Time KeyAdd the timestamp to the record under this key. By default the timestamp from Fluent Bit will not be added to records sent to Kinesis.
Time Key Formatstrftime compliant format string for the timestamp; for example, the default is '%Y-%m-%dT%H:%M:%S'. This option is used with time_key.
Log KeyBy default, the whole log record will be sent to Kinesis. If you specify a key name with this option, then only the value of that key will be sent to Kinesis. For example, if you are using the Fluentd Docker log driver, you can specify log_key log and only the log message will be sent to Kinesis.
Enable Auto Retry RequestsImmediately retry failed requests to AWS services once. This option does not affect the normal Fluent Bit retry mechanism with backoff. Instead, it enables an immediate retry with no delay for networking errors, which may help improve throughput when there are transient/random networking issues.

Security and TLS

KeyDescription
TLSEnable or disable TLS/SSL support.
TLS Certificate ValidationTurn TLS/SSL certificate validation on or off. TLS must be on for this setting to be enabled.
TLS Debug LevelSet TLS debug verbosity level. Accepts these values: 0 (No debug), 1 (Error), 2 (State change), 3 (Informational), 4 (Verbose).
CA Certificate File PathAbsolute path to CA certificate file.
Certificate File PathAbsolute path to certificate file.
Private key File PathAbsolute path to private key file.
Private Key Path PasswordOptional password for tls.key_file file.
TLS SNI Hostname ExtensionHostname to be used for TLS SNI extension.

Advanced networking

KeyDescription
DNS ModeSelect the primary DNS connection type (TCP or UDP).
DNS ResolverSelect the primary DNS connection type (TCP or UDP).
Prefer IPv4Prioritize IPv4 DNS results when trying to establish a connection.
KeepaliveEnable or disable Keepalive support.
Keepalive Idle TimeoutSet maximum time allowed for an idle Keepalive connection.
Max Connect TimeoutSet maximum time allowed to establish a connection, this time includes the TLS handshake.
Max Connect Timeout Log ErrorOn connection timeout, specify if it should log an error. When disabled, the timeout is logged as a debug message.
Max Keepalive RecycleSet maximum number of times a keepalive connection can be used before it is retired.
Source AddressSpecify network address to bind for data traffic.