Amazon web services 如何使用Python Boto3为EC2实例(和Spot车队)添加CloudWatch日志记录
我正在使用python和boto3创建AWS EC2实例(以及发出spot震源组请求),但我不知道如何将CloudWatch日志添加到EC2实例或spot震源组 我知道如何通过AWS控制台添加日志记录,但我需要知道如何通过boto3编程 我一直在通过以下链接查看文档,但找不到答案: 我注意到ConnectionLogOptions,但它似乎不适用于request\u spot\u车队或create\u实例 在使用boto3创建ec2实例或发出spot车队请求时,有人能提供一个如何配置CloudWatch日志的示例吗 下面是我的create_实例配置示例:Amazon web services 如何使用Python Boto3为EC2实例(和Spot车队)添加CloudWatch日志记录,amazon-web-services,amazon-ec2,Amazon Web Services,Amazon Ec2,我正在使用python和boto3创建AWS EC2实例(以及发出spot震源组请求),但我不知道如何将CloudWatch日志添加到EC2实例或spot震源组 我知道如何通过AWS控制台添加日志记录,但我需要知道如何通过boto3编程 我一直在通过以下链接查看文档,但找不到答案: 我注意到ConnectionLogOptions,但它似乎不适用于request\u spot\u车队或create\u实例 在使用boto3创建ec2实例或发出spot车队请求时,有人能提供一个如何配置Cloud
instances = ec2.create_instances(
ImageId='ami-00000000000000000',
InstanceInitiatedShutdownBehavior='terminate',
InstanceType='t2.medium',
MaxCount=1,
UserData=userData,
MinCount=1,
TagSpecifications=[{
'ResourceType': 'instance',
'Tags': [
{'Key': tag,
'Value': tag_value}]}],
NetworkInterfaces=[{
'SubnetId': "subnet-00000000",
'DeviceIndex': 0,
"DeleteOnTermination": True,
'AssociatePublicIpAddress': True,
'Groups': ["sg-ef000000"]
}],
KeyName=keyname)
以下是spot车队请求的示例:
request=client.request_spot_fleet(
SpotFleetRequestConfig= {
"IamFleetRole": "arn:aws:iam::000000000:role/my-role",
"AllocationStrategy": "lowestPrice",
"TargetCapacity": int(target_capacity),
"SpotPrice": "0.052",
"ValidFrom": date_from.strftime('%Y-%m-%dT%H:%M:%SZ'),
"ValidUntil": date_to.strftime('%Y-%m-%dT%H:%M:%SZ'),
"TerminateInstancesWithExpiration": True,
"LaunchSpecifications": [
{
"ImageId": ami_id,
"InstanceType": "t3.small",
"KeyName": pemkey,
"SpotPrice": "0.0236",
"BlockDeviceMappings": [
{
"DeviceName": "/dev/sda1",
"Ebs": {
"DeleteOnTermination": True,
"VolumeType": "gp2",
"VolumeSize": 8,
"SnapshotId": ami_snapshot_id
}
}
],
"UserData": userdata,
"NetworkInterfaces": [
{
"DeviceIndex": 0,
"SubnetId": "subnet-0000000",
"DeleteOnTermination": True,
"Groups": [
"sg-0000000"
],
"AssociatePublicIpAddress": True
}
],
"TagSpecifications": [
{
"ResourceType": "instance",
"Tags": [
{
"Key": tag,
"Value": tag_value
}
]
}
]
}
],
"Type": "request"
}
)
“将CloudWatch日志添加到ec2实例或spot舰队”是什么意思?您想要什么日志记录?@JohnRotenstein,我希望能够从EC2实例中运行的脚本/应用程序将日志(打印语句、python日志记录等)推送到cloudwatch。我知道如何在ECS中配置cloudwatch awslogs组和awslogs区域,但我不知道如何通过boto3客户端进行配置。您需要这样做。