Creates a data feed for Spot Instances, enabling you to view Spot Instance usage logs. You can create one data feed per Amazon Web Services account. For more information, see Spot Instance data feed in the Amazon EC2 User Guide.
Parameters:
-
dry_run
(Optional[Boolean], default:
None
)
–
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
-
bucket
(Optional[String], default:
None
)
–
The name of the Amazon S3 bucket in which to store the Spot Instance data feed. For more information about bucket names, see Bucket naming rules in the Amazon S3 User Guide.
-
prefix
(Optional[String], default:
None
)
–
The prefix for the data feed file names.
Raises:
Examples:
To create a Spot Instance datafeed
This example creates a Spot Instance data feed for your AWS account.
>>> client.create_spot_datafeed_subscription(bucket='my-s3-bucket', prefix='spotdata')
Source code in docs_src/capo_ec2/_services/ec2.py
| def create_spot_datafeed_subscription(
self,
*,
config_overrides: Optional[EC2ClientConfig] = None,
dry_run: Optional["capo_ec2.types.boolean.Boolean"] = None,
bucket: Optional["capo_ec2.types.string.String"] = None,
prefix: Optional["capo_ec2.types.string.String"] = None,
) -> "capo_ec2.types.create_spot_datafeed_subscription_result.CreateSpotDatafeedSubscriptionResult":
"""<p>Creates a data feed for Spot Instances, enabling you to view Spot Instance usage logs. You can create one data feed per Amazon Web Services account. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-data-feeds.html">Spot Instance data feed</a> in the <i>Amazon EC2 User Guide</i>.</p>
Args:
dry_run: <p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
bucket: <p>The name of the Amazon S3 bucket in which to store the Spot Instance data feed. For more information about bucket names, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html">Bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p>
prefix: <p>The prefix for the data feed file names.</p>
Raises:
capo_ec2.errors.UnknownServiceError: The service returned an error code this client does not model.
Examples:
To create a Spot Instance datafeed
This example creates a Spot Instance data feed for your AWS account.
>>> client.create_spot_datafeed_subscription(bucket='my-s3-bucket', prefix='spotdata')
"""
def _handler(
req: "OperationRequest[capo_ec2.types.create_spot_datafeed_subscription_request.CreateSpotDatafeedSubscriptionRequest]",
) -> OperationResponse[
"capo_ec2.types.create_spot_datafeed_subscription_result.CreateSpotDatafeedSubscriptionResult"
]:
import capo_ec2._operations.amazon_ec2.create_spot_datafeed_subscription
output, http_response = (
capo_ec2._operations.amazon_ec2.create_spot_datafeed_subscription.create_spot_datafeed_subscription(
req.options, req.input
)
)
return OperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("CreateSpotDatafeedSubscription")
)
input_: capo_ec2.types.create_spot_datafeed_subscription_request.CreateSpotDatafeedSubscriptionRequest = {}
if dry_run is not None:
input_["dry_run"] = dry_run
if bucket is not None:
input_["bucket"] = bucket
if prefix is not None:
input_["prefix"] = prefix
response = execute_pipeline(
OperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
response.response.close()
return response.output
|