Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
- import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
- import software.amazon.awssdk.services.costexplorer.CostExplorerClient;
- import software.amazon.awssdk.services.costexplorer.model.*;
- import java.util.stream.Collectors;
- public class CostExplorerTest {
- public static void main(String[] args) {
- var credentials = StaticCredentialsProvider.create(
- AwsBasicCredentials.create( Environment.ACCESS_KEY, Environment.SECRET_ACCESS_KEY )
- );
- CostExplorerClient costClient = CostExplorerClient.builder()
- .credentialsProvider( credentials )
- .build();
- DateInterval period = DateInterval.builder()
- .start( "2022-05-01" )
- .end( "2022-05-20" )
- .build();
- GetCostAndUsageResponse result = costClient.getCostAndUsage( GetCostAndUsageRequest.builder()
- .granularity( Granularity.DAILY )
- .timePeriod( period )
- .metrics( "UnblendedCost" )
- .groupBy( GroupDefinition.builder().type( GroupDefinitionType.DIMENSION )
- .key( "SERVICE" )
- .build() )
- .build()
- );
- // Mostrar resultados en consola
- for (var r : result.resultsByTime()) {
- var groups = r.groups();
- System.out.println(r.timePeriod());
- groups.forEach( group -> {
- var service = group.keys().stream().collect( Collectors.joining() );
- var metric = group.metrics().get( "UnblendedCost" );
- System.out.println( service + " - " + metric.amount() + " " + metric.unit() );
- } );
- System.out.println("----------------------------------");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement