1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package cloudtrail
import (
"context"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
"time"
)
// Returns a JSON-formatted list of information about the specified trail. Fields
// include information on delivery errors, Amazon SNS and Amazon S3 errors, and
// start and stop logging times for each trail. This operation returns trail status
// from a single region. To return trail status from all regions, you must call the
// operation on each region.
func (c *Client) GetTrailStatus(ctx context.Context, params *GetTrailStatusInput, optFns ...func(*Options)) (*GetTrailStatusOutput, error) {
if params == nil {
params = &GetTrailStatusInput{}
}
result, metadata, err := c.invokeOperation(ctx, "GetTrailStatus", params, optFns, c.addOperationGetTrailStatusMiddlewares)
if err != nil {
return nil, err
}
out := result.(*GetTrailStatusOutput)
out.ResultMetadata = metadata
return out, nil
}
// The name of a trail about which you want the current status.
type GetTrailStatusInput struct {
// Specifies the name or the CloudTrail ARN of the trail for which you are
// requesting status. To get the status of a shadow trail (a replication of the
// trail in another region), you must specify its ARN. The following is the format
// of a trail ARN. arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
//
// This member is required.
Name *string
noSmithyDocumentSerde
}
// Returns the objects or data listed below if successful. Otherwise, returns an
// error.
type GetTrailStatusOutput struct {
// Whether the CloudTrail trail is currently logging Amazon Web Services API calls.
IsLogging *bool
// Displays any CloudWatch Logs error that CloudTrail encountered when attempting
// to deliver logs to CloudWatch Logs.
LatestCloudWatchLogsDeliveryError *string
// Displays the most recent date and time when CloudTrail delivered logs to
// CloudWatch Logs.
LatestCloudWatchLogsDeliveryTime *time.Time
// This field is no longer in use.
LatestDeliveryAttemptSucceeded *string
// This field is no longer in use.
LatestDeliveryAttemptTime *string
// Displays any Amazon S3 error that CloudTrail encountered when attempting to
// deliver log files to the designated bucket. For more information, see Error
// Responses (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html)
// in the Amazon S3 API Reference. This error occurs only when there is a problem
// with the destination S3 bucket, and does not occur for requests that time out.
// To resolve the issue, create a new bucket, and then call UpdateTrail to specify
// the new bucket; or fix the existing objects so that CloudTrail can again write
// to the bucket.
LatestDeliveryError *string
// Specifies the date and time that CloudTrail last delivered log files to an
// account's Amazon S3 bucket.
LatestDeliveryTime *time.Time
// Displays any Amazon S3 error that CloudTrail encountered when attempting to
// deliver a digest file to the designated bucket. For more information, see Error
// Responses (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html)
// in the Amazon S3 API Reference. This error occurs only when there is a problem
// with the destination S3 bucket, and does not occur for requests that time out.
// To resolve the issue, create a new bucket, and then call UpdateTrail to specify
// the new bucket; or fix the existing objects so that CloudTrail can again write
// to the bucket.
LatestDigestDeliveryError *string
// Specifies the date and time that CloudTrail last delivered a digest file to an
// account's Amazon S3 bucket.
LatestDigestDeliveryTime *time.Time
// This field is no longer in use.
LatestNotificationAttemptSucceeded *string
// This field is no longer in use.
LatestNotificationAttemptTime *string
// Displays any Amazon SNS error that CloudTrail encountered when attempting to
// send a notification. For more information about Amazon SNS errors, see the
// Amazon SNS Developer Guide
// (https://docs.aws.amazon.com/sns/latest/dg/welcome.html).
LatestNotificationError *string
// Specifies the date and time of the most recent Amazon SNS notification that
// CloudTrail has written a new log file to an account's Amazon S3 bucket.
LatestNotificationTime *time.Time
// Specifies the most recent date and time when CloudTrail started recording API
// calls for an Amazon Web Services account.
StartLoggingTime *time.Time
// Specifies the most recent date and time when CloudTrail stopped recording API
// calls for an Amazon Web Services account.
StopLoggingTime *time.Time
// This field is no longer in use.
TimeLoggingStarted *string
// This field is no longer in use.
TimeLoggingStopped *string
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationGetTrailStatusMiddlewares(stack *middleware.Stack, options Options) (err error) {
err = stack.Serialize.Add(&awsAwsjson11_serializeOpGetTrailStatus{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpGetTrailStatus{}, middleware.After)
if err != nil {
return err
}
if err = addSetLoggerMiddleware(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
return err
}
if err = addResolveEndpointMiddleware(stack, options); err != nil {
return err
}
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
return err
}
if err = addRetryMiddlewares(stack, options); err != nil {
return err
}
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
return err
}
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
return err
}
if err = addClientUserAgent(stack); err != nil {
return err
}
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = addOpGetTrailStatusValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetTrailStatus(options.Region), middleware.Before); err != nil {
return err
}
if err = addRequestIDRetrieverMiddleware(stack); err != nil {
return err
}
if err = addResponseErrorMiddleware(stack); err != nil {
return err
}
if err = addRequestResponseLogging(stack, options); err != nil {
return err
}
return nil
}
func newServiceMetadataMiddleware_opGetTrailStatus(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
SigningName: "cloudtrail",
OperationName: "GetTrailStatus",
}
}
|