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 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package lightsail
import (
"context"
"fmt"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/aws-sdk-go-v2/service/lightsail/types"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
"time"
)
// Returns the log events of a container of your Amazon Lightsail container
// service.
//
// If your container service has more than one node (i.e., a scale greater than
// 1), then the log events that are returned for the specified container are merged
// from all nodes on your container service.
//
// Container logs are retained for a certain amount of time. For more information,
// see [Amazon Lightsail endpoints and quotas]in the Amazon Web Services General Reference.
//
// [Amazon Lightsail endpoints and quotas]: https://docs.aws.amazon.com/general/latest/gr/lightsail.html
func (c *Client) GetContainerLog(ctx context.Context, params *GetContainerLogInput, optFns ...func(*Options)) (*GetContainerLogOutput, error) {
if params == nil {
params = &GetContainerLogInput{}
}
result, metadata, err := c.invokeOperation(ctx, "GetContainerLog", params, optFns, c.addOperationGetContainerLogMiddlewares)
if err != nil {
return nil, err
}
out := result.(*GetContainerLogOutput)
out.ResultMetadata = metadata
return out, nil
}
type GetContainerLogInput struct {
// The name of the container that is either running or previously ran on the
// container service for which to return a log.
//
// This member is required.
ContainerName *string
// The name of the container service for which to get a container log.
//
// This member is required.
ServiceName *string
// The end of the time interval for which to get log data.
//
// Constraints:
//
// - Specified in Coordinated Universal Time (UTC).
//
// - Specified in the Unix time format.
//
// For example, if you wish to use an end time of October 1, 2018, at 9 PM UTC,
// specify 1538427600 as the end time.
//
// You can convert a human-friendly time to Unix time format using a converter
// like [Epoch converter].
//
// [Epoch converter]: https://www.epochconverter.com/
EndTime *time.Time
// The pattern to use to filter the returned log events to a specific term.
//
// The following are a few examples of filter patterns that you can specify:
//
// - To return all log events, specify a filter pattern of "" .
//
// - To exclude log events that contain the ERROR term, and return all other log
// events, specify a filter pattern of "-ERROR" .
//
// - To return log events that contain the ERROR term, specify a filter pattern
// of "ERROR" .
//
// - To return log events that contain both the ERROR and Exception terms,
// specify a filter pattern of "ERROR Exception" .
//
// - To return log events that contain the ERROR or the Exception term, specify a
// filter pattern of "?ERROR ?Exception" .
FilterPattern *string
// The token to advance to the next page of results from your request.
//
// To get a page token, perform an initial GetContainerLog request. If your
// results are paginated, the response will return a next page token that you can
// specify as the page token in a subsequent request.
PageToken *string
// The start of the time interval for which to get log data.
//
// Constraints:
//
// - Specified in Coordinated Universal Time (UTC).
//
// - Specified in the Unix time format.
//
// For example, if you wish to use a start time of October 1, 2018, at 8 PM UTC,
// specify 1538424000 as the start time.
//
// You can convert a human-friendly time to Unix time format using a converter
// like [Epoch converter].
//
// [Epoch converter]: https://www.epochconverter.com/
StartTime *time.Time
noSmithyDocumentSerde
}
type GetContainerLogOutput struct {
// An array of objects that describe the log events of a container.
LogEvents []types.ContainerServiceLogEvent
// The token to advance to the next page of results from your request.
//
// A next page token is not returned if there are no more results to display.
//
// To get the next page of results, perform another GetContainerLog request and
// specify the next page token using the pageToken parameter.
NextPageToken *string
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationGetContainerLogMiddlewares(stack *middleware.Stack, options Options) (err error) {
if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil {
return err
}
err = stack.Serialize.Add(&awsAwsjson11_serializeOpGetContainerLog{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpGetContainerLog{}, middleware.After)
if err != nil {
return err
}
if err := addProtocolFinalizerMiddlewares(stack, options, "GetContainerLog"); err != nil {
return fmt.Errorf("add protocol finalizers: %v", err)
}
if err = addlegacyEndpointContextSetter(stack, options); err != nil {
return err
}
if err = addSetLoggerMiddleware(stack, options); err != nil {
return err
}
if err = addClientRequestID(stack); err != nil {
return err
}
if err = addComputeContentLength(stack); err != nil {
return err
}
if err = addResolveEndpointMiddleware(stack, options); err != nil {
return err
}
if err = addComputePayloadSHA256(stack); err != nil {
return err
}
if err = addRetry(stack, options); err != nil {
return err
}
if err = addRawResponseToMetadata(stack); err != nil {
return err
}
if err = addRecordResponseTiming(stack); err != nil {
return err
}
if err = addClientUserAgent(stack, options); err != nil {
return err
}
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil {
return err
}
if err = addTimeOffsetBuild(stack, c); err != nil {
return err
}
if err = addUserAgentRetryMode(stack, options); err != nil {
return err
}
if err = addOpGetContainerLogValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetContainerLog(options.Region), middleware.Before); err != nil {
return err
}
if err = addRecursionDetection(stack); 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
}
if err = addDisableHTTPSMiddleware(stack, options); err != nil {
return err
}
return nil
}
func newServiceMetadataMiddleware_opGetContainerLog(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
OperationName: "GetContainerLog",
}
}
|