2015/07/28 - Amazon CloudWatch Logs - 4 new api methods
Creates or updates a Destination. A destination encapsulates a physical resource (such as a Kinesis stream) and allows you to subscribe to a real-time stream of log events of a different account, ingested through PutLogEvents requests. Currently, the only supported physical resource is a Amazon Kinesis stream belonging to the same account as the destination.
A destination controls what is written to its Amazon Kinesis stream through an access policy. By default, PutDestination does not set any access policy with the destination, which means a cross-account user will not be able to call PutSubscriptionFilter against this destination. To enable that, the destination owner must call PutDestinationPolicy after PutDestination.
Request Syntax
client.put_destination( destinationName='string', targetArn='string', roleArn='string' )
string
[REQUIRED]
A name for the destination.
string
[REQUIRED]
The ARN of an Amazon Kinesis stream to deliver matching log events to.
string
[REQUIRED]
The ARN of an IAM role that grants Amazon CloudWatch Logs permissions to do Amazon Kinesis PutRecord requests on the desitnation stream.
dict
Response Syntax
{ 'destination': { 'destinationName': 'string', 'targetArn': 'string', 'roleArn': 'string', 'accessPolicy': 'string', 'arn': 'string', 'creationTime': 123 } }
Response Structure
(dict) --
destination (dict) --
destinationName (string) --
targetArn (string) --
roleArn (string) --
accessPolicy (string) --
arn (string) --
creationTime (integer) --
A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC.
Returns all the destinations that are associated with the AWS account making the request. The list returned in the response is ASCII-sorted by destination name.
By default, this operation returns up to 50 destinations. If there are more destinations to list, the response would contain a nextToken value in the response body. You can also limit the number of destinations returned in the response by specifying the limit parameter in the request.
Request Syntax
client.describe_destinations( DestinationNamePrefix='string', nextToken='string', limit=123 )
string
Will only return destinations that match the provided destinationNamePrefix. If you don't specify a value, no prefix is applied.
string
A string token used for pagination that points to the next page of results. It must be a value obtained from the response of the previous request. The token expires after 24 hours.
integer
The maximum number of results to return.
dict
Response Syntax
{ 'destinations': [ { 'destinationName': 'string', 'targetArn': 'string', 'roleArn': 'string', 'accessPolicy': 'string', 'arn': 'string', 'creationTime': 123 }, ], 'nextToken': 'string' }
Response Structure
(dict) --
destinations (list) --
(dict) --
destinationName (string) --
targetArn (string) --
roleArn (string) --
accessPolicy (string) --
arn (string) --
creationTime (integer) --
A point in time expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC.
nextToken (string) --
A string token used for pagination that points to the next page of results. It must be a value obtained from the response of the previous request. The token expires after 24 hours.
Deletes the destination with the specified name and eventually disables all the subscription filters that publish to it. This will not delete the physical resource encapsulated by the destination.
Request Syntax
client.delete_destination( destinationName='string' )
string
[REQUIRED]
The name of destination to delete.
None
Creates or updates an access policy associated with an existing Destination. An access policy is an IAM policy document that is used to authorize claims to register a subscription filter against a given destination.
Request Syntax
client.put_destination_policy( destinationName='string', accessPolicy='string' )
string
[REQUIRED]
A name for an existing destination.
string
[REQUIRED]
An IAM policy document that authorizes cross-account users to deliver their log events to associated destination.
None