Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

adding connect and read timeouts for firehose client #736

Merged
merged 2 commits into from
May 15, 2018

Conversation

ryandeivert
Copy link
Contributor

@ryandeivert ryandeivert commented May 15, 2018

to: @jacknagz or @chunyong-lin
cc: @airbnb/streamalert-maintainers
size: small
resolves: #478

Background

The vast majority of our lambda execution time is spent trying to send data to firehose via boto3. This can cause timeouts, etc. The AWS kinesis team suggested shortening the connect and read timeouts to cause retries to happen faster. It's our understanding that if the connect or read takes anything over a few seconds, it's likely not going to succeed at all. Therefore, it's advantageous to just have the attempt killed at retried sooner.

Changes

  • As suggested, this changes the connect and read timeouts for boto3 via settings in a botocore.client.Config.
  • Adding logger statement that will track firehose FailedPutCount values that are greater than 0.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.004%) to 97.611% when pulling 0b92417 on ryandeivert-shorten-fh-timeout into af596ea on master.

Copy link
Contributor

@jacknagz jacknagz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Bug: Rule processor Firehose bug - error: [Errno 104] Connection reset by peer
3 participants