Improvement: Use Boto3 for the StreamAlert Status Command
- Dominant language
- Python
- Stars
- 2.9k
- Forks
- 324
- PR merge metrics
- No merged PRs in 30d
Description
### Background
Currently, the CLI command `terraform status` simply prints output based on the config (`variables.json`), and concatenates that with the defined Terraform outputs in the code (mainly user access keys and usernames). This command could provide much more valuable context when diagnosing the health of a StreamAlert cluster.
### Desired Outcome
Use boto3 (the AWS SDK for Python) to gather information on:
- Kinesis Streams
- Lambda Functions
- Event Source Mappings (important)
This gives the user a more accurate view of reality, since API calls are being made to the running services. Checking the event source mapping can help with diagnosing why a Lambda function could be misbehaving as well.
Contributor guide
Research direction
Start with the `terraform status` CLI command and its current use of `variables.json` and Terraform outputs. Review how it reports user access keys and usernames, then determine how status should represent Kinesis Streams, Lambda Functions, and Event Source Mappings from AWS. Done means the command reports the running services rather than only configuration-derived values.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, python, terraform
- Domain
- cli, cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100