Client は、Simple Log Service にアクセスするために使用できる Java SDK クライアントです。プロジェクトの作成、ログストアの作成、ログの書き込み、ログの読み取りなど、さまざまなメソッドが用意されています。 Simple Log Service Java SDK を使用してリクエストを開始するには、Client インスタンスを初期化し、ビジネス要件に基づいて Client インスタンスのデフォルト設定を変更する必要があります。
前提条件
Simple Log Service Java SDK がインストールされていること。詳細については、「Simple Log Service Java SDK のインストール」をご参照ください。
手順
ビジネス要件に基づいて、次の初期化方法のいずれかを選択できます。
AccessKey ペアベースの初期化: AccessKey ペアは長期間有効で、API 呼び出しに直接使用できます。 AccessKey ペアベースの初期化は、アクセス資格情報の頻繁な交換が不要なシナリオに適しています。
STS ベースの初期化: セキュリティトークンサービス (STS) は一時的なアクセス資格情報を生成します。 STS ベースの初期化は、動的および一時的な承認が必要なシナリオに適しています。
AccessKey ペアの使用
Client インスタンスの初期化
public Client(String endpoint, String accessKeyId, String accessKeySecret)リクエストパラメーター
パラメーター | タイプ | 必須 | 説明 | 例 |
endpoint | String | はい | エンドポイント。エンドポイントは、Alibaba Cloud サービスへのアクセスに使用されます。ほとんどの場合、エンドポイントは URL です。エンドポイントは、アクセスプロトコル、ホスト名、ポート、パスなど、サービスに関する情報を指定します。クライアントはこの情報を使用してサービスにアクセスできます。詳細については、「エンドポイント」をご参照ください。Simple Log Service は、パブリックエンドポイント、VPC エンドポイント、およびアクセラレーションエンドポイントをサポートしています。
|
|
accessKeyId | String | はい |
|
|
accessKeySecret | String | はい | AccessKey ペアを使用してアクセス資格情報を設定する場合、Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey シークレット。 AccessKey シークレットは、AccessKey ID を検証するために使用されます。詳細については、「アクセス資格情報を設定する」をご参照ください。 |
|
サンプルコード
V4 署名アルゴリズムは、より複雑な暗号化と署名方法を使用して、より高いセキュリティを提供します。 V1 署名アルゴリズムは比較的単純です。ビジネス要件に基づいて署名アルゴリズムを選択できます。
V4 署名
package com.test.controller;
import com.aliyun.openservices.log.Client;
import com.aliyun.openservices.log.http.client.ClientConfiguration;
import com.aliyun.openservices.log.http.signer.SignVersion;
public class Sample {
public static void main(String[] args) throws Exception {
// Simple Log Service エンドポイントを指定します。この例では、中国 (北京) リージョンの Simple Log Service エンドポイントが使用されています。パラメーター値を実際のエンドポイントに置き換えます。
String endpoint = "cn-beijing.log.aliyuncs.com";
// 環境変数から AccessKey ID と AccessKey シークレットを取得します。
String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
ClientConfiguration clientConfiguration = new ClientConfiguration();
clientConfiguration.setRegion("cn-beijing");
clientConfiguration.setSignatureVersion(SignVersion.V4);
Client client = new Client(endpoint,
accessKeyId,
accessKeySecret,
clientConfiguration);
}
}V1 署名
package com.test.controller;
import com.aliyun.openservices.log.Client;
public class Sample {
public static void main(String[] args) throws Exception {
// Simple Log Service エンドポイントを指定します。この例では、中国 (北京) リージョンの Simple Log Service エンドポイントが使用されています。パラメーター値を実際のエンドポイントに置き換えます。
String endpoint = "cn-beijing.log.aliyuncs.com";
// 環境変数から AccessKey ID と AccessKey シークレットを取得します。
String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
Client client = new Client(endpoint, accessKeyId, accessKeySecret);
}
}STS の使用
Client インスタンスの初期化
public Client(String endpoint, String accessKeyId, String accessKeySecret)リクエストパラメーター
パラメーター | タイプ | 必須 | 説明 | 例 |
endpoint | String | はい | エンドポイント。エンドポイントは、Alibaba Cloud サービスへのアクセスに使用されます。ほとんどの場合、エンドポイントは URL です。エンドポイントは、アクセスプロトコル、ホスト名、ポート、パスなど、サービスに関する情報を指定します。クライアントはこの情報を使用してサービスにアクセスできます。詳細については、「エンドポイント」をご参照ください。 Simple Log Service は、パブリックエンドポイント、VPC エンドポイント、およびアクセラレーションエンドポイントをサポートしています。
|
|
accessKeyId | String | はい | STS を使用してアクセス資格情報を設定する場合、AssumeRole 操作によって返される Credentials パラメーターの下にある AccessKeyId パラメーターの値。 |
|
accessKeySecret | String | はい | STS を使用してアクセス資格情報を設定する場合、AssumeRole 操作によって返される Credentials パラメーターの下にある AccessKeySecret パラメーターの値。 |
|
サンプルコード
package com.test.controller;
import com.aliyun.openservices.log.Client;
public class Sample {
public static void main(String[] args) throws Exception {
// Simple Log Service エンドポイントを指定します。この例では、中国 (北京) リージョンの Simple Log Service エンドポイントが使用されています。パラメーター値を実際のエンドポイントに置き換えます。
String endpoint = "cn-beijing.log.aliyuncs.com";
// この例では、AssumeRole 操作によって返される Credentials パラメーターの下にある AccessKeyId パラメーターの値を取得します。
String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
// この例では、AssumeRole 操作によって返される Credentials パラメーターの下にある AccessKeySecret パラメーターの値を取得します。
String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
// この例では、AssumeRole 操作によって返される Credentials パラメーターの下にある SecurityToken パラメーターの値を取得します。
String securityToken = System.getenv("ALIBABA_CLOUD_STS_TOKEN");
Client client = new Client(endpoint, accessKeyId, accessKeySecret);
client.setSecurityToken(securityToken);
}
}関連情報
Client インスタンスを初期化したら、Simple Log Service Java SDK を使用してプロジェクトを作成し、ログを書き込むことができます。詳細については、「Simple Log Service Java SDK を使用する」をご参照ください。