initialize aws cost explorer getCostAndUsageWithResource anycall handler function #1309
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
작업 내용
개요
getCostWithResource 함수는 지정된 매개변수에 따라 AWS Cost Explorer에서 AWS 리소스의 비용 및 사용량 데이터를 쿼리한다. spider 의 aws anycall handler 를 확장해서 기능을 구성했다.
함수 시그니처
매개변수
anyCallHandler
callInfo
요청 구조‼️ 🎆✨
callInfo 매개변수는 requestBody 키 아래에 JSON 본문을 포함해야 한다. 이 JSON은
CostWithResourceReq
구조에 맞아야하며CostWithResourceReq
는 다음과 같은 구조를 가진다.CostWithResourceReq 구조
StartDate: string
requiredEndDate: string
requiredGranularity: string
requiredMetrics: []string
required at least one elementFilter: FilterExpression
requiredGroups: []GroupBy
optionalFilterExpression 구조
And: []*FilterExpression
optionalOr: []*FilterExpression
optionalNot: *FilterExpression
optionalCostCategories: *KeyValues
optionalDimensions: *KeyValues
optionalTags: *KeyValues
optionalKeyValues 구조
Key: string
Values: []string
GroupBy 구조
Type: string
Key: string
응답
함수는 AWS Cost Explorer의 응답으로 callInfo를 업데이트 한 후 리턴한다.
callInfo.OKeyValueList
키: "result"
값: AWS Cost Explorer 응답의 JSON 문자열.
오류
다음 경우에 오류를 반환한다.
요청 json 직렬화 형식 예시
Curl 호출 예시
GO 코드 예시
응답 예시