Obtenir un cluster - Amazon Aurora DSQL

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Obtenir un cluster

Consultez les informations suivantes pour savoir comment renvoyer des informations à un cluster dans Aurora DSQL.

Python

Pour obtenir des informations sur un cluster unique ou multirégional, utilisez l'exemple suivant.

import boto3 from datetime import datetime import json def get_cluster(region, identifier): try: client = boto3.client("dsql", region_name=region) return client.get_cluster(identifier=identifier) except: print(f"Unable to get cluster {identifier} in region {region}") raise def main(): region = "us-east-1" cluster_id = "<your cluster id>" response = get_cluster(region, cluster_id) print(json.dumps(response, indent=2, default=lambda obj: obj.isoformat() if isinstance(obj, datetime) else None)) if __name__ == "__main__": main()
C++

Utilisez l'exemple suivant pour obtenir des informations sur un cluster à région unique ou multirégionale.

#include <aws/core/Aws.h> #include <aws/core/utils/Outcome.h> #include <aws/dsql/DSQLClient.h> #include <aws/dsql/model/GetClusterRequest.h> #include <iostream> using namespace Aws; using namespace Aws::DSQL; using namespace Aws::DSQL::Model; /** * Retrieves information about a cluster in Amazon Aurora DSQL */ GetClusterResult GetCluster(const Aws::String& region, const Aws::String& identifier) { // Create client for the specified region DSQL::DSQLClientConfiguration clientConfig; clientConfig.region = region; DSQL::DSQLClient client(clientConfig); // Get the cluster GetClusterRequest getClusterRequest; getClusterRequest.SetIdentifier(identifier); auto getOutcome = client.GetCluster(getClusterRequest); if (!getOutcome.IsSuccess()) { std::cerr << "Failed to retrieve cluster " << identifier << " in " << region << ": " << getOutcome.GetError().GetMessage() << std::endl; throw std::runtime_error("Unable to retrieve cluster " + identifier + " in region " + region); } return getOutcome.GetResult(); } int main() { Aws::SDKOptions options; Aws::InitAPI(options); { try { // Define region and cluster ID Aws::String region = "us-east-1"; Aws::String clusterId = "<your cluster id>"; auto cluster = GetCluster(region, clusterId); // Print cluster details std::cout << "Cluster Details:" << std::endl; std::cout << "ARN: " << cluster.GetArn() << std::endl; std::cout << "Status: " << ClusterStatusMapper::GetNameForClusterStatus(cluster.GetStatus()) << std::endl; } catch (const std::exception& e) { std::cerr << "Error: " << e.what() << std::endl; } } Aws::ShutdownAPI(options); return 0; }
JavaScript

Pour obtenir des informations sur un cluster unique ou multirégional, utilisez l'exemple suivant.

import { DSQLClient, GetClusterCommand } from "@aws-sdk/client-dsql"; async function getCluster(region, clusterId) { const client = new DSQLClient({ region }); const getClusterCommand = new GetClusterCommand({ identifier: clusterId, }); try { return await client.send(getClusterCommand); } catch (error) { if (error.name === "ResourceNotFoundException") { console.log("Cluster ID not found or deleted"); } throw error; } } async function main() { const region = "us-east-1"; const clusterId = "<CLUSTER_ID>"; const response = await getCluster(region, clusterId); console.log("Cluster: ", response); } main();
Java

L'exemple suivant vous permet d'obtenir des informations sur un cluster à région unique ou multirégionale.

package org.example; import software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.dsql.DsqlClient; import software.amazon.awssdk.services.dsql.model.GetClusterResponse; import software.amazon.awssdk.services.dsql.model.ResourceNotFoundException; public class GetCluster { public static void main(String[] args) { Region region = Region.US_EAST_1; String clusterId = "<your cluster id>"; try ( DsqlClient client = DsqlClient.builder() .region(region) .credentialsProvider(DefaultCredentialsProvider.create()) .build() ) { GetClusterResponse cluster = client.getCluster(r -> r.identifier(clusterId)); System.out.println(cluster); } catch (ResourceNotFoundException e) { System.out.printf("Cluster %s not found in %s%n", clusterId, region); } } }
Rust

L'exemple suivant vous permet d'obtenir des informations sur un cluster à région unique ou multirégionale.

