Reads events from Amazon S3 objects. Supports both list-based polling and SQS event notifications.

Aws S3🔗

Reads events from Amazon S3 objects. Supports both list-based polling and SQS event notifications.

Configuration🔗

FieldTypeRequiredDefaultDescription
decodingDecoderConfigEnum (optional)no—Optional decoder configuration for input events.
modestringyes—Source mode: list for polling or event_stream for SQS notifications.
bucketstringyes—S3 bucket to read objects from.
prefixstring (optional)no—Key prefix filter (List mode only).
interval_secsunsigned integerno60Polling interval in seconds (List mode only).
delete_after_readbooleannofalseWhether to delete objects after reading (List mode only).
authAwsConfig (optional)no—[Authentication] AWS authentication and region settings.
  regionstring (optional)no—AWS region to operate in.
  endpointstring (optional)no—Custom AWS endpoint URL (for LocalStack, MinIO, etc.).
  access_key_idstring (optional)no—AWS access key ID for static credentials.
  secret_access_keystring (optional)no—AWS secret access key for static credentials. (sensitive)
  session_tokenstring (optional)no—AWS session token for temporary credentials. (sensitive)
  assume_rolestring (optional)no—IAM role ARN to assume.
  session_namestring (optional)no—Session name when assuming a role.
  external_idstring (optional)no—External ID for cross-account role assumption.
  profilestring (optional)no—AWS profile name from shared credentials file.
  credentials_filestring (optional)no—Path to an AWS credentials file.
  imdsImdsConfig (optional)no—Instance Metadata Service (IMDS) configuration.
    connect_timeout_secondsunsigned integer (optional)no1Timeout in seconds for IMDS connection.
    max_attemptsunsigned integer (optional)no3Maximum number of IMDS retry attempts.
    read_timeout_secondsunsigned integer (optional)no1Timeout in seconds for IMDS read operations.
  load_timeout_secsunsigned integer (optional)no10Timeout in seconds for loading AWS credentials.
sqsSqsConfigno—[Event Stream] SQS configuration for consuming S3 event notifications.
  authAwsConfig (optional)no—AWS authentication and region settings.
    regionstring (optional)no—AWS region to operate in.
    endpointstring (optional)no—Custom AWS endpoint URL (for LocalStack, MinIO, etc.).
    access_key_idstring (optional)no—AWS access key ID for static credentials.
    secret_access_keystring (optional)no—AWS secret access key for static credentials. (sensitive)
    session_tokenstring (optional)no—AWS session token for temporary credentials. (sensitive)
    assume_rolestring (optional)no—IAM role ARN to assume.
    session_namestring (optional)no—Session name when assuming a role.
    external_idstring (optional)no—External ID for cross-account role assumption.
    profilestring (optional)no—AWS profile name from shared credentials file.
    credentials_filestring (optional)no—Path to an AWS credentials file.
    imdsImdsConfig (optional)no—Instance Metadata Service (IMDS) configuration.
      connect_timeout_secondsunsigned integer (optional)no1Timeout in seconds for IMDS connection.
      max_attemptsunsigned integer (optional)no3Maximum number of IMDS retry attempts.
      read_timeout_secondsunsigned integer (optional)no1Timeout in seconds for IMDS read operations.
    load_timeout_secsunsigned integer (optional)no10Timeout in seconds for loading AWS credentials.
  queue_urlstringyes—SQS queue URL to consume from.
  poll_secsunsigned integerno20Polling interval in seconds.
  max_number_of_messagesintegerno10Maximum number of messages per poll request.
  visibility_timeout_secsinteger (optional)no—Visibility timeout in seconds for received messages.
  client_concurrencyunsigned integerno1Number of concurrent SQS client workers.
  connect_timeout_secondsunsigned integer (optional)no—Connection timeout in seconds.
  read_timeout_secondsunsigned integer (optional)no—Read timeout in seconds.
  operation_timeout_secondsunsigned integer (optional)no—Operation timeout in seconds.
  delete_messagebooleannotrueWhether to delete messages after successful processing.
  delete_failed_messagebooleannofalseWhether to delete messages that failed processing.
  deferredDeferredConfig (optional)no—Deferred message configuration.
    max_age_secsunsigned integer (optional)no3600Maximum age in seconds for deferred messages.
    queue_urlstringyes—SQS queue URL for deferred message processing.

Telemetry🔗

This component emits the following standard telemetry metrics and events.

Metrics🔗

NameTypeDescription
component_received_events_totalCounterTotal number of Kinetic events created by this source.
component_received_event_bytes_totalCounterTotal estimated byte size of events created.
component_received_network_bytes_totalCounterTotal number of raw network bytes received.
component_errors_totalCounterTotal number of errors encountered during processing.

Events🔗

NameDescription
ComponentErrorEmitted when an error occurs during component execution.
ComponentEventsDroppedEmitted when events are intentionally or unintentionally dropped.

Example🔗

sources:
  my_aws_s3:
    type: aws_s3
    mode: list
    bucket: my-data-bucket
    prefix: logs/2024/
    interval_secs: 300
    delete_after_read: true
    auth:
      region: us-west-2
      endpoint: http://localhost:4566
      access_key_id: AKIAIOSFODNN7EXAMPLE
      secret_access_key: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
      assume_role: arn:aws:iam::123456789012:role/kinetic-ingest
      session_name: kinetic-session
      profile: default
      credentials_file: /home/kinetic/.aws/credentials
      imds:
        connect_timeout_seconds: 5
        max_attempts: 5
        read_timeout_seconds: 5
    sqs:
      auth:
        region: us-west-2
        endpoint: http://localhost:4566
        access_key_id: AKIAIOSFODNN7EXAMPLE
        secret_access_key: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
        assume_role: arn:aws:iam::123456789012:role/kinetic-ingest
        session_name: kinetic-session
        profile: default
        credentials_file: /home/kinetic/.aws/credentials
        imds:
          connect_timeout_seconds: 5
          max_attempts: 5
          read_timeout_seconds: 5
      queue_url: https://sqs.us-west-2.amazonaws.com/123456789012/my-queue
      poll_secs: 10
      max_number_of_messages: 10
      visibility_timeout_secs: 30
      client_concurrency: 4
      deferred:
        max_age_secs: 86400
        queue_url: https://sqs.us-west-2.amazonaws.com/123456789012/deferred-queue