An API Explorer for every operation of every service, 16 more services on the dashboard, and a much lighter backend.
API Explorer
A new page calls any operation of any service botocore knows against the selected endpoint, including the many services StackPort has no view for. (#219)
- Catalog: every service and operation comes from botocore's own models, with their docs and Read/Write badges.
- Request: a form generated from the operation's parameters, plus a JSON view of the whole request.
- Response: JSON, with status, request ID and timing. Endpoint errors show with the endpoint's own message.
- Copy as AWS CLI or boto3. With AWS Emulator, the snippets include the setup it needs (keys, certificate, host prefixes).
- Pagination, deep links (
/explorer?service=sqs&operation=ListQueues) and a short local history. - Read-only mode only runs operations that read. Reads that hand out credentials or tokens, like
sts GetSessionToken, count as writes. On real AWS, writes ask first.
16 more services
EventBridge Scheduler, EventBridge Pipes, AppConfig, Cloud Map, CodeBuild, CodePipeline, CodeCommit, CodeDeploy, Batch, EKS, OpenSearch, MSK, Bedrock, CloudTrail, X-Ray and Verified Permissions are now counted on the dashboard, listed and opened in the resource browser. SES also lists configuration sets and email templates. That's 51 services by default. (#218)
Services an endpoint doesn't have show as "not supported", now also on MiniStack, where they used to show as unavailable.
Lighter and faster
- StackPort used to create a separate boto3 session for every client, so each endpoint's clients took about 500 MB. Clients with the same credentials now share a session. With two endpoints, memory went from about 1 GB to about 330 MB, and the first dashboard load from 3.3 s to 0.4 s. (#225)
Fixes
- Endpoint errors keep their status everywhere. A missing resource or a bad parameter is now a 4xx with the endpoint's message in every route, instead of a 500 with botocore's text. (#220)
- Real AWS stays real AWS.
AWS_ENDPOINT_URL_<SERVICE>variables and a profile'sendpoint_urlorservicessettings no longer redirect some calls of a real-AWS endpoint. A profile still provides the credentials. (#221) - No secrets in debug logs. With
LOG_LEVEL=DEBUG, botocore's request and response logs, which include parameter values and session tokens, now stay out unless you setSTACKPORT_LOG_AWS_WIRE=true.
Changes in behaviour
| Change | If it affects you |
|---|---|
AWS_ENDPOINT_URL_<SERVICE> and profile endpoint settings don't apply to StackPort
| Set the endpoint URL on the StackPort endpoint instead |
| Credentials are read once per credential set | After editing a static key in ~/.aws/credentials, use Test connection, edit the endpoint, or restart
|
botocore's wire logs are off at LOG_LEVEL=DEBUG
| Set STACKPORT_LOG_AWS_WIRE=true to see them
|
| The dashboard probes 51 services by default | Set STACKPORT_SERVICES to probe fewer
|
Full changelog: v0.4.9...v0.4.10