amazonka-cloudtrail-1.2.0.2: Amazon CloudTrail SDK.

Copyright(c) 2013-2015 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.CloudTrail

Contents

Description

AWS CloudTrail

This is the CloudTrail API Reference. It provides descriptions of actions, data types, common parameters, and common errors for CloudTrail.

CloudTrail is a web service that records AWS API calls for your AWS account and delivers log files to an Amazon S3 bucket. The recorded information includes the identity of the user, the start time of the AWS API call, the source IP address, the request parameters, and the response elements returned by the service.

As an alternative to using the API, you can use one of the AWS SDKs, which consist of libraries and sample code for various programming languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide a convenient way to create programmatic access to AWSCloudTrail. For example, the SDKs take care of cryptographically signing requests, managing errors, and retrying requests automatically. For information about the AWS SDKs, including how to download and install them, see the Tools for Amazon Web Services page.

See the CloudTrail User Guide for information about the data that is included with each AWS API call listed in the log files.

See: AWS API Reference

Synopsis

Service Configuration

cloudTrail :: Service Source

API version '2013-11-01' of the Amazon CloudTrail SDK configuration.

Errors

Error matchers are designed for use with the functions provided by Control.Exception.Lens. This allows catching (and rethrowing) service specific errors returned by CloudTrail.

InvalidTimeRangeException

_InvalidTimeRangeException :: AsError a => Getting (First ServiceError) a ServiceError Source

Occurs if the timestamp values are invalid. Either the start time occurs after the end time or the time range is outside the range of possible values.

InsufficientS3BucketPolicyException

_InsufficientS3BucketPolicyException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the policy on the S3 bucket is not sufficient.

MaximumNumberOfTrailsExceededException

_MaximumNumberOfTrailsExceededException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the maximum number of trails is reached.

InsufficientSNSTopicPolicyException

_InsufficientSNSTopicPolicyException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the policy on the SNS topic is not sufficient.

InvalidCloudWatchLogsRoleARNException

_InvalidCloudWatchLogsRoleARNException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the provided role is not valid.

InvalidTrailNameException

_InvalidTrailNameException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the provided trail name is not valid.

InvalidLookupAttributesException

_InvalidLookupAttributesException :: AsError a => Getting (First ServiceError) a ServiceError Source

Occurs when an invalid lookup attribute is specified.

TrailNotFoundException

_TrailNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the trail with the given name is not found.

CloudWatchLogsDeliveryUnavailableException

_CloudWatchLogsDeliveryUnavailableException :: AsError a => Getting (First ServiceError) a ServiceError Source

Cannot set a CloudWatch Logs delivery for this region.

InvalidSNSTopicNameException

_InvalidSNSTopicNameException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the provided SNS topic name is not valid.

InvalidCloudWatchLogsLogGroupARNException

_InvalidCloudWatchLogsLogGroupARNException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the provided CloudWatch log group is not valid.

InvalidS3BucketNameException

_InvalidS3BucketNameException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the provided S3 bucket name is not valid.

InvalidNextTokenException

_InvalidNextTokenException :: AsError a => Getting (First ServiceError) a ServiceError Source

Invalid token or token that was previously used in a request with different parameters. This exception is thrown if the token is invalid.

S3BucketDoesNotExistException

_S3BucketDoesNotExistException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the specified S3 bucket does not exist.

InvalidMaxResultsException

_InvalidMaxResultsException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown if the limit specified is invalid.

TrailAlreadyExistsException

_TrailAlreadyExistsException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the specified trail already exists.

InvalidS3PrefixException

_InvalidS3PrefixException :: AsError a => Getting (First ServiceError) a ServiceError Source

This exception is thrown when the provided S3 prefix is not valid.

Waiters

Waiters poll by repeatedly sending a request until some remote success condition configured by the Wait specification is fulfilled. The Wait specification determines how many attempts should be made, in addition to delay and retry strategies.

Operations

