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

Changes for ops team support #18

Open
2 of 4 tasks
joshbryan-globus opened this issue Feb 26, 2025 · 0 comments
Open
2 of 4 tasks

Changes for ops team support #18

joshbryan-globus opened this issue Feb 26, 2025 · 0 comments
Assignees

Comments

@joshbryan-globus
Copy link

joshbryan-globus commented Feb 26, 2025

This issue is a document of things we should address to make operationalizing the stac transaction api for production easier. I've documented them here as a task list, but we can break them into individual issue if they are big enough to warrant.

  • For CI/CD (and as general good practice) we should add a test suite. Ideally being able to run that with a single command in CI would be good. E.g. pytest or make test or test.sh.
  • Since we will put the transaction (and search) API behind a load balancer, we should increase keepalive for uvicorn to greater than ALB default of 60. This AWS Post has some discussion, and examples of doing this with gunicorn can be found here
  • Anything that might need to be changed between deployment environments (e.g. test/staging and production environments) should be specified as environment variables. Many of the settings are now, but bootstrap server and topic stand out as things that will need to be configurable.
  • Log configuration. We will generally want access/audit logs written out to stdout/stderr so they can be shipped to cloudwatch. I don't see much intentional logging, besides this line that is commented out. We should make sure we are including things like transaction id in those logs. Additonally, formatting logs as json with e.g. python-json-logger will make searching logs much more usable in cloudwatch.
@lliming lliming closed this as completed Feb 26, 2025
@lliming lliming reopened this Feb 26, 2025
@sturoscy-personal sturoscy-personal self-assigned this Mar 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants