Expand description
AWS API wrapper for Vantage — incubating.
Treat AWS JSON-1.1 RPC endpoints (CloudWatch Logs, ECS, DynamoDB
control plane, KMS, …) as Vantage TableSources. Build an
AwsAccount, hand it to a Table, and encode the operation in
the table name as array_key:service/target:
"logGroups:logs/Logs_20140328.DescribeLogGroups"
│ │ └── X-Amz-Target header value
│ └────────── service code (also the URL hostname segment)
└────────────────── response field that holds the row arrayConditions on the table fold into the JSON request body. v0 is read-only, first-page only, JSON-1.1 only — REST-JSON and S3 will arrive as separate source types.
Ready-made CloudWatch models live under models if you want to
skip the table-name dance and start querying.
// env vars first, falling back to ~/.aws/credentials [default]
let aws = AwsAccount::from_default()?;
let mut groups: Table<AwsAccount, EmptyEntity> = Table::new(
"logGroups:logs/Logs_20140328.DescribeLogGroups",
aws,
);
groups.add_condition(eq("logGroupNamePrefix", "/aws/lambda/"));Modules§
- models
- Ready-made tables to skip the table-name dance.
Structs§
Enums§
Traits§
- AwsOperation
eq/in_for AWS-backed columns. Auto-implemented for anyExpressive<CborValue>—Column<T>, identifier expressions, etc.
Functions§
- eq
field == value. Shorthand forAwsCondition::eq.- in_
field IN values(literal set). Shorthand forAwsCondition::in_. Remember the single-value rule — a multi-element set will error at execute time.