aws_sqs

Collect logs from AWS SQS

Type: aws_sqs

Sample YAML

{% code title=”aws_sqs_example.yaml” %}

sources:
  aws_sqs_example:
    type: aws_sqs
    queue_url: ''
    delete_message: true
    decoding.codec: bytes
    route_label: ''
    tls:
      tls.enabled: false
      tls.alpn_protocols: ''
      tls.verify_certificate: true
      tls.verify_hostname: true
      tls.ca_file: ''
      tls.crt_file: ''
      tls.key_file: ''
      tls.key_pass: ''
  # optional:
  #   <key>: <value>

{% endcode %}

Fields Reference

Below are tables for Base, TLS, and Optional sections. Columns: Key, Label, Type, Default, Required, Depends on, Enum / Notes.

Base

Key

Label

Type

Default

Required

Enum / Notes

Depends on

queue_url

Queue URL

string

β€œβ€

βœ…

The URL of the SQS queue to poll for messages.

β€”

delete_message

Delete Message

bool

true

βœ…

Whether to delete the message once it is processed.

β€”

decoding.codec

Decoding Codec

enum

bytes

βœ…

The codec to use for decoding events. Enum: [β€œavro”, β€œbytes”, β€œgelf”, β€œinfluxdb”, β€œjson”, β€œnative”, β€œnative_json”, β€œprotobuf”, β€œsyslog”, β€œvrl”]

β€”

route_label

Event Routing Label

string

β€œβ€

β€”

The label to use in routing these events to a destination. Defaults to source name-type.

β€”

TLS

Key

Label

Type

Default

Required

Enum / Notes

Depends on

tls.enabled

TLS Enabled

bool

false

β€”

Whether or not to require TLS for incoming or outgoing connections. When enabled and used for incoming connections, an identity certificate is also required. See tls.crt_file for more information.

β€”

tls.alpn_protocols

ALPN protocols

string

β€œβ€

β€”

Sets the list of supported ALPN protocols. Declare the supported ALPN protocols, which are used during negotiation with peer. They are prioritized in the order that they are defined.

β€”

tls.verify_certificate

Verify Certificate

bool

true

β€”

Enables certificate verification. For components that create a server, this requires that the client connections have a valid client certificate. For components that initiate requests, this validates that the upstream has a valid certificate.

β€”

tls.verify_hostname

Verify Hostname

bool

true

β€”

Enables hostname verification. If enabled, the hostname used to connect to the remote host must be present in the TLS certificate presented by the remote host, either as the Common Name or as an entry in the Subject Alternative Name extension. Only relevant for outgoing connections.

β€”

tls.ca_file

Certificate Authority File

file_ca_file

β€œβ€

β€”

Absolute path to an additional CA certificate file.

β€”

tls.crt_file

Certificate File

file_crt_file

β€œβ€

β€”

Absolute path to a certificate file used to identify this server.

β€”

tls.key_file

Private Key

file_key_file

β€œβ€

β€”

Absolute path to a private key file used to identify this server.

β€”

tls.key_pass

Private Key Passphrase

string

β€œβ€

β€”

Passphrase used to unlock the encrypted key file.

β€”

Optional

Key

Label

Type

Default

Required

Enum / Notes

Depends on

description

Description

string

β€œβ€

β€”

The description of the entry.

β€”

auth.access_key_id

Auth Access Key ID

string

β€œβ€

β€”

The AWS access key ID.

β€”

auth.assume_role

Auth Assume Role

string

β€œβ€

β€”

The ARN of an IAM role to assume.

β€”

auth.credentials_file

Auth Credentials File

string

β€œβ€

β€”

Path to the credentials file.

β€”

auth.external_id

Auth External ID

string

β€œβ€

β€”

The optional unique external ID in conjunction with role to assume.

β€”

auth.imds.connect_timeout_seconds

Auth IMDS Connect Timeout Seconds

int

1

β€”

Connect timeout for IMDS.

β€”

auth.imds.max_attempts

Auth IMDS Max Attempts

int

4

β€”

Number of IMDS retries for fetching tokens and metadata.

β€”

auth.load_timeout_secs

Auth Load Timeout Secs

int

30

β€”

Timeout for successfully loading any credentials, in seconds.

β€”

auth.secret_access_key

Auth Secret Access Key

string

β€œβ€

β€”

The credentials profile to use.

β€”

auth.region

Auth Region

string

β€œβ€

β€”

The AWS region.

β€”

auth.session_name

Auth Session Name

string

β€œβ€

β€”

The optional RoleSessionName is a unique session identifier for your assumed role.

β€”

client_concurrency

Client Concurrency

int

β€”

β€”

Number of concurrent tasks to create for polling the queue for messages.

β€”

decoding.avro.schema

Decoding Avro Schema

string

β€œβ€

β€”

The Avro schema definition.

decoding.codec = avro

decoding.gelf.lossy

Decoding Gelf Lossy

bool

true

β€”

Determines whether or not to replace invalid UTF-8 sequences instead of failing.

decoding.codec = gelf

decoding.influxdb.lossy

Decoding Influxdb Lossy

bool

true

β€”

Determines whether or not to replace invalid UTF-8 sequences instead of failing.

decoding.codec = influxdb

decoding.json.lossy

Decoding Json Lossy

bool

true

β€”

Determines whether or not to replace invalid UTF-8 sequences instead of failing.

decoding.codec = json

decoding.native_json.lossy

Decoding Native Json Lossy

bool

true

β€”

Determines whether or not to replace invalid UTF-8 sequences instead of failing.

decoding.codec = native_json

decoding.protobuf.desc_file

Decoding Protobuf Desc File

string

β€œβ€

β€”

Path to desc file.

decoding.codec = protobuf

decoding.protobuf.message_type

Decoding Protobuf Message Type

string

β€œβ€

β€”

Path to desc file.

decoding.codec = protobuf

decoding.syslog.lossy

Decoding Syslog Lossy

bool

true

β€”

Determines whether or not to replace invalid UTF-8 sequences instead of failing.

decoding.codec = syslog

decoding.vrl.source

Decoding Vrl Source

string

β€œβ€

β€”

The Vector Remap Language (VRL) program to execute for each event. Note that the final contents of the . target will be used as the decoding result. Compilation error or use of β€˜abort’ in a program will result in a decoding error.

decoding.codec = vrl

decoding.vrl.timezone

Decoding Vrl Timezone

string

local

β€”

The name of the timezone to apply to timestamp conversions that do not contain an explicit time zone. The time zone name may be any name in the TZ database, or local to indicate system local time.

decoding.codec = vrl

region

Region

string

β€œβ€

β€”

The AWS region of the target service.

β€”

endpoint

Endpoint

string

β€œβ€

β€”

Custom endpoint for use with AWS-compatible services.

β€”

poll_secs

Poll Secs

int

15

βœ…

How long to wait while polling the queue for new messages, in seconds.

β€”

proxy.enabled

Proxy Enabled

bool

false

β€”

Enables proxying support.

β€”

proxy.http

Proxy HTTP

regex

β€”

β€”

Proxy endpoint to use when proxying HTTP traffic.

β€”

proxy.https

Proxy HTTPS

regex

β€”

β€”

Proxy endpoint to use when proxying HTTPS traffic.

β€”

proxy.no_proxy

Proxy No Proxy

string

β€œβ€

β€”

A list of hosts to avoid proxying.

β€”

visibility_timeout_secs

Visibility Timeout Secs

int

300

β€”

The visibility timeout to use for messages, in seconds

β€”