Some AWS operations return results that are incomplete and require subsequent requests in order to obtain the entire result set. The process of sending subsequent requests to continue where a previous request left off is called pagination. For example, the ListObjects operation of Amazon S3 returns up to 1000 objects at a time, and you must send subsequent requests with the appropriate Marker in order to retrieve the next page of results.

Operations that have an AWSPager instance can transparently perform subsequent requests, correctly setting Markers and other request facets to iterate through the entire result set of a truncated API operation. Operations which support this have an additional note in the documentation.

Many operations have the ability to filter results on the server side. See the individual operation parameters for details.

DescribeTrails

LookupEvents

StopLogging

DeleteTrail

UpdateTrail

CreateTrail

GetTrailStatus

StartLogging

Types

LookupAttributeKey

Event

data Event Source

Contains information about an event that was returned by a lookup request. The result includes a representation of a CloudTrail event.

See: event smart constructor.

event :: Event Source

Creates a value of Event with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

eUsername :: Lens' Event (Maybe Text) Source

A user name or role name of the requester that called the API in the event returned.

eEventTime :: Lens' Event (Maybe UTCTime) Source

The date and time of the event returned.

eResources :: Lens' Event [Resource] Source

A list of resources referenced by the event returned.

eCloudTrailEvent :: Lens' Event (Maybe Text) Source

A JSON string that contains a representation of the event returned.

eEventName :: Lens' Event (Maybe Text) Source

The name of the event returned.

eEventId :: Lens' Event (Maybe Text) Source

The CloudTrail ID of the event returned.

LookupAttribute

data LookupAttribute Source

Specifies an attribute and value that filter the events returned.

See: lookupAttribute smart constructor.

lookupAttribute Source

Creates a value of LookupAttribute with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

laAttributeKey :: Lens' LookupAttribute LookupAttributeKey Source

Specifies an attribute on which to filter the events returned.

laAttributeValue :: Lens' LookupAttribute Text Source

Specifies a value for the specified AttributeKey.

Resource

data Resource Source

Specifies the type and name of a resource referenced by an event.

See: resource smart constructor.

resource :: Resource Source

Creates a value of Resource with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

rResourceType :: Lens' Resource (Maybe Text) Source

The type of a resource referenced by the event returned. When the resource type cannot be determined, null is returned. Some examples of resource types are: Instance for EC2, Trail for CloudTrail, DBInstance for RDS, and AccessKey for IAM. For a list of resource types supported for event lookup, see Resource Types Supported for Event Lookup.

rResourceName :: Lens' Resource (Maybe Text) Source

The name of the resource referenced by the event returned. These are user-created names whose values will depend on the environment. For example, the resource name might be "auto-scaling-test-group" for an Auto Scaling Group or "i-1234567" for an EC2 Instance.

Trail

data Trail Source

The settings for a trail.

See: trail smart constructor.

trail :: Trail Source

Creates a value of Trail with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

tS3KeyPrefix :: Lens' Trail (Maybe Text) Source

Value of the Amazon S3 prefix.

tSNSTopicName :: Lens' Trail (Maybe Text) Source

Name of the existing Amazon SNS topic that CloudTrail uses to notify the account owner when new CloudTrail log files have been delivered.

tCloudWatchLogsLogGroupARN :: Lens' Trail (Maybe Text) Source

Specifies an Amazon Resource Name (ARN), a unique identifier that represents the log group to which CloudTrail logs will be delivered.

tName :: Lens' Trail (Maybe Text) Source

Name of the trail set by calling CreateTrail.

tIncludeGlobalServiceEvents :: Lens' Trail (Maybe Bool) Source

Set to True to include AWS API calls from AWS global services such as IAM. Otherwise, False.

tCloudWatchLogsRoleARN :: Lens' Trail (Maybe Text) Source

Specifies the role for the CloudWatch Logs endpoint to assume to write to a user’s log group.

tS3BucketName :: Lens' Trail (Maybe Text) Source

Name of the Amazon S3 bucket into which CloudTrail delivers your trail files.