Настроить SDK-клиент
Для работы с логами вы можете настроить собственный SDK-клиент на Python или Go.
Для SDK-клиента можно:
- задать конфигурации настроенного AWS CLI;
- переопределить конфигурации AWS CLI;
- задать кастомные конфигурации.
Python
Go
Конфигурация AWS CLI
Переопределенные конфигурации AWS CLI
Кастомные конфигурации
-
Откройте CLI.
-
Установите boto3 для настройки зависимостей:
pip install boto3 -
Откройте существующий файл скрипта или создайте новый.
-
Скопируйте скрипт в файл. Вы можете переопределить конфигурации AWS CLI в скрипте:
import boto3
access_key = '<access_key>'
secret_key = '<secret_key>'
region = '<pool>'
client = boto3.client(
'logs',
aws_access_key_id=access_key,
aws_secret_access_key=secret_key,
region_name=region,
endpoint_url=f'https://{region}.logs.selcloud.ru'
)Укажите:
- опционально:
<access_key>— значение поля Access key из S3-ключа, который вы выдали пользователю; - опционально:
<secret_key>— значение поля Secret key из S3-ключа, который вы выдали пользователю; - опционально:
<pool>— пул для генерации URL обращения к сервису Логи (например,ru-8).
- опционально:
-
Откройте CLI.
-
Установите boto3 для настройки зависимостей:
pip install boto3 -
Откройте существующий файл скрипта или создайте новый.
-
Скопируйте скрипт в файл:
import boto3
access_key = '<access_key>'
secret_key = '<secret_key>'
region = '<pool>'
client = boto3.client(
'logs',
aws_access_key_id=access_key,
aws_secret_access_key=secret_key,
region_name=region,
endpoint_url=f'https://{region}.logs.selcloud.ru'
)Укажите:
<access_key>— значение поля Access key из S3-ключа, который вы выдали пользователю;<secret_key>— значение поля Secret key из S3-ключа, который вы выдали пользователю;<pool>— пул для генерации URL обращения к сервису Логи (например,ru-8).
Конфигурации AWS CLI
Переопределенные конфигурации AWS CLI
Кастомные конфигурации
-
Откройте CLI.
-
Загрузите пакеты для создания клиента:
go get github.com/aws/aws-sdk-go-v2
go get github.com/aws/aws-sdk-go-v2/config
go get github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs
go get github.com/aws/aws-sdk-go-v2/credentials -
Откройте существующий файл скрипта или создайте новый.
-
Скопируйте скрипт в файл. Скрипт настроит клиент с конфигурациями, которые вы задали для AWS CLI:
package main
import (
"context"
"fmt"
"log"
"github.com/aws/aws-sdk-go-v2/config"
"github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs"
)
func main() {
cfg, err := config.LoadDefaultConfig(context.TODO())
if err != nil {
log.Fatalf("Ошибка загрузки конфигурации: %v", err)
}
client := cloudwatchlogs.NewFromConfig(cfg)
fmt.Println("CloudWatch Logs Сlient создан:", client)
}
-
Откройте CLI.
-
Загрузите пакеты для создания клиента:
go get github.com/aws/aws-sdk-go-v2
go get github.com/aws/aws-sdk-go-v2/config
go get github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs
go get github.com/aws/aws-sdk-go-v2/credentials -
Откройте существующий файл скрипта или создайте новый.
-
Скопируйте скрипт в файл. Вы можете переопределить конфигурации AWS CLI в скрипте:
package main
import (
"context"
"fmt"
"log"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/config"
"github.com/aws/aws-sdk-go-v2/credentials"
"github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs"
)
func main() {
accessKey := "<access_key>"
secretKey := "<secret_key>"
region := "<pool>"
endpoint := fmt.Sprintf("https://%s.logs.selcloud.ru", region)
customResolver := aws.EndpointResolverFunc(func(service, region string) (aws.Endpoint, error) {
if service == cloudwatchlogs.ServiceID {
return aws.Endpoint{
URL: endpoint,
SigningRegion: region,
}, nil
}
return aws.Endpoint{}, fmt.Errorf("Неизвестный сервис: %s", service)
})
cfg, err := config.LoadDefaultConfig(context.TODO(),
config.WithRegion(region),
config.WithCredentialsProvider(credentials.NewStaticCredentialsProvider(accessKey, secretKey, "")),
config.WithEndpointResolver(customResolver),
)
if err != nil {
log.Fatalf("Ошибка загрузки конфигурации: %v", err)
}
client := cloudwatchlogs.NewFromConfig(cfg)
fmt.Println("CloudWatch Logs Client создан:", client)
}
Укажите:
- опционально:
<access_key>— значение поля Access key из S3-ключа, который вы выдали пользователю; - опционально:
<secret_key>— значение поля Secret key из S3-ключа, который вы выдали пользователю; - опционально:
<pool>— пул для генерации URL обращения к сервису Логи (например,ru-8).
-
Откройте CLI.
-
Загрузите пакеты для создания клиента:
go get github.com/aws/aws-sdk-go-v2
go get github.com/aws/aws-sdk-go-v2/config
go get github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs
go get github.com/aws/aws-sdk-go-v2/credentials -
Откройте существующий файл скрипта или создайте новый.
-
Скопируйте скрипт в файл:
package main
import (
"context"
"fmt"
"log"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/config"
"github.com/aws/aws-sdk-go-v2/credentials"
"github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs"
)
func main() {
accessKey := "<access_key>"
secretKey := "<secret_key>"
region := "<pool>"
endpoint := fmt.Sprintf("https://%s.logs.selcloud.ru", region)
customResolver := aws.EndpointResolverFunc(func(service, region string) (aws.Endpoint, error) {
if service == cloudwatchlogs.ServiceID {
return aws.Endpoint{
URL: endpoint,
SigningRegion: region,
}, nil
}
return aws.Endpoint{}, fmt.Errorf("Неизвестный сервис: %s", service)
})
cfg, err := config.LoadDefaultConfig(context.TODO(),
config.WithRegion(region),
config.WithCredentialsProvider(credentials.NewStaticCredentialsProvider(accessKey, secretKey, "")),
config.WithEndpointResolver(customResolver),
)
if err != nil {
log.Fatalf("Ошибка загрузки конфигурации: %v", err)
}
client := cloudwatchlogs.NewFromConfig(cfg)
fmt.Println("CloudWatch Logs Client создан:", client)
}
Укажите:
<access_key>— значение поля Access key из S3-ключа, который вы выдали пользователю;<secret_key>— значение поля Secret key из S3-ключа, который вы выдали пользователю;<pool>— пул для генерации URL обращения к сервису Логи (например,ru-8).