API より Log Service にアクセスする場合と同様に、SDK より Log Service にアクセスする場合も基本事項を設定する必要があります。 現時点においては、どの言語の SDK でも、クライアントクラスにエンドポイントを指定しています。 基本事項の設定は、エンドポイントクラスの構築時に行います。

なお、エンドポイントクラスには、次の 2 つの要素があります。

  • Log Service のエンドポイント: クライアントのアクセスする Log Service のエンドポイント
  • Alibaba Cloud の AccessKey: クライアントが Log Service にアクセスする際に使用 (AccessKey ID および AccessKey Secret のペア)

上記の要素を設定する際の注意点は、以下のとおりです。

Log Service のエンドポイント:

SDK を使用する場合、クライアントを初期化します。初期化の際に、アクセスする Log Service プロジェクトのリージョンを指定します (たとえば、「中国 (杭州)」や「中国 (青島)」)。 また、そのリージョンのエンドポイントも指定します。 API に「Service endpoint」を指定する場合と同様にエンドポイントを指定します。
  • クライアントのエンドポイントには、クライアントのアクセスするプロジェクトと同じリージョンを選択します。 リージョンと異なるエンドポイントを指定すると、 SDK からプロジェクトにアクセスすることができません。
  • クライアントインスタンスの作成時にのみエンドポイントを指定することができます。別のリージョンのプロジェクトにアクセスする必要がある場合は、別のクライアントを作成します。
  • 現時点では、すべての API のエンドポイントは、HTTP プロトコルにのみ対応しています。
  • Alibaba Cloud ECS インスタンスに SDK からアクセスする場合、イントラネットエンドポイントを使用することにより、インターネットを経由せずに済みます。 詳細は、「Service endpoint」をご参照ください。

AccessKey:

AccessKey」に記載のとおり、Log Service にアクセスするリクエストはすべて、セキュリティ認証にパスする必要があります。 リクエストのセキュリティ認証に AccessKey は必須です。AccessKey は、AccessKey ID および AccessKey Secret で構成されます。 AccessKey ID および AccessKey Secret は、クライアントの作成時に指定します。 SDK を使用する前に、Alibaba Cloud の AccessKey 管理ページにログインし、AccessKey を取得または作成しておきます。
  • Alibaba Cloud アカウントに複数の AccessKey を作成している場合、クライアント作成時に指定する AccessKey ID および AccessKey Secret が正しい組み合わせであることを確認します。 正しい組み合わせでない場合、セキュリティ認証に失敗します。
  • 有効な AccessKey である必要があります。 有効でない場合、リクエストは Log Service に拒否されます。 Alibaba Cloud の AccessKey 管理コンソールにログインし、AccessKey のステータスをご確認ください。

「中国 (杭州)」リージョンのプロジェクトに、有効な AccessKey でアクセスします。AccessKey は次のようになります。

AccessKeyId = "bq2sjzesjmo**************"
AccessKeySecret = "4fdO2fTDDnZPU/*************"

なお、クライアントインスタンスは、以下のように作成します。

Java:

String endpoint = "cn-hangzhou.log.aliyuncs.com"; // Log Service のエンドポイントに「中国 (杭州) 」リージョンを指定
String accessKeyId = "bq2sjzesjmo86kq35behupbq"; // Alibaba Cloud AccessKey ID を指定
String accessKeySecret = "4fdO2fTDDnZPU/L7CHNdemB2Nsk=";// Alibaba Cloud AccessKey Secret を指定
Client client = new Client(endpoint, accessKeyId, acccessKeySecret);
//// 以下、クライアントからの Log Service プロジェクト操作

NET(C#):

String endpoint = "cn-hangzhou.log.aliyuncs.com"; // Log Service のエンドポイントに「中国 (杭州) 」リージョンを指定
String accessKeyId = "bq2sjzesjmo86kq35behupbq"; // Alibaba Cloud AccessKey ID を指定
String accessKeySecret = "4fdO2fTDDnZPU/L7CHNdemB2Nsk=";// Alibaba Cloud AccessKey Secret を指定
SLSClient client = new SLSClient(endpoint, accessKeyId, accessKeySecret);
// 以下、クライアントからの Log Service プロジェクト操作

PHP:

$endpoint = 'cn-hangzhou.sls.aliyuncs.com';// Log Service のエンドポイントに「中国 (杭州) 」リージョンを指定
$accessKeyId = 'bq2sjzesjmo86kq35behupbq'; // Alibaba Cloud AccessKey ID を指定
$accessKey = '4fdO2fTDDnZPU / L7CHNdemB2Nsk ='; // Alibaba Cloud AccessKey Secret を指定
$client = new Aliyun_Sls_Client($endpoint, $accessKeyId, $accessKey);
// 以下、クライアントからの Log Service プロジェクト操作

Python:

# Log Service のエンドポイントに「中国 (杭州) 」リージョンを指定
endpoint = 'regionid.example.com'
# Alibaba Cloud AccessKey ID を指定
accessKeyId = 'bq2sjzesjmo*************'
# Alibaba Cloud AccessKey Secret を指定
accessKey = '4fdO2fTDDnZPU/*************'  
client = LogClient(endpoint, accessKeyId, accessKey)
#以下、クライアントからの Log Service プロジェクト操作