use aws_config::load_defaults; use aws_sdk_dsql::operation::get_cluster::GetClusterOutput; use aws_sdk_dsql::{ Client, Config, config::{BehaviorVersion, Region}, }; /// Create a client. We will use this later for performing operations on the cluster. async fn dsql_client(region: &'static str) -> Client { // Load default SDK configuration let sdk_defaults = load_defaults(BehaviorVersion::latest()).await; // You can set your own credentials by following this guide // https://docs.aws.amazon.com/sdk-for-rust/latest/dg/credproviders.html let credentials = sdk_defaults.credentials_provider().unwrap(); let config = Config::builder() .behavior_version(BehaviorVersion::latest()) .credentials_provider(credentials) .region(Region::new(region)) .build(); Client::from_conf(config) } /// Get a ClusterResource from DSQL cluster identifier pub async fn get_cluster(region: &'static str, identifier: &'static str) -> GetClusterOutput { let client = dsql_client(region).await; client .get_cluster() .identifier(identifier) .send() .await .unwrap() } #[tokio::main(flavor = "current_thread")] pub async fn main() -> anyhow::Result<()> { let region = "us-east-1"; let cluster = get_cluster(region, "<your cluster id>").await; println!("{:#?}", cluster); Ok(()) }
Ruby

L'exemple suivant vous permet d'obtenir des informations sur un cluster à région unique ou multirégionale.

require "aws-sdk-dsql" require "pp" def get_cluster(region, identifier) client = Aws::DSQL::Client.new(region: region) client.get_cluster(identifier: identifier) rescue Aws::Errors::ServiceError => e abort "Unable to retrieve cluster #{identifier} in region #{region}: #{e.message}" end def main region = "us-east-1" cluster_id = "<your cluster id>" cluster = get_cluster(region, cluster_id) pp cluster end main if $PROGRAM_NAME == __FILE__
.NET

L'exemple suivant vous permet d'obtenir des informations sur un cluster à région unique ou multirégionale.

using System; using System.Threading.Tasks; using Amazon; using Amazon.DSQL; using Amazon.DSQL.Model; using Amazon.Runtime.Credentials; namespace DSQLExamples.examples { public class GetCluster { /// <summary> /// Create a client. We will use this later for performing operations on the cluster. /// </summary> private static async Task<AmazonDSQLClient> CreateDSQLClient(RegionEndpoint region) { var awsCredentials = await DefaultAWSCredentialsIdentityResolver.GetCredentialsAsync(); var clientConfig = new AmazonDSQLConfig { RegionEndpoint = region }; return new AmazonDSQLClient(awsCredentials, clientConfig); } /// <summary> /// Get information about a DSQL cluster. /// </summary> public static async Task<GetClusterResponse> Get(RegionEndpoint region, string identifier) { using (var client = await CreateDSQLClient(region)) { var getClusterRequest = new GetClusterRequest { Identifier = identifier }; return await client.GetClusterAsync(getClusterRequest); } } private static async Task Main() { var region = RegionEndpoint.USEast1; var clusterId = "<your cluster id>"; var response = await Get(region, clusterId); Console.WriteLine($"Cluster ARN: {response.Arn}"); } } }
Golang

L'exemple suivant vous permet d'obtenir des informations sur un cluster à région unique ou multirégionale.

package main import ( "context" "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/config" "log" "time" "github.com/aws/aws-sdk-go-v2/service/dsql" ) func GetCluster(ctx context.Context, region, identifier string) (clusterStatus *dsql.GetClusterOutput, err error) { cfg, err := config.LoadDefaultConfig(ctx, config.WithRegion(region)) if err != nil { log.Fatalf("Failed to load AWS configuration: %v", err) } // Initialize the DSQL client client := dsql.NewFromConfig(cfg) input := &dsql.GetClusterInput{ Identifier: aws.String(identifier), } clusterStatus, err = client.GetCluster(context.Background(), input) if err != nil { log.Fatalf("Failed to get cluster: %v", err) } log.Printf("Cluster ARN: %s", *clusterStatus.Arn) return clusterStatus, nil } func main() { ctx, cancel := context.WithTimeout(context.Background(), 6*time.Minute) defer cancel() // Example cluster identifier identifier := "<CLUSTER_ID>" region := "us-east-1" _, err := GetCluster(ctx, region, identifier) if err != nil { log.Fatalf("Failed to get cluster: %v", err) } }