github.com/aavshr/aws-sdk-go@v1.41.3/service/applicationinsights/api.go (about)

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package applicationinsights
     4  
     5  import (
     6  	"fmt"
     7  	"time"
     8  
     9  	"github.com/aavshr/aws-sdk-go/aws"
    10  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    11  	"github.com/aavshr/aws-sdk-go/aws/request"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol"
    13  	"github.com/aavshr/aws-sdk-go/private/protocol/jsonrpc"
    14  )
    15  
    16  const opCreateApplication = "CreateApplication"
    17  
    18  // CreateApplicationRequest generates a "aws/request.Request" representing the
    19  // client's request for the CreateApplication operation. The "output" return
    20  // value will be populated with the request's response once the request completes
    21  // successfully.
    22  //
    23  // Use "Send" method on the returned Request to send the API call to the service.
    24  // the "output" return value is not valid until after Send returns without error.
    25  //
    26  // See CreateApplication for more information on using the CreateApplication
    27  // API call, and error handling.
    28  //
    29  // This method is useful when you want to inject custom logic or configuration
    30  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    31  //
    32  //
    33  //    // Example sending a request using the CreateApplicationRequest method.
    34  //    req, resp := client.CreateApplicationRequest(params)
    35  //
    36  //    err := req.Send()
    37  //    if err == nil { // resp is now filled
    38  //        fmt.Println(resp)
    39  //    }
    40  //
    41  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/CreateApplication
    42  func (c *ApplicationInsights) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *CreateApplicationOutput) {
    43  	op := &request.Operation{
    44  		Name:       opCreateApplication,
    45  		HTTPMethod: "POST",
    46  		HTTPPath:   "/",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &CreateApplicationInput{}
    51  	}
    52  
    53  	output = &CreateApplicationOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	return
    56  }
    57  
    58  // CreateApplication API operation for Amazon CloudWatch Application Insights.
    59  //
    60  // Adds an application that is created from a resource group.
    61  //
    62  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    63  // with awserr.Error's Code and Message methods to get detailed information about
    64  // the error.
    65  //
    66  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
    67  // API operation CreateApplication for usage and error information.
    68  //
    69  // Returned Error Types:
    70  //   * ResourceInUseException
    71  //   The resource is already created or in use.
    72  //
    73  //   * ResourceNotFoundException
    74  //   The resource does not exist in the customer account.
    75  //
    76  //   * ValidationException
    77  //   The parameter is not valid.
    78  //
    79  //   * InternalServerException
    80  //   The server encountered an internal error and is unable to complete the request.
    81  //
    82  //   * TagsAlreadyExistException
    83  //   Tags are already registered for the specified application ARN.
    84  //
    85  //   * AccessDeniedException
    86  //   User does not have permissions to perform this action.
    87  //
    88  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/CreateApplication
    89  func (c *ApplicationInsights) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) {
    90  	req, out := c.CreateApplicationRequest(input)
    91  	return out, req.Send()
    92  }
    93  
    94  // CreateApplicationWithContext is the same as CreateApplication with the addition of
    95  // the ability to pass a context and additional request options.
    96  //
    97  // See CreateApplication for details on how to use this API operation.
    98  //
    99  // The context must be non-nil and will be used for request cancellation. If
   100  // the context is nil a panic will occur. In the future the SDK may create
   101  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   102  // for more information on using Contexts.
   103  func (c *ApplicationInsights) CreateApplicationWithContext(ctx aws.Context, input *CreateApplicationInput, opts ...request.Option) (*CreateApplicationOutput, error) {
   104  	req, out := c.CreateApplicationRequest(input)
   105  	req.SetContext(ctx)
   106  	req.ApplyOptions(opts...)
   107  	return out, req.Send()
   108  }
   109  
   110  const opCreateComponent = "CreateComponent"
   111  
   112  // CreateComponentRequest generates a "aws/request.Request" representing the
   113  // client's request for the CreateComponent operation. The "output" return
   114  // value will be populated with the request's response once the request completes
   115  // successfully.
   116  //
   117  // Use "Send" method on the returned Request to send the API call to the service.
   118  // the "output" return value is not valid until after Send returns without error.
   119  //
   120  // See CreateComponent for more information on using the CreateComponent
   121  // API call, and error handling.
   122  //
   123  // This method is useful when you want to inject custom logic or configuration
   124  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   125  //
   126  //
   127  //    // Example sending a request using the CreateComponentRequest method.
   128  //    req, resp := client.CreateComponentRequest(params)
   129  //
   130  //    err := req.Send()
   131  //    if err == nil { // resp is now filled
   132  //        fmt.Println(resp)
   133  //    }
   134  //
   135  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/CreateComponent
   136  func (c *ApplicationInsights) CreateComponentRequest(input *CreateComponentInput) (req *request.Request, output *CreateComponentOutput) {
   137  	op := &request.Operation{
   138  		Name:       opCreateComponent,
   139  		HTTPMethod: "POST",
   140  		HTTPPath:   "/",
   141  	}
   142  
   143  	if input == nil {
   144  		input = &CreateComponentInput{}
   145  	}
   146  
   147  	output = &CreateComponentOutput{}
   148  	req = c.newRequest(op, input, output)
   149  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   150  	return
   151  }
   152  
   153  // CreateComponent API operation for Amazon CloudWatch Application Insights.
   154  //
   155  // Creates a custom component by grouping similar standalone instances to monitor.
   156  //
   157  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   158  // with awserr.Error's Code and Message methods to get detailed information about
   159  // the error.
   160  //
   161  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   162  // API operation CreateComponent for usage and error information.
   163  //
   164  // Returned Error Types:
   165  //   * ResourceInUseException
   166  //   The resource is already created or in use.
   167  //
   168  //   * ResourceNotFoundException
   169  //   The resource does not exist in the customer account.
   170  //
   171  //   * ValidationException
   172  //   The parameter is not valid.
   173  //
   174  //   * InternalServerException
   175  //   The server encountered an internal error and is unable to complete the request.
   176  //
   177  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/CreateComponent
   178  func (c *ApplicationInsights) CreateComponent(input *CreateComponentInput) (*CreateComponentOutput, error) {
   179  	req, out := c.CreateComponentRequest(input)
   180  	return out, req.Send()
   181  }
   182  
   183  // CreateComponentWithContext is the same as CreateComponent with the addition of
   184  // the ability to pass a context and additional request options.
   185  //
   186  // See CreateComponent for details on how to use this API operation.
   187  //
   188  // The context must be non-nil and will be used for request cancellation. If
   189  // the context is nil a panic will occur. In the future the SDK may create
   190  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   191  // for more information on using Contexts.
   192  func (c *ApplicationInsights) CreateComponentWithContext(ctx aws.Context, input *CreateComponentInput, opts ...request.Option) (*CreateComponentOutput, error) {
   193  	req, out := c.CreateComponentRequest(input)
   194  	req.SetContext(ctx)
   195  	req.ApplyOptions(opts...)
   196  	return out, req.Send()
   197  }
   198  
   199  const opCreateLogPattern = "CreateLogPattern"
   200  
   201  // CreateLogPatternRequest generates a "aws/request.Request" representing the
   202  // client's request for the CreateLogPattern operation. The "output" return
   203  // value will be populated with the request's response once the request completes
   204  // successfully.
   205  //
   206  // Use "Send" method on the returned Request to send the API call to the service.
   207  // the "output" return value is not valid until after Send returns without error.
   208  //
   209  // See CreateLogPattern for more information on using the CreateLogPattern
   210  // API call, and error handling.
   211  //
   212  // This method is useful when you want to inject custom logic or configuration
   213  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   214  //
   215  //
   216  //    // Example sending a request using the CreateLogPatternRequest method.
   217  //    req, resp := client.CreateLogPatternRequest(params)
   218  //
   219  //    err := req.Send()
   220  //    if err == nil { // resp is now filled
   221  //        fmt.Println(resp)
   222  //    }
   223  //
   224  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/CreateLogPattern
   225  func (c *ApplicationInsights) CreateLogPatternRequest(input *CreateLogPatternInput) (req *request.Request, output *CreateLogPatternOutput) {
   226  	op := &request.Operation{
   227  		Name:       opCreateLogPattern,
   228  		HTTPMethod: "POST",
   229  		HTTPPath:   "/",
   230  	}
   231  
   232  	if input == nil {
   233  		input = &CreateLogPatternInput{}
   234  	}
   235  
   236  	output = &CreateLogPatternOutput{}
   237  	req = c.newRequest(op, input, output)
   238  	return
   239  }
   240  
   241  // CreateLogPattern API operation for Amazon CloudWatch Application Insights.
   242  //
   243  // Adds an log pattern to a LogPatternSet.
   244  //
   245  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   246  // with awserr.Error's Code and Message methods to get detailed information about
   247  // the error.
   248  //
   249  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   250  // API operation CreateLogPattern for usage and error information.
   251  //
   252  // Returned Error Types:
   253  //   * ResourceInUseException
   254  //   The resource is already created or in use.
   255  //
   256  //   * ResourceNotFoundException
   257  //   The resource does not exist in the customer account.
   258  //
   259  //   * ValidationException
   260  //   The parameter is not valid.
   261  //
   262  //   * InternalServerException
   263  //   The server encountered an internal error and is unable to complete the request.
   264  //
   265  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/CreateLogPattern
   266  func (c *ApplicationInsights) CreateLogPattern(input *CreateLogPatternInput) (*CreateLogPatternOutput, error) {
   267  	req, out := c.CreateLogPatternRequest(input)
   268  	return out, req.Send()
   269  }
   270  
   271  // CreateLogPatternWithContext is the same as CreateLogPattern with the addition of
   272  // the ability to pass a context and additional request options.
   273  //
   274  // See CreateLogPattern for details on how to use this API operation.
   275  //
   276  // The context must be non-nil and will be used for request cancellation. If
   277  // the context is nil a panic will occur. In the future the SDK may create
   278  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   279  // for more information on using Contexts.
   280  func (c *ApplicationInsights) CreateLogPatternWithContext(ctx aws.Context, input *CreateLogPatternInput, opts ...request.Option) (*CreateLogPatternOutput, error) {
   281  	req, out := c.CreateLogPatternRequest(input)
   282  	req.SetContext(ctx)
   283  	req.ApplyOptions(opts...)
   284  	return out, req.Send()
   285  }
   286  
   287  const opDeleteApplication = "DeleteApplication"
   288  
   289  // DeleteApplicationRequest generates a "aws/request.Request" representing the
   290  // client's request for the DeleteApplication operation. The "output" return
   291  // value will be populated with the request's response once the request completes
   292  // successfully.
   293  //
   294  // Use "Send" method on the returned Request to send the API call to the service.
   295  // the "output" return value is not valid until after Send returns without error.
   296  //
   297  // See DeleteApplication for more information on using the DeleteApplication
   298  // API call, and error handling.
   299  //
   300  // This method is useful when you want to inject custom logic or configuration
   301  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   302  //
   303  //
   304  //    // Example sending a request using the DeleteApplicationRequest method.
   305  //    req, resp := client.DeleteApplicationRequest(params)
   306  //
   307  //    err := req.Send()
   308  //    if err == nil { // resp is now filled
   309  //        fmt.Println(resp)
   310  //    }
   311  //
   312  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DeleteApplication
   313  func (c *ApplicationInsights) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) {
   314  	op := &request.Operation{
   315  		Name:       opDeleteApplication,
   316  		HTTPMethod: "POST",
   317  		HTTPPath:   "/",
   318  	}
   319  
   320  	if input == nil {
   321  		input = &DeleteApplicationInput{}
   322  	}
   323  
   324  	output = &DeleteApplicationOutput{}
   325  	req = c.newRequest(op, input, output)
   326  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   327  	return
   328  }
   329  
   330  // DeleteApplication API operation for Amazon CloudWatch Application Insights.
   331  //
   332  // Removes the specified application from monitoring. Does not delete the application.
   333  //
   334  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   335  // with awserr.Error's Code and Message methods to get detailed information about
   336  // the error.
   337  //
   338  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   339  // API operation DeleteApplication for usage and error information.
   340  //
   341  // Returned Error Types:
   342  //   * ResourceNotFoundException
   343  //   The resource does not exist in the customer account.
   344  //
   345  //   * ValidationException
   346  //   The parameter is not valid.
   347  //
   348  //   * BadRequestException
   349  //   The request is not understood by the server.
   350  //
   351  //   * InternalServerException
   352  //   The server encountered an internal error and is unable to complete the request.
   353  //
   354  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DeleteApplication
   355  func (c *ApplicationInsights) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) {
   356  	req, out := c.DeleteApplicationRequest(input)
   357  	return out, req.Send()
   358  }
   359  
   360  // DeleteApplicationWithContext is the same as DeleteApplication with the addition of
   361  // the ability to pass a context and additional request options.
   362  //
   363  // See DeleteApplication for details on how to use this API operation.
   364  //
   365  // The context must be non-nil and will be used for request cancellation. If
   366  // the context is nil a panic will occur. In the future the SDK may create
   367  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   368  // for more information on using Contexts.
   369  func (c *ApplicationInsights) DeleteApplicationWithContext(ctx aws.Context, input *DeleteApplicationInput, opts ...request.Option) (*DeleteApplicationOutput, error) {
   370  	req, out := c.DeleteApplicationRequest(input)
   371  	req.SetContext(ctx)
   372  	req.ApplyOptions(opts...)
   373  	return out, req.Send()
   374  }
   375  
   376  const opDeleteComponent = "DeleteComponent"
   377  
   378  // DeleteComponentRequest generates a "aws/request.Request" representing the
   379  // client's request for the DeleteComponent operation. The "output" return
   380  // value will be populated with the request's response once the request completes
   381  // successfully.
   382  //
   383  // Use "Send" method on the returned Request to send the API call to the service.
   384  // the "output" return value is not valid until after Send returns without error.
   385  //
   386  // See DeleteComponent for more information on using the DeleteComponent
   387  // API call, and error handling.
   388  //
   389  // This method is useful when you want to inject custom logic or configuration
   390  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   391  //
   392  //
   393  //    // Example sending a request using the DeleteComponentRequest method.
   394  //    req, resp := client.DeleteComponentRequest(params)
   395  //
   396  //    err := req.Send()
   397  //    if err == nil { // resp is now filled
   398  //        fmt.Println(resp)
   399  //    }
   400  //
   401  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DeleteComponent
   402  func (c *ApplicationInsights) DeleteComponentRequest(input *DeleteComponentInput) (req *request.Request, output *DeleteComponentOutput) {
   403  	op := &request.Operation{
   404  		Name:       opDeleteComponent,
   405  		HTTPMethod: "POST",
   406  		HTTPPath:   "/",
   407  	}
   408  
   409  	if input == nil {
   410  		input = &DeleteComponentInput{}
   411  	}
   412  
   413  	output = &DeleteComponentOutput{}
   414  	req = c.newRequest(op, input, output)
   415  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   416  	return
   417  }
   418  
   419  // DeleteComponent API operation for Amazon CloudWatch Application Insights.
   420  //
   421  // Ungroups a custom component. When you ungroup custom components, all applicable
   422  // monitors that are set up for the component are removed and the instances
   423  // revert to their standalone status.
   424  //
   425  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   426  // with awserr.Error's Code and Message methods to get detailed information about
   427  // the error.
   428  //
   429  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   430  // API operation DeleteComponent for usage and error information.
   431  //
   432  // Returned Error Types:
   433  //   * ResourceNotFoundException
   434  //   The resource does not exist in the customer account.
   435  //
   436  //   * ValidationException
   437  //   The parameter is not valid.
   438  //
   439  //   * InternalServerException
   440  //   The server encountered an internal error and is unable to complete the request.
   441  //
   442  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DeleteComponent
   443  func (c *ApplicationInsights) DeleteComponent(input *DeleteComponentInput) (*DeleteComponentOutput, error) {
   444  	req, out := c.DeleteComponentRequest(input)
   445  	return out, req.Send()
   446  }
   447  
   448  // DeleteComponentWithContext is the same as DeleteComponent with the addition of
   449  // the ability to pass a context and additional request options.
   450  //
   451  // See DeleteComponent for details on how to use this API operation.
   452  //
   453  // The context must be non-nil and will be used for request cancellation. If
   454  // the context is nil a panic will occur. In the future the SDK may create
   455  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   456  // for more information on using Contexts.
   457  func (c *ApplicationInsights) DeleteComponentWithContext(ctx aws.Context, input *DeleteComponentInput, opts ...request.Option) (*DeleteComponentOutput, error) {
   458  	req, out := c.DeleteComponentRequest(input)
   459  	req.SetContext(ctx)
   460  	req.ApplyOptions(opts...)
   461  	return out, req.Send()
   462  }
   463  
   464  const opDeleteLogPattern = "DeleteLogPattern"
   465  
   466  // DeleteLogPatternRequest generates a "aws/request.Request" representing the
   467  // client's request for the DeleteLogPattern operation. The "output" return
   468  // value will be populated with the request's response once the request completes
   469  // successfully.
   470  //
   471  // Use "Send" method on the returned Request to send the API call to the service.
   472  // the "output" return value is not valid until after Send returns without error.
   473  //
   474  // See DeleteLogPattern for more information on using the DeleteLogPattern
   475  // API call, and error handling.
   476  //
   477  // This method is useful when you want to inject custom logic or configuration
   478  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   479  //
   480  //
   481  //    // Example sending a request using the DeleteLogPatternRequest method.
   482  //    req, resp := client.DeleteLogPatternRequest(params)
   483  //
   484  //    err := req.Send()
   485  //    if err == nil { // resp is now filled
   486  //        fmt.Println(resp)
   487  //    }
   488  //
   489  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DeleteLogPattern
   490  func (c *ApplicationInsights) DeleteLogPatternRequest(input *DeleteLogPatternInput) (req *request.Request, output *DeleteLogPatternOutput) {
   491  	op := &request.Operation{
   492  		Name:       opDeleteLogPattern,
   493  		HTTPMethod: "POST",
   494  		HTTPPath:   "/",
   495  	}
   496  
   497  	if input == nil {
   498  		input = &DeleteLogPatternInput{}
   499  	}
   500  
   501  	output = &DeleteLogPatternOutput{}
   502  	req = c.newRequest(op, input, output)
   503  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   504  	return
   505  }
   506  
   507  // DeleteLogPattern API operation for Amazon CloudWatch Application Insights.
   508  //
   509  // Removes the specified log pattern from a LogPatternSet.
   510  //
   511  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   512  // with awserr.Error's Code and Message methods to get detailed information about
   513  // the error.
   514  //
   515  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   516  // API operation DeleteLogPattern for usage and error information.
   517  //
   518  // Returned Error Types:
   519  //   * ResourceNotFoundException
   520  //   The resource does not exist in the customer account.
   521  //
   522  //   * ValidationException
   523  //   The parameter is not valid.
   524  //
   525  //   * BadRequestException
   526  //   The request is not understood by the server.
   527  //
   528  //   * InternalServerException
   529  //   The server encountered an internal error and is unable to complete the request.
   530  //
   531  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DeleteLogPattern
   532  func (c *ApplicationInsights) DeleteLogPattern(input *DeleteLogPatternInput) (*DeleteLogPatternOutput, error) {
   533  	req, out := c.DeleteLogPatternRequest(input)
   534  	return out, req.Send()
   535  }
   536  
   537  // DeleteLogPatternWithContext is the same as DeleteLogPattern with the addition of
   538  // the ability to pass a context and additional request options.
   539  //
   540  // See DeleteLogPattern for details on how to use this API operation.
   541  //
   542  // The context must be non-nil and will be used for request cancellation. If
   543  // the context is nil a panic will occur. In the future the SDK may create
   544  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   545  // for more information on using Contexts.
   546  func (c *ApplicationInsights) DeleteLogPatternWithContext(ctx aws.Context, input *DeleteLogPatternInput, opts ...request.Option) (*DeleteLogPatternOutput, error) {
   547  	req, out := c.DeleteLogPatternRequest(input)
   548  	req.SetContext(ctx)
   549  	req.ApplyOptions(opts...)
   550  	return out, req.Send()
   551  }
   552  
   553  const opDescribeApplication = "DescribeApplication"
   554  
   555  // DescribeApplicationRequest generates a "aws/request.Request" representing the
   556  // client's request for the DescribeApplication operation. The "output" return
   557  // value will be populated with the request's response once the request completes
   558  // successfully.
   559  //
   560  // Use "Send" method on the returned Request to send the API call to the service.
   561  // the "output" return value is not valid until after Send returns without error.
   562  //
   563  // See DescribeApplication for more information on using the DescribeApplication
   564  // API call, and error handling.
   565  //
   566  // This method is useful when you want to inject custom logic or configuration
   567  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   568  //
   569  //
   570  //    // Example sending a request using the DescribeApplicationRequest method.
   571  //    req, resp := client.DescribeApplicationRequest(params)
   572  //
   573  //    err := req.Send()
   574  //    if err == nil { // resp is now filled
   575  //        fmt.Println(resp)
   576  //    }
   577  //
   578  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeApplication
   579  func (c *ApplicationInsights) DescribeApplicationRequest(input *DescribeApplicationInput) (req *request.Request, output *DescribeApplicationOutput) {
   580  	op := &request.Operation{
   581  		Name:       opDescribeApplication,
   582  		HTTPMethod: "POST",
   583  		HTTPPath:   "/",
   584  	}
   585  
   586  	if input == nil {
   587  		input = &DescribeApplicationInput{}
   588  	}
   589  
   590  	output = &DescribeApplicationOutput{}
   591  	req = c.newRequest(op, input, output)
   592  	return
   593  }
   594  
   595  // DescribeApplication API operation for Amazon CloudWatch Application Insights.
   596  //
   597  // Describes the application.
   598  //
   599  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   600  // with awserr.Error's Code and Message methods to get detailed information about
   601  // the error.
   602  //
   603  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   604  // API operation DescribeApplication for usage and error information.
   605  //
   606  // Returned Error Types:
   607  //   * ResourceNotFoundException
   608  //   The resource does not exist in the customer account.
   609  //
   610  //   * ValidationException
   611  //   The parameter is not valid.
   612  //
   613  //   * InternalServerException
   614  //   The server encountered an internal error and is unable to complete the request.
   615  //
   616  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeApplication
   617  func (c *ApplicationInsights) DescribeApplication(input *DescribeApplicationInput) (*DescribeApplicationOutput, error) {
   618  	req, out := c.DescribeApplicationRequest(input)
   619  	return out, req.Send()
   620  }
   621  
   622  // DescribeApplicationWithContext is the same as DescribeApplication with the addition of
   623  // the ability to pass a context and additional request options.
   624  //
   625  // See DescribeApplication for details on how to use this API operation.
   626  //
   627  // The context must be non-nil and will be used for request cancellation. If
   628  // the context is nil a panic will occur. In the future the SDK may create
   629  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   630  // for more information on using Contexts.
   631  func (c *ApplicationInsights) DescribeApplicationWithContext(ctx aws.Context, input *DescribeApplicationInput, opts ...request.Option) (*DescribeApplicationOutput, error) {
   632  	req, out := c.DescribeApplicationRequest(input)
   633  	req.SetContext(ctx)
   634  	req.ApplyOptions(opts...)
   635  	return out, req.Send()
   636  }
   637  
   638  const opDescribeComponent = "DescribeComponent"
   639  
   640  // DescribeComponentRequest generates a "aws/request.Request" representing the
   641  // client's request for the DescribeComponent operation. The "output" return
   642  // value will be populated with the request's response once the request completes
   643  // successfully.
   644  //
   645  // Use "Send" method on the returned Request to send the API call to the service.
   646  // the "output" return value is not valid until after Send returns without error.
   647  //
   648  // See DescribeComponent for more information on using the DescribeComponent
   649  // API call, and error handling.
   650  //
   651  // This method is useful when you want to inject custom logic or configuration
   652  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   653  //
   654  //
   655  //    // Example sending a request using the DescribeComponentRequest method.
   656  //    req, resp := client.DescribeComponentRequest(params)
   657  //
   658  //    err := req.Send()
   659  //    if err == nil { // resp is now filled
   660  //        fmt.Println(resp)
   661  //    }
   662  //
   663  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeComponent
   664  func (c *ApplicationInsights) DescribeComponentRequest(input *DescribeComponentInput) (req *request.Request, output *DescribeComponentOutput) {
   665  	op := &request.Operation{
   666  		Name:       opDescribeComponent,
   667  		HTTPMethod: "POST",
   668  		HTTPPath:   "/",
   669  	}
   670  
   671  	if input == nil {
   672  		input = &DescribeComponentInput{}
   673  	}
   674  
   675  	output = &DescribeComponentOutput{}
   676  	req = c.newRequest(op, input, output)
   677  	return
   678  }
   679  
   680  // DescribeComponent API operation for Amazon CloudWatch Application Insights.
   681  //
   682  // Describes a component and lists the resources that are grouped together in
   683  // a component.
   684  //
   685  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   686  // with awserr.Error's Code and Message methods to get detailed information about
   687  // the error.
   688  //
   689  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   690  // API operation DescribeComponent for usage and error information.
   691  //
   692  // Returned Error Types:
   693  //   * ResourceNotFoundException
   694  //   The resource does not exist in the customer account.
   695  //
   696  //   * ValidationException
   697  //   The parameter is not valid.
   698  //
   699  //   * InternalServerException
   700  //   The server encountered an internal error and is unable to complete the request.
   701  //
   702  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeComponent
   703  func (c *ApplicationInsights) DescribeComponent(input *DescribeComponentInput) (*DescribeComponentOutput, error) {
   704  	req, out := c.DescribeComponentRequest(input)
   705  	return out, req.Send()
   706  }
   707  
   708  // DescribeComponentWithContext is the same as DescribeComponent with the addition of
   709  // the ability to pass a context and additional request options.
   710  //
   711  // See DescribeComponent for details on how to use this API operation.
   712  //
   713  // The context must be non-nil and will be used for request cancellation. If
   714  // the context is nil a panic will occur. In the future the SDK may create
   715  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   716  // for more information on using Contexts.
   717  func (c *ApplicationInsights) DescribeComponentWithContext(ctx aws.Context, input *DescribeComponentInput, opts ...request.Option) (*DescribeComponentOutput, error) {
   718  	req, out := c.DescribeComponentRequest(input)
   719  	req.SetContext(ctx)
   720  	req.ApplyOptions(opts...)
   721  	return out, req.Send()
   722  }
   723  
   724  const opDescribeComponentConfiguration = "DescribeComponentConfiguration"
   725  
   726  // DescribeComponentConfigurationRequest generates a "aws/request.Request" representing the
   727  // client's request for the DescribeComponentConfiguration operation. The "output" return
   728  // value will be populated with the request's response once the request completes
   729  // successfully.
   730  //
   731  // Use "Send" method on the returned Request to send the API call to the service.
   732  // the "output" return value is not valid until after Send returns without error.
   733  //
   734  // See DescribeComponentConfiguration for more information on using the DescribeComponentConfiguration
   735  // API call, and error handling.
   736  //
   737  // This method is useful when you want to inject custom logic or configuration
   738  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   739  //
   740  //
   741  //    // Example sending a request using the DescribeComponentConfigurationRequest method.
   742  //    req, resp := client.DescribeComponentConfigurationRequest(params)
   743  //
   744  //    err := req.Send()
   745  //    if err == nil { // resp is now filled
   746  //        fmt.Println(resp)
   747  //    }
   748  //
   749  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeComponentConfiguration
   750  func (c *ApplicationInsights) DescribeComponentConfigurationRequest(input *DescribeComponentConfigurationInput) (req *request.Request, output *DescribeComponentConfigurationOutput) {
   751  	op := &request.Operation{
   752  		Name:       opDescribeComponentConfiguration,
   753  		HTTPMethod: "POST",
   754  		HTTPPath:   "/",
   755  	}
   756  
   757  	if input == nil {
   758  		input = &DescribeComponentConfigurationInput{}
   759  	}
   760  
   761  	output = &DescribeComponentConfigurationOutput{}
   762  	req = c.newRequest(op, input, output)
   763  	return
   764  }
   765  
   766  // DescribeComponentConfiguration API operation for Amazon CloudWatch Application Insights.
   767  //
   768  // Describes the monitoring configuration of the component.
   769  //
   770  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   771  // with awserr.Error's Code and Message methods to get detailed information about
   772  // the error.
   773  //
   774  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   775  // API operation DescribeComponentConfiguration for usage and error information.
   776  //
   777  // Returned Error Types:
   778  //   * ResourceNotFoundException
   779  //   The resource does not exist in the customer account.
   780  //
   781  //   * ValidationException
   782  //   The parameter is not valid.
   783  //
   784  //   * InternalServerException
   785  //   The server encountered an internal error and is unable to complete the request.
   786  //
   787  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeComponentConfiguration
   788  func (c *ApplicationInsights) DescribeComponentConfiguration(input *DescribeComponentConfigurationInput) (*DescribeComponentConfigurationOutput, error) {
   789  	req, out := c.DescribeComponentConfigurationRequest(input)
   790  	return out, req.Send()
   791  }
   792  
   793  // DescribeComponentConfigurationWithContext is the same as DescribeComponentConfiguration with the addition of
   794  // the ability to pass a context and additional request options.
   795  //
   796  // See DescribeComponentConfiguration for details on how to use this API operation.
   797  //
   798  // The context must be non-nil and will be used for request cancellation. If
   799  // the context is nil a panic will occur. In the future the SDK may create
   800  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   801  // for more information on using Contexts.
   802  func (c *ApplicationInsights) DescribeComponentConfigurationWithContext(ctx aws.Context, input *DescribeComponentConfigurationInput, opts ...request.Option) (*DescribeComponentConfigurationOutput, error) {
   803  	req, out := c.DescribeComponentConfigurationRequest(input)
   804  	req.SetContext(ctx)
   805  	req.ApplyOptions(opts...)
   806  	return out, req.Send()
   807  }
   808  
   809  const opDescribeComponentConfigurationRecommendation = "DescribeComponentConfigurationRecommendation"
   810  
   811  // DescribeComponentConfigurationRecommendationRequest generates a "aws/request.Request" representing the
   812  // client's request for the DescribeComponentConfigurationRecommendation operation. The "output" return
   813  // value will be populated with the request's response once the request completes
   814  // successfully.
   815  //
   816  // Use "Send" method on the returned Request to send the API call to the service.
   817  // the "output" return value is not valid until after Send returns without error.
   818  //
   819  // See DescribeComponentConfigurationRecommendation for more information on using the DescribeComponentConfigurationRecommendation
   820  // API call, and error handling.
   821  //
   822  // This method is useful when you want to inject custom logic or configuration
   823  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   824  //
   825  //
   826  //    // Example sending a request using the DescribeComponentConfigurationRecommendationRequest method.
   827  //    req, resp := client.DescribeComponentConfigurationRecommendationRequest(params)
   828  //
   829  //    err := req.Send()
   830  //    if err == nil { // resp is now filled
   831  //        fmt.Println(resp)
   832  //    }
   833  //
   834  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeComponentConfigurationRecommendation
   835  func (c *ApplicationInsights) DescribeComponentConfigurationRecommendationRequest(input *DescribeComponentConfigurationRecommendationInput) (req *request.Request, output *DescribeComponentConfigurationRecommendationOutput) {
   836  	op := &request.Operation{
   837  		Name:       opDescribeComponentConfigurationRecommendation,
   838  		HTTPMethod: "POST",
   839  		HTTPPath:   "/",
   840  	}
   841  
   842  	if input == nil {
   843  		input = &DescribeComponentConfigurationRecommendationInput{}
   844  	}
   845  
   846  	output = &DescribeComponentConfigurationRecommendationOutput{}
   847  	req = c.newRequest(op, input, output)
   848  	return
   849  }
   850  
   851  // DescribeComponentConfigurationRecommendation API operation for Amazon CloudWatch Application Insights.
   852  //
   853  // Describes the recommended monitoring configuration of the component.
   854  //
   855  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   856  // with awserr.Error's Code and Message methods to get detailed information about
   857  // the error.
   858  //
   859  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   860  // API operation DescribeComponentConfigurationRecommendation for usage and error information.
   861  //
   862  // Returned Error Types:
   863  //   * ResourceNotFoundException
   864  //   The resource does not exist in the customer account.
   865  //
   866  //   * ValidationException
   867  //   The parameter is not valid.
   868  //
   869  //   * InternalServerException
   870  //   The server encountered an internal error and is unable to complete the request.
   871  //
   872  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeComponentConfigurationRecommendation
   873  func (c *ApplicationInsights) DescribeComponentConfigurationRecommendation(input *DescribeComponentConfigurationRecommendationInput) (*DescribeComponentConfigurationRecommendationOutput, error) {
   874  	req, out := c.DescribeComponentConfigurationRecommendationRequest(input)
   875  	return out, req.Send()
   876  }
   877  
   878  // DescribeComponentConfigurationRecommendationWithContext is the same as DescribeComponentConfigurationRecommendation with the addition of
   879  // the ability to pass a context and additional request options.
   880  //
   881  // See DescribeComponentConfigurationRecommendation for details on how to use this API operation.
   882  //
   883  // The context must be non-nil and will be used for request cancellation. If
   884  // the context is nil a panic will occur. In the future the SDK may create
   885  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   886  // for more information on using Contexts.
   887  func (c *ApplicationInsights) DescribeComponentConfigurationRecommendationWithContext(ctx aws.Context, input *DescribeComponentConfigurationRecommendationInput, opts ...request.Option) (*DescribeComponentConfigurationRecommendationOutput, error) {
   888  	req, out := c.DescribeComponentConfigurationRecommendationRequest(input)
   889  	req.SetContext(ctx)
   890  	req.ApplyOptions(opts...)
   891  	return out, req.Send()
   892  }
   893  
   894  const opDescribeLogPattern = "DescribeLogPattern"
   895  
   896  // DescribeLogPatternRequest generates a "aws/request.Request" representing the
   897  // client's request for the DescribeLogPattern operation. The "output" return
   898  // value will be populated with the request's response once the request completes
   899  // successfully.
   900  //
   901  // Use "Send" method on the returned Request to send the API call to the service.
   902  // the "output" return value is not valid until after Send returns without error.
   903  //
   904  // See DescribeLogPattern for more information on using the DescribeLogPattern
   905  // API call, and error handling.
   906  //
   907  // This method is useful when you want to inject custom logic or configuration
   908  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   909  //
   910  //
   911  //    // Example sending a request using the DescribeLogPatternRequest method.
   912  //    req, resp := client.DescribeLogPatternRequest(params)
   913  //
   914  //    err := req.Send()
   915  //    if err == nil { // resp is now filled
   916  //        fmt.Println(resp)
   917  //    }
   918  //
   919  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeLogPattern
   920  func (c *ApplicationInsights) DescribeLogPatternRequest(input *DescribeLogPatternInput) (req *request.Request, output *DescribeLogPatternOutput) {
   921  	op := &request.Operation{
   922  		Name:       opDescribeLogPattern,
   923  		HTTPMethod: "POST",
   924  		HTTPPath:   "/",
   925  	}
   926  
   927  	if input == nil {
   928  		input = &DescribeLogPatternInput{}
   929  	}
   930  
   931  	output = &DescribeLogPatternOutput{}
   932  	req = c.newRequest(op, input, output)
   933  	return
   934  }
   935  
   936  // DescribeLogPattern API operation for Amazon CloudWatch Application Insights.
   937  //
   938  // Describe a specific log pattern from a LogPatternSet.
   939  //
   940  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   941  // with awserr.Error's Code and Message methods to get detailed information about
   942  // the error.
   943  //
   944  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
   945  // API operation DescribeLogPattern for usage and error information.
   946  //
   947  // Returned Error Types:
   948  //   * ResourceNotFoundException
   949  //   The resource does not exist in the customer account.
   950  //
   951  //   * ValidationException
   952  //   The parameter is not valid.
   953  //
   954  //   * InternalServerException
   955  //   The server encountered an internal error and is unable to complete the request.
   956  //
   957  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeLogPattern
   958  func (c *ApplicationInsights) DescribeLogPattern(input *DescribeLogPatternInput) (*DescribeLogPatternOutput, error) {
   959  	req, out := c.DescribeLogPatternRequest(input)
   960  	return out, req.Send()
   961  }
   962  
   963  // DescribeLogPatternWithContext is the same as DescribeLogPattern with the addition of
   964  // the ability to pass a context and additional request options.
   965  //
   966  // See DescribeLogPattern for details on how to use this API operation.
   967  //
   968  // The context must be non-nil and will be used for request cancellation. If
   969  // the context is nil a panic will occur. In the future the SDK may create
   970  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   971  // for more information on using Contexts.
   972  func (c *ApplicationInsights) DescribeLogPatternWithContext(ctx aws.Context, input *DescribeLogPatternInput, opts ...request.Option) (*DescribeLogPatternOutput, error) {
   973  	req, out := c.DescribeLogPatternRequest(input)
   974  	req.SetContext(ctx)
   975  	req.ApplyOptions(opts...)
   976  	return out, req.Send()
   977  }
   978  
   979  const opDescribeObservation = "DescribeObservation"
   980  
   981  // DescribeObservationRequest generates a "aws/request.Request" representing the
   982  // client's request for the DescribeObservation operation. The "output" return
   983  // value will be populated with the request's response once the request completes
   984  // successfully.
   985  //
   986  // Use "Send" method on the returned Request to send the API call to the service.
   987  // the "output" return value is not valid until after Send returns without error.
   988  //
   989  // See DescribeObservation for more information on using the DescribeObservation
   990  // API call, and error handling.
   991  //
   992  // This method is useful when you want to inject custom logic or configuration
   993  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   994  //
   995  //
   996  //    // Example sending a request using the DescribeObservationRequest method.
   997  //    req, resp := client.DescribeObservationRequest(params)
   998  //
   999  //    err := req.Send()
  1000  //    if err == nil { // resp is now filled
  1001  //        fmt.Println(resp)
  1002  //    }
  1003  //
  1004  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeObservation
  1005  func (c *ApplicationInsights) DescribeObservationRequest(input *DescribeObservationInput) (req *request.Request, output *DescribeObservationOutput) {
  1006  	op := &request.Operation{
  1007  		Name:       opDescribeObservation,
  1008  		HTTPMethod: "POST",
  1009  		HTTPPath:   "/",
  1010  	}
  1011  
  1012  	if input == nil {
  1013  		input = &DescribeObservationInput{}
  1014  	}
  1015  
  1016  	output = &DescribeObservationOutput{}
  1017  	req = c.newRequest(op, input, output)
  1018  	return
  1019  }
  1020  
  1021  // DescribeObservation API operation for Amazon CloudWatch Application Insights.
  1022  //
  1023  // Describes an anomaly or error with the application.
  1024  //
  1025  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1026  // with awserr.Error's Code and Message methods to get detailed information about
  1027  // the error.
  1028  //
  1029  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  1030  // API operation DescribeObservation for usage and error information.
  1031  //
  1032  // Returned Error Types:
  1033  //   * InternalServerException
  1034  //   The server encountered an internal error and is unable to complete the request.
  1035  //
  1036  //   * ValidationException
  1037  //   The parameter is not valid.
  1038  //
  1039  //   * ResourceNotFoundException
  1040  //   The resource does not exist in the customer account.
  1041  //
  1042  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeObservation
  1043  func (c *ApplicationInsights) DescribeObservation(input *DescribeObservationInput) (*DescribeObservationOutput, error) {
  1044  	req, out := c.DescribeObservationRequest(input)
  1045  	return out, req.Send()
  1046  }
  1047  
  1048  // DescribeObservationWithContext is the same as DescribeObservation with the addition of
  1049  // the ability to pass a context and additional request options.
  1050  //
  1051  // See DescribeObservation for details on how to use this API operation.
  1052  //
  1053  // The context must be non-nil and will be used for request cancellation. If
  1054  // the context is nil a panic will occur. In the future the SDK may create
  1055  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1056  // for more information on using Contexts.
  1057  func (c *ApplicationInsights) DescribeObservationWithContext(ctx aws.Context, input *DescribeObservationInput, opts ...request.Option) (*DescribeObservationOutput, error) {
  1058  	req, out := c.DescribeObservationRequest(input)
  1059  	req.SetContext(ctx)
  1060  	req.ApplyOptions(opts...)
  1061  	return out, req.Send()
  1062  }
  1063  
  1064  const opDescribeProblem = "DescribeProblem"
  1065  
  1066  // DescribeProblemRequest generates a "aws/request.Request" representing the
  1067  // client's request for the DescribeProblem operation. The "output" return
  1068  // value will be populated with the request's response once the request completes
  1069  // successfully.
  1070  //
  1071  // Use "Send" method on the returned Request to send the API call to the service.
  1072  // the "output" return value is not valid until after Send returns without error.
  1073  //
  1074  // See DescribeProblem for more information on using the DescribeProblem
  1075  // API call, and error handling.
  1076  //
  1077  // This method is useful when you want to inject custom logic or configuration
  1078  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1079  //
  1080  //
  1081  //    // Example sending a request using the DescribeProblemRequest method.
  1082  //    req, resp := client.DescribeProblemRequest(params)
  1083  //
  1084  //    err := req.Send()
  1085  //    if err == nil { // resp is now filled
  1086  //        fmt.Println(resp)
  1087  //    }
  1088  //
  1089  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeProblem
  1090  func (c *ApplicationInsights) DescribeProblemRequest(input *DescribeProblemInput) (req *request.Request, output *DescribeProblemOutput) {
  1091  	op := &request.Operation{
  1092  		Name:       opDescribeProblem,
  1093  		HTTPMethod: "POST",
  1094  		HTTPPath:   "/",
  1095  	}
  1096  
  1097  	if input == nil {
  1098  		input = &DescribeProblemInput{}
  1099  	}
  1100  
  1101  	output = &DescribeProblemOutput{}
  1102  	req = c.newRequest(op, input, output)
  1103  	return
  1104  }
  1105  
  1106  // DescribeProblem API operation for Amazon CloudWatch Application Insights.
  1107  //
  1108  // Describes an application problem.
  1109  //
  1110  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1111  // with awserr.Error's Code and Message methods to get detailed information about
  1112  // the error.
  1113  //
  1114  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  1115  // API operation DescribeProblem for usage and error information.
  1116  //
  1117  // Returned Error Types:
  1118  //   * InternalServerException
  1119  //   The server encountered an internal error and is unable to complete the request.
  1120  //
  1121  //   * ValidationException
  1122  //   The parameter is not valid.
  1123  //
  1124  //   * ResourceNotFoundException
  1125  //   The resource does not exist in the customer account.
  1126  //
  1127  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeProblem
  1128  func (c *ApplicationInsights) DescribeProblem(input *DescribeProblemInput) (*DescribeProblemOutput, error) {
  1129  	req, out := c.DescribeProblemRequest(input)
  1130  	return out, req.Send()
  1131  }
  1132  
  1133  // DescribeProblemWithContext is the same as DescribeProblem with the addition of
  1134  // the ability to pass a context and additional request options.
  1135  //
  1136  // See DescribeProblem for details on how to use this API operation.
  1137  //
  1138  // The context must be non-nil and will be used for request cancellation. If
  1139  // the context is nil a panic will occur. In the future the SDK may create
  1140  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1141  // for more information on using Contexts.
  1142  func (c *ApplicationInsights) DescribeProblemWithContext(ctx aws.Context, input *DescribeProblemInput, opts ...request.Option) (*DescribeProblemOutput, error) {
  1143  	req, out := c.DescribeProblemRequest(input)
  1144  	req.SetContext(ctx)
  1145  	req.ApplyOptions(opts...)
  1146  	return out, req.Send()
  1147  }
  1148  
  1149  const opDescribeProblemObservations = "DescribeProblemObservations"
  1150  
  1151  // DescribeProblemObservationsRequest generates a "aws/request.Request" representing the
  1152  // client's request for the DescribeProblemObservations operation. The "output" return
  1153  // value will be populated with the request's response once the request completes
  1154  // successfully.
  1155  //
  1156  // Use "Send" method on the returned Request to send the API call to the service.
  1157  // the "output" return value is not valid until after Send returns without error.
  1158  //
  1159  // See DescribeProblemObservations for more information on using the DescribeProblemObservations
  1160  // API call, and error handling.
  1161  //
  1162  // This method is useful when you want to inject custom logic or configuration
  1163  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1164  //
  1165  //
  1166  //    // Example sending a request using the DescribeProblemObservationsRequest method.
  1167  //    req, resp := client.DescribeProblemObservationsRequest(params)
  1168  //
  1169  //    err := req.Send()
  1170  //    if err == nil { // resp is now filled
  1171  //        fmt.Println(resp)
  1172  //    }
  1173  //
  1174  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeProblemObservations
  1175  func (c *ApplicationInsights) DescribeProblemObservationsRequest(input *DescribeProblemObservationsInput) (req *request.Request, output *DescribeProblemObservationsOutput) {
  1176  	op := &request.Operation{
  1177  		Name:       opDescribeProblemObservations,
  1178  		HTTPMethod: "POST",
  1179  		HTTPPath:   "/",
  1180  	}
  1181  
  1182  	if input == nil {
  1183  		input = &DescribeProblemObservationsInput{}
  1184  	}
  1185  
  1186  	output = &DescribeProblemObservationsOutput{}
  1187  	req = c.newRequest(op, input, output)
  1188  	return
  1189  }
  1190  
  1191  // DescribeProblemObservations API operation for Amazon CloudWatch Application Insights.
  1192  //
  1193  // Describes the anomalies or errors associated with the problem.
  1194  //
  1195  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1196  // with awserr.Error's Code and Message methods to get detailed information about
  1197  // the error.
  1198  //
  1199  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  1200  // API operation DescribeProblemObservations for usage and error information.
  1201  //
  1202  // Returned Error Types:
  1203  //   * InternalServerException
  1204  //   The server encountered an internal error and is unable to complete the request.
  1205  //
  1206  //   * ValidationException
  1207  //   The parameter is not valid.
  1208  //
  1209  //   * ResourceNotFoundException
  1210  //   The resource does not exist in the customer account.
  1211  //
  1212  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/DescribeProblemObservations
  1213  func (c *ApplicationInsights) DescribeProblemObservations(input *DescribeProblemObservationsInput) (*DescribeProblemObservationsOutput, error) {
  1214  	req, out := c.DescribeProblemObservationsRequest(input)
  1215  	return out, req.Send()
  1216  }
  1217  
  1218  // DescribeProblemObservationsWithContext is the same as DescribeProblemObservations with the addition of
  1219  // the ability to pass a context and additional request options.
  1220  //
  1221  // See DescribeProblemObservations for details on how to use this API operation.
  1222  //
  1223  // The context must be non-nil and will be used for request cancellation. If
  1224  // the context is nil a panic will occur. In the future the SDK may create
  1225  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1226  // for more information on using Contexts.
  1227  func (c *ApplicationInsights) DescribeProblemObservationsWithContext(ctx aws.Context, input *DescribeProblemObservationsInput, opts ...request.Option) (*DescribeProblemObservationsOutput, error) {
  1228  	req, out := c.DescribeProblemObservationsRequest(input)
  1229  	req.SetContext(ctx)
  1230  	req.ApplyOptions(opts...)
  1231  	return out, req.Send()
  1232  }
  1233  
  1234  const opListApplications = "ListApplications"
  1235  
  1236  // ListApplicationsRequest generates a "aws/request.Request" representing the
  1237  // client's request for the ListApplications operation. The "output" return
  1238  // value will be populated with the request's response once the request completes
  1239  // successfully.
  1240  //
  1241  // Use "Send" method on the returned Request to send the API call to the service.
  1242  // the "output" return value is not valid until after Send returns without error.
  1243  //
  1244  // See ListApplications for more information on using the ListApplications
  1245  // API call, and error handling.
  1246  //
  1247  // This method is useful when you want to inject custom logic or configuration
  1248  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1249  //
  1250  //
  1251  //    // Example sending a request using the ListApplicationsRequest method.
  1252  //    req, resp := client.ListApplicationsRequest(params)
  1253  //
  1254  //    err := req.Send()
  1255  //    if err == nil { // resp is now filled
  1256  //        fmt.Println(resp)
  1257  //    }
  1258  //
  1259  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListApplications
  1260  func (c *ApplicationInsights) ListApplicationsRequest(input *ListApplicationsInput) (req *request.Request, output *ListApplicationsOutput) {
  1261  	op := &request.Operation{
  1262  		Name:       opListApplications,
  1263  		HTTPMethod: "POST",
  1264  		HTTPPath:   "/",
  1265  		Paginator: &request.Paginator{
  1266  			InputTokens:     []string{"NextToken"},
  1267  			OutputTokens:    []string{"NextToken"},
  1268  			LimitToken:      "MaxResults",
  1269  			TruncationToken: "",
  1270  		},
  1271  	}
  1272  
  1273  	if input == nil {
  1274  		input = &ListApplicationsInput{}
  1275  	}
  1276  
  1277  	output = &ListApplicationsOutput{}
  1278  	req = c.newRequest(op, input, output)
  1279  	return
  1280  }
  1281  
  1282  // ListApplications API operation for Amazon CloudWatch Application Insights.
  1283  //
  1284  // Lists the IDs of the applications that you are monitoring.
  1285  //
  1286  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1287  // with awserr.Error's Code and Message methods to get detailed information about
  1288  // the error.
  1289  //
  1290  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  1291  // API operation ListApplications for usage and error information.
  1292  //
  1293  // Returned Error Types:
  1294  //   * ValidationException
  1295  //   The parameter is not valid.
  1296  //
  1297  //   * InternalServerException
  1298  //   The server encountered an internal error and is unable to complete the request.
  1299  //
  1300  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListApplications
  1301  func (c *ApplicationInsights) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) {
  1302  	req, out := c.ListApplicationsRequest(input)
  1303  	return out, req.Send()
  1304  }
  1305  
  1306  // ListApplicationsWithContext is the same as ListApplications with the addition of
  1307  // the ability to pass a context and additional request options.
  1308  //
  1309  // See ListApplications for details on how to use this API operation.
  1310  //
  1311  // The context must be non-nil and will be used for request cancellation. If
  1312  // the context is nil a panic will occur. In the future the SDK may create
  1313  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1314  // for more information on using Contexts.
  1315  func (c *ApplicationInsights) ListApplicationsWithContext(ctx aws.Context, input *ListApplicationsInput, opts ...request.Option) (*ListApplicationsOutput, error) {
  1316  	req, out := c.ListApplicationsRequest(input)
  1317  	req.SetContext(ctx)
  1318  	req.ApplyOptions(opts...)
  1319  	return out, req.Send()
  1320  }
  1321  
  1322  // ListApplicationsPages iterates over the pages of a ListApplications operation,
  1323  // calling the "fn" function with the response data for each page. To stop
  1324  // iterating, return false from the fn function.
  1325  //
  1326  // See ListApplications method for more information on how to use this operation.
  1327  //
  1328  // Note: This operation can generate multiple requests to a service.
  1329  //
  1330  //    // Example iterating over at most 3 pages of a ListApplications operation.
  1331  //    pageNum := 0
  1332  //    err := client.ListApplicationsPages(params,
  1333  //        func(page *applicationinsights.ListApplicationsOutput, lastPage bool) bool {
  1334  //            pageNum++
  1335  //            fmt.Println(page)
  1336  //            return pageNum <= 3
  1337  //        })
  1338  //
  1339  func (c *ApplicationInsights) ListApplicationsPages(input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool) error {
  1340  	return c.ListApplicationsPagesWithContext(aws.BackgroundContext(), input, fn)
  1341  }
  1342  
  1343  // ListApplicationsPagesWithContext same as ListApplicationsPages except
  1344  // it takes a Context and allows setting request options on the pages.
  1345  //
  1346  // The context must be non-nil and will be used for request cancellation. If
  1347  // the context is nil a panic will occur. In the future the SDK may create
  1348  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1349  // for more information on using Contexts.
  1350  func (c *ApplicationInsights) ListApplicationsPagesWithContext(ctx aws.Context, input *ListApplicationsInput, fn func(*ListApplicationsOutput, bool) bool, opts ...request.Option) error {
  1351  	p := request.Pagination{
  1352  		NewRequest: func() (*request.Request, error) {
  1353  			var inCpy *ListApplicationsInput
  1354  			if input != nil {
  1355  				tmp := *input
  1356  				inCpy = &tmp
  1357  			}
  1358  			req, _ := c.ListApplicationsRequest(inCpy)
  1359  			req.SetContext(ctx)
  1360  			req.ApplyOptions(opts...)
  1361  			return req, nil
  1362  		},
  1363  	}
  1364  
  1365  	for p.Next() {
  1366  		if !fn(p.Page().(*ListApplicationsOutput), !p.HasNextPage()) {
  1367  			break
  1368  		}
  1369  	}
  1370  
  1371  	return p.Err()
  1372  }
  1373  
  1374  const opListComponents = "ListComponents"
  1375  
  1376  // ListComponentsRequest generates a "aws/request.Request" representing the
  1377  // client's request for the ListComponents operation. The "output" return
  1378  // value will be populated with the request's response once the request completes
  1379  // successfully.
  1380  //
  1381  // Use "Send" method on the returned Request to send the API call to the service.
  1382  // the "output" return value is not valid until after Send returns without error.
  1383  //
  1384  // See ListComponents for more information on using the ListComponents
  1385  // API call, and error handling.
  1386  //
  1387  // This method is useful when you want to inject custom logic or configuration
  1388  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1389  //
  1390  //
  1391  //    // Example sending a request using the ListComponentsRequest method.
  1392  //    req, resp := client.ListComponentsRequest(params)
  1393  //
  1394  //    err := req.Send()
  1395  //    if err == nil { // resp is now filled
  1396  //        fmt.Println(resp)
  1397  //    }
  1398  //
  1399  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListComponents
  1400  func (c *ApplicationInsights) ListComponentsRequest(input *ListComponentsInput) (req *request.Request, output *ListComponentsOutput) {
  1401  	op := &request.Operation{
  1402  		Name:       opListComponents,
  1403  		HTTPMethod: "POST",
  1404  		HTTPPath:   "/",
  1405  		Paginator: &request.Paginator{
  1406  			InputTokens:     []string{"NextToken"},
  1407  			OutputTokens:    []string{"NextToken"},
  1408  			LimitToken:      "MaxResults",
  1409  			TruncationToken: "",
  1410  		},
  1411  	}
  1412  
  1413  	if input == nil {
  1414  		input = &ListComponentsInput{}
  1415  	}
  1416  
  1417  	output = &ListComponentsOutput{}
  1418  	req = c.newRequest(op, input, output)
  1419  	return
  1420  }
  1421  
  1422  // ListComponents API operation for Amazon CloudWatch Application Insights.
  1423  //
  1424  // Lists the auto-grouped, standalone, and custom components of the application.
  1425  //
  1426  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1427  // with awserr.Error's Code and Message methods to get detailed information about
  1428  // the error.
  1429  //
  1430  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  1431  // API operation ListComponents for usage and error information.
  1432  //
  1433  // Returned Error Types:
  1434  //   * ResourceNotFoundException
  1435  //   The resource does not exist in the customer account.
  1436  //
  1437  //   * ValidationException
  1438  //   The parameter is not valid.
  1439  //
  1440  //   * InternalServerException
  1441  //   The server encountered an internal error and is unable to complete the request.
  1442  //
  1443  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListComponents
  1444  func (c *ApplicationInsights) ListComponents(input *ListComponentsInput) (*ListComponentsOutput, error) {
  1445  	req, out := c.ListComponentsRequest(input)
  1446  	return out, req.Send()
  1447  }
  1448  
  1449  // ListComponentsWithContext is the same as ListComponents with the addition of
  1450  // the ability to pass a context and additional request options.
  1451  //
  1452  // See ListComponents for details on how to use this API operation.
  1453  //
  1454  // The context must be non-nil and will be used for request cancellation. If
  1455  // the context is nil a panic will occur. In the future the SDK may create
  1456  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1457  // for more information on using Contexts.
  1458  func (c *ApplicationInsights) ListComponentsWithContext(ctx aws.Context, input *ListComponentsInput, opts ...request.Option) (*ListComponentsOutput, error) {
  1459  	req, out := c.ListComponentsRequest(input)
  1460  	req.SetContext(ctx)
  1461  	req.ApplyOptions(opts...)
  1462  	return out, req.Send()
  1463  }
  1464  
  1465  // ListComponentsPages iterates over the pages of a ListComponents operation,
  1466  // calling the "fn" function with the response data for each page. To stop
  1467  // iterating, return false from the fn function.
  1468  //
  1469  // See ListComponents method for more information on how to use this operation.
  1470  //
  1471  // Note: This operation can generate multiple requests to a service.
  1472  //
  1473  //    // Example iterating over at most 3 pages of a ListComponents operation.
  1474  //    pageNum := 0
  1475  //    err := client.ListComponentsPages(params,
  1476  //        func(page *applicationinsights.ListComponentsOutput, lastPage bool) bool {
  1477  //            pageNum++
  1478  //            fmt.Println(page)
  1479  //            return pageNum <= 3
  1480  //        })
  1481  //
  1482  func (c *ApplicationInsights) ListComponentsPages(input *ListComponentsInput, fn func(*ListComponentsOutput, bool) bool) error {
  1483  	return c.ListComponentsPagesWithContext(aws.BackgroundContext(), input, fn)
  1484  }
  1485  
  1486  // ListComponentsPagesWithContext same as ListComponentsPages except
  1487  // it takes a Context and allows setting request options on the pages.
  1488  //
  1489  // The context must be non-nil and will be used for request cancellation. If
  1490  // the context is nil a panic will occur. In the future the SDK may create
  1491  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1492  // for more information on using Contexts.
  1493  func (c *ApplicationInsights) ListComponentsPagesWithContext(ctx aws.Context, input *ListComponentsInput, fn func(*ListComponentsOutput, bool) bool, opts ...request.Option) error {
  1494  	p := request.Pagination{
  1495  		NewRequest: func() (*request.Request, error) {
  1496  			var inCpy *ListComponentsInput
  1497  			if input != nil {
  1498  				tmp := *input
  1499  				inCpy = &tmp
  1500  			}
  1501  			req, _ := c.ListComponentsRequest(inCpy)
  1502  			req.SetContext(ctx)
  1503  			req.ApplyOptions(opts...)
  1504  			return req, nil
  1505  		},
  1506  	}
  1507  
  1508  	for p.Next() {
  1509  		if !fn(p.Page().(*ListComponentsOutput), !p.HasNextPage()) {
  1510  			break
  1511  		}
  1512  	}
  1513  
  1514  	return p.Err()
  1515  }
  1516  
  1517  const opListConfigurationHistory = "ListConfigurationHistory"
  1518  
  1519  // ListConfigurationHistoryRequest generates a "aws/request.Request" representing the
  1520  // client's request for the ListConfigurationHistory operation. The "output" return
  1521  // value will be populated with the request's response once the request completes
  1522  // successfully.
  1523  //
  1524  // Use "Send" method on the returned Request to send the API call to the service.
  1525  // the "output" return value is not valid until after Send returns without error.
  1526  //
  1527  // See ListConfigurationHistory for more information on using the ListConfigurationHistory
  1528  // API call, and error handling.
  1529  //
  1530  // This method is useful when you want to inject custom logic or configuration
  1531  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1532  //
  1533  //
  1534  //    // Example sending a request using the ListConfigurationHistoryRequest method.
  1535  //    req, resp := client.ListConfigurationHistoryRequest(params)
  1536  //
  1537  //    err := req.Send()
  1538  //    if err == nil { // resp is now filled
  1539  //        fmt.Println(resp)
  1540  //    }
  1541  //
  1542  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListConfigurationHistory
  1543  func (c *ApplicationInsights) ListConfigurationHistoryRequest(input *ListConfigurationHistoryInput) (req *request.Request, output *ListConfigurationHistoryOutput) {
  1544  	op := &request.Operation{
  1545  		Name:       opListConfigurationHistory,
  1546  		HTTPMethod: "POST",
  1547  		HTTPPath:   "/",
  1548  		Paginator: &request.Paginator{
  1549  			InputTokens:     []string{"NextToken"},
  1550  			OutputTokens:    []string{"NextToken"},
  1551  			LimitToken:      "MaxResults",
  1552  			TruncationToken: "",
  1553  		},
  1554  	}
  1555  
  1556  	if input == nil {
  1557  		input = &ListConfigurationHistoryInput{}
  1558  	}
  1559  
  1560  	output = &ListConfigurationHistoryOutput{}
  1561  	req = c.newRequest(op, input, output)
  1562  	return
  1563  }
  1564  
  1565  // ListConfigurationHistory API operation for Amazon CloudWatch Application Insights.
  1566  //
  1567  // Lists the INFO, WARN, and ERROR events for periodic configuration updates
  1568  // performed by Application Insights. Examples of events represented are:
  1569  //
  1570  //    * INFO: creating a new alarm or updating an alarm threshold.
  1571  //
  1572  //    * WARN: alarm not created due to insufficient data points used to predict
  1573  //    thresholds.
  1574  //
  1575  //    * ERROR: alarm not created due to permission errors or exceeding quotas.
  1576  //
  1577  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1578  // with awserr.Error's Code and Message methods to get detailed information about
  1579  // the error.
  1580  //
  1581  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  1582  // API operation ListConfigurationHistory for usage and error information.
  1583  //
  1584  // Returned Error Types:
  1585  //   * ValidationException
  1586  //   The parameter is not valid.
  1587  //
  1588  //   * ResourceNotFoundException
  1589  //   The resource does not exist in the customer account.
  1590  //
  1591  //   * InternalServerException
  1592  //   The server encountered an internal error and is unable to complete the request.
  1593  //
  1594  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListConfigurationHistory
  1595  func (c *ApplicationInsights) ListConfigurationHistory(input *ListConfigurationHistoryInput) (*ListConfigurationHistoryOutput, error) {
  1596  	req, out := c.ListConfigurationHistoryRequest(input)
  1597  	return out, req.Send()
  1598  }
  1599  
  1600  // ListConfigurationHistoryWithContext is the same as ListConfigurationHistory with the addition of
  1601  // the ability to pass a context and additional request options.
  1602  //
  1603  // See ListConfigurationHistory for details on how to use this API operation.
  1604  //
  1605  // The context must be non-nil and will be used for request cancellation. If
  1606  // the context is nil a panic will occur. In the future the SDK may create
  1607  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1608  // for more information on using Contexts.
  1609  func (c *ApplicationInsights) ListConfigurationHistoryWithContext(ctx aws.Context, input *ListConfigurationHistoryInput, opts ...request.Option) (*ListConfigurationHistoryOutput, error) {
  1610  	req, out := c.ListConfigurationHistoryRequest(input)
  1611  	req.SetContext(ctx)
  1612  	req.ApplyOptions(opts...)
  1613  	return out, req.Send()
  1614  }
  1615  
  1616  // ListConfigurationHistoryPages iterates over the pages of a ListConfigurationHistory operation,
  1617  // calling the "fn" function with the response data for each page. To stop
  1618  // iterating, return false from the fn function.
  1619  //
  1620  // See ListConfigurationHistory method for more information on how to use this operation.
  1621  //
  1622  // Note: This operation can generate multiple requests to a service.
  1623  //
  1624  //    // Example iterating over at most 3 pages of a ListConfigurationHistory operation.
  1625  //    pageNum := 0
  1626  //    err := client.ListConfigurationHistoryPages(params,
  1627  //        func(page *applicationinsights.ListConfigurationHistoryOutput, lastPage bool) bool {
  1628  //            pageNum++
  1629  //            fmt.Println(page)
  1630  //            return pageNum <= 3
  1631  //        })
  1632  //
  1633  func (c *ApplicationInsights) ListConfigurationHistoryPages(input *ListConfigurationHistoryInput, fn func(*ListConfigurationHistoryOutput, bool) bool) error {
  1634  	return c.ListConfigurationHistoryPagesWithContext(aws.BackgroundContext(), input, fn)
  1635  }
  1636  
  1637  // ListConfigurationHistoryPagesWithContext same as ListConfigurationHistoryPages except
  1638  // it takes a Context and allows setting request options on the pages.
  1639  //
  1640  // The context must be non-nil and will be used for request cancellation. If
  1641  // the context is nil a panic will occur. In the future the SDK may create
  1642  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1643  // for more information on using Contexts.
  1644  func (c *ApplicationInsights) ListConfigurationHistoryPagesWithContext(ctx aws.Context, input *ListConfigurationHistoryInput, fn func(*ListConfigurationHistoryOutput, bool) bool, opts ...request.Option) error {
  1645  	p := request.Pagination{
  1646  		NewRequest: func() (*request.Request, error) {
  1647  			var inCpy *ListConfigurationHistoryInput
  1648  			if input != nil {
  1649  				tmp := *input
  1650  				inCpy = &tmp
  1651  			}
  1652  			req, _ := c.ListConfigurationHistoryRequest(inCpy)
  1653  			req.SetContext(ctx)
  1654  			req.ApplyOptions(opts...)
  1655  			return req, nil
  1656  		},
  1657  	}
  1658  
  1659  	for p.Next() {
  1660  		if !fn(p.Page().(*ListConfigurationHistoryOutput), !p.HasNextPage()) {
  1661  			break
  1662  		}
  1663  	}
  1664  
  1665  	return p.Err()
  1666  }
  1667  
  1668  const opListLogPatternSets = "ListLogPatternSets"
  1669  
  1670  // ListLogPatternSetsRequest generates a "aws/request.Request" representing the
  1671  // client's request for the ListLogPatternSets operation. The "output" return
  1672  // value will be populated with the request's response once the request completes
  1673  // successfully.
  1674  //
  1675  // Use "Send" method on the returned Request to send the API call to the service.
  1676  // the "output" return value is not valid until after Send returns without error.
  1677  //
  1678  // See ListLogPatternSets for more information on using the ListLogPatternSets
  1679  // API call, and error handling.
  1680  //
  1681  // This method is useful when you want to inject custom logic or configuration
  1682  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1683  //
  1684  //
  1685  //    // Example sending a request using the ListLogPatternSetsRequest method.
  1686  //    req, resp := client.ListLogPatternSetsRequest(params)
  1687  //
  1688  //    err := req.Send()
  1689  //    if err == nil { // resp is now filled
  1690  //        fmt.Println(resp)
  1691  //    }
  1692  //
  1693  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListLogPatternSets
  1694  func (c *ApplicationInsights) ListLogPatternSetsRequest(input *ListLogPatternSetsInput) (req *request.Request, output *ListLogPatternSetsOutput) {
  1695  	op := &request.Operation{
  1696  		Name:       opListLogPatternSets,
  1697  		HTTPMethod: "POST",
  1698  		HTTPPath:   "/",
  1699  		Paginator: &request.Paginator{
  1700  			InputTokens:     []string{"NextToken"},
  1701  			OutputTokens:    []string{"NextToken"},
  1702  			LimitToken:      "MaxResults",
  1703  			TruncationToken: "",
  1704  		},
  1705  	}
  1706  
  1707  	if input == nil {
  1708  		input = &ListLogPatternSetsInput{}
  1709  	}
  1710  
  1711  	output = &ListLogPatternSetsOutput{}
  1712  	req = c.newRequest(op, input, output)
  1713  	return
  1714  }
  1715  
  1716  // ListLogPatternSets API operation for Amazon CloudWatch Application Insights.
  1717  //
  1718  // Lists the log pattern sets in the specific application.
  1719  //
  1720  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1721  // with awserr.Error's Code and Message methods to get detailed information about
  1722  // the error.
  1723  //
  1724  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  1725  // API operation ListLogPatternSets for usage and error information.
  1726  //
  1727  // Returned Error Types:
  1728  //   * ResourceNotFoundException
  1729  //   The resource does not exist in the customer account.
  1730  //
  1731  //   * ValidationException
  1732  //   The parameter is not valid.
  1733  //
  1734  //   * InternalServerException
  1735  //   The server encountered an internal error and is unable to complete the request.
  1736  //
  1737  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListLogPatternSets
  1738  func (c *ApplicationInsights) ListLogPatternSets(input *ListLogPatternSetsInput) (*ListLogPatternSetsOutput, error) {
  1739  	req, out := c.ListLogPatternSetsRequest(input)
  1740  	return out, req.Send()
  1741  }
  1742  
  1743  // ListLogPatternSetsWithContext is the same as ListLogPatternSets with the addition of
  1744  // the ability to pass a context and additional request options.
  1745  //
  1746  // See ListLogPatternSets for details on how to use this API operation.
  1747  //
  1748  // The context must be non-nil and will be used for request cancellation. If
  1749  // the context is nil a panic will occur. In the future the SDK may create
  1750  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1751  // for more information on using Contexts.
  1752  func (c *ApplicationInsights) ListLogPatternSetsWithContext(ctx aws.Context, input *ListLogPatternSetsInput, opts ...request.Option) (*ListLogPatternSetsOutput, error) {
  1753  	req, out := c.ListLogPatternSetsRequest(input)
  1754  	req.SetContext(ctx)
  1755  	req.ApplyOptions(opts...)
  1756  	return out, req.Send()
  1757  }
  1758  
  1759  // ListLogPatternSetsPages iterates over the pages of a ListLogPatternSets operation,
  1760  // calling the "fn" function with the response data for each page. To stop
  1761  // iterating, return false from the fn function.
  1762  //
  1763  // See ListLogPatternSets method for more information on how to use this operation.
  1764  //
  1765  // Note: This operation can generate multiple requests to a service.
  1766  //
  1767  //    // Example iterating over at most 3 pages of a ListLogPatternSets operation.
  1768  //    pageNum := 0
  1769  //    err := client.ListLogPatternSetsPages(params,
  1770  //        func(page *applicationinsights.ListLogPatternSetsOutput, lastPage bool) bool {
  1771  //            pageNum++
  1772  //            fmt.Println(page)
  1773  //            return pageNum <= 3
  1774  //        })
  1775  //
  1776  func (c *ApplicationInsights) ListLogPatternSetsPages(input *ListLogPatternSetsInput, fn func(*ListLogPatternSetsOutput, bool) bool) error {
  1777  	return c.ListLogPatternSetsPagesWithContext(aws.BackgroundContext(), input, fn)
  1778  }
  1779  
  1780  // ListLogPatternSetsPagesWithContext same as ListLogPatternSetsPages except
  1781  // it takes a Context and allows setting request options on the pages.
  1782  //
  1783  // The context must be non-nil and will be used for request cancellation. If
  1784  // the context is nil a panic will occur. In the future the SDK may create
  1785  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1786  // for more information on using Contexts.
  1787  func (c *ApplicationInsights) ListLogPatternSetsPagesWithContext(ctx aws.Context, input *ListLogPatternSetsInput, fn func(*ListLogPatternSetsOutput, bool) bool, opts ...request.Option) error {
  1788  	p := request.Pagination{
  1789  		NewRequest: func() (*request.Request, error) {
  1790  			var inCpy *ListLogPatternSetsInput
  1791  			if input != nil {
  1792  				tmp := *input
  1793  				inCpy = &tmp
  1794  			}
  1795  			req, _ := c.ListLogPatternSetsRequest(inCpy)
  1796  			req.SetContext(ctx)
  1797  			req.ApplyOptions(opts...)
  1798  			return req, nil
  1799  		},
  1800  	}
  1801  
  1802  	for p.Next() {
  1803  		if !fn(p.Page().(*ListLogPatternSetsOutput), !p.HasNextPage()) {
  1804  			break
  1805  		}
  1806  	}
  1807  
  1808  	return p.Err()
  1809  }
  1810  
  1811  const opListLogPatterns = "ListLogPatterns"
  1812  
  1813  // ListLogPatternsRequest generates a "aws/request.Request" representing the
  1814  // client's request for the ListLogPatterns operation. The "output" return
  1815  // value will be populated with the request's response once the request completes
  1816  // successfully.
  1817  //
  1818  // Use "Send" method on the returned Request to send the API call to the service.
  1819  // the "output" return value is not valid until after Send returns without error.
  1820  //
  1821  // See ListLogPatterns for more information on using the ListLogPatterns
  1822  // API call, and error handling.
  1823  //
  1824  // This method is useful when you want to inject custom logic or configuration
  1825  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1826  //
  1827  //
  1828  //    // Example sending a request using the ListLogPatternsRequest method.
  1829  //    req, resp := client.ListLogPatternsRequest(params)
  1830  //
  1831  //    err := req.Send()
  1832  //    if err == nil { // resp is now filled
  1833  //        fmt.Println(resp)
  1834  //    }
  1835  //
  1836  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListLogPatterns
  1837  func (c *ApplicationInsights) ListLogPatternsRequest(input *ListLogPatternsInput) (req *request.Request, output *ListLogPatternsOutput) {
  1838  	op := &request.Operation{
  1839  		Name:       opListLogPatterns,
  1840  		HTTPMethod: "POST",
  1841  		HTTPPath:   "/",
  1842  		Paginator: &request.Paginator{
  1843  			InputTokens:     []string{"NextToken"},
  1844  			OutputTokens:    []string{"NextToken"},
  1845  			LimitToken:      "MaxResults",
  1846  			TruncationToken: "",
  1847  		},
  1848  	}
  1849  
  1850  	if input == nil {
  1851  		input = &ListLogPatternsInput{}
  1852  	}
  1853  
  1854  	output = &ListLogPatternsOutput{}
  1855  	req = c.newRequest(op, input, output)
  1856  	return
  1857  }
  1858  
  1859  // ListLogPatterns API operation for Amazon CloudWatch Application Insights.
  1860  //
  1861  // Lists the log patterns in the specific log LogPatternSet.
  1862  //
  1863  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1864  // with awserr.Error's Code and Message methods to get detailed information about
  1865  // the error.
  1866  //
  1867  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  1868  // API operation ListLogPatterns for usage and error information.
  1869  //
  1870  // Returned Error Types:
  1871  //   * ResourceNotFoundException
  1872  //   The resource does not exist in the customer account.
  1873  //
  1874  //   * ValidationException
  1875  //   The parameter is not valid.
  1876  //
  1877  //   * InternalServerException
  1878  //   The server encountered an internal error and is unable to complete the request.
  1879  //
  1880  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListLogPatterns
  1881  func (c *ApplicationInsights) ListLogPatterns(input *ListLogPatternsInput) (*ListLogPatternsOutput, error) {
  1882  	req, out := c.ListLogPatternsRequest(input)
  1883  	return out, req.Send()
  1884  }
  1885  
  1886  // ListLogPatternsWithContext is the same as ListLogPatterns with the addition of
  1887  // the ability to pass a context and additional request options.
  1888  //
  1889  // See ListLogPatterns for details on how to use this API operation.
  1890  //
  1891  // The context must be non-nil and will be used for request cancellation. If
  1892  // the context is nil a panic will occur. In the future the SDK may create
  1893  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1894  // for more information on using Contexts.
  1895  func (c *ApplicationInsights) ListLogPatternsWithContext(ctx aws.Context, input *ListLogPatternsInput, opts ...request.Option) (*ListLogPatternsOutput, error) {
  1896  	req, out := c.ListLogPatternsRequest(input)
  1897  	req.SetContext(ctx)
  1898  	req.ApplyOptions(opts...)
  1899  	return out, req.Send()
  1900  }
  1901  
  1902  // ListLogPatternsPages iterates over the pages of a ListLogPatterns operation,
  1903  // calling the "fn" function with the response data for each page. To stop
  1904  // iterating, return false from the fn function.
  1905  //
  1906  // See ListLogPatterns method for more information on how to use this operation.
  1907  //
  1908  // Note: This operation can generate multiple requests to a service.
  1909  //
  1910  //    // Example iterating over at most 3 pages of a ListLogPatterns operation.
  1911  //    pageNum := 0
  1912  //    err := client.ListLogPatternsPages(params,
  1913  //        func(page *applicationinsights.ListLogPatternsOutput, lastPage bool) bool {
  1914  //            pageNum++
  1915  //            fmt.Println(page)
  1916  //            return pageNum <= 3
  1917  //        })
  1918  //
  1919  func (c *ApplicationInsights) ListLogPatternsPages(input *ListLogPatternsInput, fn func(*ListLogPatternsOutput, bool) bool) error {
  1920  	return c.ListLogPatternsPagesWithContext(aws.BackgroundContext(), input, fn)
  1921  }
  1922  
  1923  // ListLogPatternsPagesWithContext same as ListLogPatternsPages except
  1924  // it takes a Context and allows setting request options on the pages.
  1925  //
  1926  // The context must be non-nil and will be used for request cancellation. If
  1927  // the context is nil a panic will occur. In the future the SDK may create
  1928  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1929  // for more information on using Contexts.
  1930  func (c *ApplicationInsights) ListLogPatternsPagesWithContext(ctx aws.Context, input *ListLogPatternsInput, fn func(*ListLogPatternsOutput, bool) bool, opts ...request.Option) error {
  1931  	p := request.Pagination{
  1932  		NewRequest: func() (*request.Request, error) {
  1933  			var inCpy *ListLogPatternsInput
  1934  			if input != nil {
  1935  				tmp := *input
  1936  				inCpy = &tmp
  1937  			}
  1938  			req, _ := c.ListLogPatternsRequest(inCpy)
  1939  			req.SetContext(ctx)
  1940  			req.ApplyOptions(opts...)
  1941  			return req, nil
  1942  		},
  1943  	}
  1944  
  1945  	for p.Next() {
  1946  		if !fn(p.Page().(*ListLogPatternsOutput), !p.HasNextPage()) {
  1947  			break
  1948  		}
  1949  	}
  1950  
  1951  	return p.Err()
  1952  }
  1953  
  1954  const opListProblems = "ListProblems"
  1955  
  1956  // ListProblemsRequest generates a "aws/request.Request" representing the
  1957  // client's request for the ListProblems operation. The "output" return
  1958  // value will be populated with the request's response once the request completes
  1959  // successfully.
  1960  //
  1961  // Use "Send" method on the returned Request to send the API call to the service.
  1962  // the "output" return value is not valid until after Send returns without error.
  1963  //
  1964  // See ListProblems for more information on using the ListProblems
  1965  // API call, and error handling.
  1966  //
  1967  // This method is useful when you want to inject custom logic or configuration
  1968  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1969  //
  1970  //
  1971  //    // Example sending a request using the ListProblemsRequest method.
  1972  //    req, resp := client.ListProblemsRequest(params)
  1973  //
  1974  //    err := req.Send()
  1975  //    if err == nil { // resp is now filled
  1976  //        fmt.Println(resp)
  1977  //    }
  1978  //
  1979  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListProblems
  1980  func (c *ApplicationInsights) ListProblemsRequest(input *ListProblemsInput) (req *request.Request, output *ListProblemsOutput) {
  1981  	op := &request.Operation{
  1982  		Name:       opListProblems,
  1983  		HTTPMethod: "POST",
  1984  		HTTPPath:   "/",
  1985  		Paginator: &request.Paginator{
  1986  			InputTokens:     []string{"NextToken"},
  1987  			OutputTokens:    []string{"NextToken"},
  1988  			LimitToken:      "MaxResults",
  1989  			TruncationToken: "",
  1990  		},
  1991  	}
  1992  
  1993  	if input == nil {
  1994  		input = &ListProblemsInput{}
  1995  	}
  1996  
  1997  	output = &ListProblemsOutput{}
  1998  	req = c.newRequest(op, input, output)
  1999  	return
  2000  }
  2001  
  2002  // ListProblems API operation for Amazon CloudWatch Application Insights.
  2003  //
  2004  // Lists the problems with your application.
  2005  //
  2006  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2007  // with awserr.Error's Code and Message methods to get detailed information about
  2008  // the error.
  2009  //
  2010  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  2011  // API operation ListProblems for usage and error information.
  2012  //
  2013  // Returned Error Types:
  2014  //   * ValidationException
  2015  //   The parameter is not valid.
  2016  //
  2017  //   * ResourceNotFoundException
  2018  //   The resource does not exist in the customer account.
  2019  //
  2020  //   * InternalServerException
  2021  //   The server encountered an internal error and is unable to complete the request.
  2022  //
  2023  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListProblems
  2024  func (c *ApplicationInsights) ListProblems(input *ListProblemsInput) (*ListProblemsOutput, error) {
  2025  	req, out := c.ListProblemsRequest(input)
  2026  	return out, req.Send()
  2027  }
  2028  
  2029  // ListProblemsWithContext is the same as ListProblems with the addition of
  2030  // the ability to pass a context and additional request options.
  2031  //
  2032  // See ListProblems for details on how to use this API operation.
  2033  //
  2034  // The context must be non-nil and will be used for request cancellation. If
  2035  // the context is nil a panic will occur. In the future the SDK may create
  2036  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2037  // for more information on using Contexts.
  2038  func (c *ApplicationInsights) ListProblemsWithContext(ctx aws.Context, input *ListProblemsInput, opts ...request.Option) (*ListProblemsOutput, error) {
  2039  	req, out := c.ListProblemsRequest(input)
  2040  	req.SetContext(ctx)
  2041  	req.ApplyOptions(opts...)
  2042  	return out, req.Send()
  2043  }
  2044  
  2045  // ListProblemsPages iterates over the pages of a ListProblems operation,
  2046  // calling the "fn" function with the response data for each page. To stop
  2047  // iterating, return false from the fn function.
  2048  //
  2049  // See ListProblems method for more information on how to use this operation.
  2050  //
  2051  // Note: This operation can generate multiple requests to a service.
  2052  //
  2053  //    // Example iterating over at most 3 pages of a ListProblems operation.
  2054  //    pageNum := 0
  2055  //    err := client.ListProblemsPages(params,
  2056  //        func(page *applicationinsights.ListProblemsOutput, lastPage bool) bool {
  2057  //            pageNum++
  2058  //            fmt.Println(page)
  2059  //            return pageNum <= 3
  2060  //        })
  2061  //
  2062  func (c *ApplicationInsights) ListProblemsPages(input *ListProblemsInput, fn func(*ListProblemsOutput, bool) bool) error {
  2063  	return c.ListProblemsPagesWithContext(aws.BackgroundContext(), input, fn)
  2064  }
  2065  
  2066  // ListProblemsPagesWithContext same as ListProblemsPages except
  2067  // it takes a Context and allows setting request options on the pages.
  2068  //
  2069  // The context must be non-nil and will be used for request cancellation. If
  2070  // the context is nil a panic will occur. In the future the SDK may create
  2071  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2072  // for more information on using Contexts.
  2073  func (c *ApplicationInsights) ListProblemsPagesWithContext(ctx aws.Context, input *ListProblemsInput, fn func(*ListProblemsOutput, bool) bool, opts ...request.Option) error {
  2074  	p := request.Pagination{
  2075  		NewRequest: func() (*request.Request, error) {
  2076  			var inCpy *ListProblemsInput
  2077  			if input != nil {
  2078  				tmp := *input
  2079  				inCpy = &tmp
  2080  			}
  2081  			req, _ := c.ListProblemsRequest(inCpy)
  2082  			req.SetContext(ctx)
  2083  			req.ApplyOptions(opts...)
  2084  			return req, nil
  2085  		},
  2086  	}
  2087  
  2088  	for p.Next() {
  2089  		if !fn(p.Page().(*ListProblemsOutput), !p.HasNextPage()) {
  2090  			break
  2091  		}
  2092  	}
  2093  
  2094  	return p.Err()
  2095  }
  2096  
  2097  const opListTagsForResource = "ListTagsForResource"
  2098  
  2099  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  2100  // client's request for the ListTagsForResource operation. The "output" return
  2101  // value will be populated with the request's response once the request completes
  2102  // successfully.
  2103  //
  2104  // Use "Send" method on the returned Request to send the API call to the service.
  2105  // the "output" return value is not valid until after Send returns without error.
  2106  //
  2107  // See ListTagsForResource for more information on using the ListTagsForResource
  2108  // API call, and error handling.
  2109  //
  2110  // This method is useful when you want to inject custom logic or configuration
  2111  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2112  //
  2113  //
  2114  //    // Example sending a request using the ListTagsForResourceRequest method.
  2115  //    req, resp := client.ListTagsForResourceRequest(params)
  2116  //
  2117  //    err := req.Send()
  2118  //    if err == nil { // resp is now filled
  2119  //        fmt.Println(resp)
  2120  //    }
  2121  //
  2122  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListTagsForResource
  2123  func (c *ApplicationInsights) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  2124  	op := &request.Operation{
  2125  		Name:       opListTagsForResource,
  2126  		HTTPMethod: "POST",
  2127  		HTTPPath:   "/",
  2128  	}
  2129  
  2130  	if input == nil {
  2131  		input = &ListTagsForResourceInput{}
  2132  	}
  2133  
  2134  	output = &ListTagsForResourceOutput{}
  2135  	req = c.newRequest(op, input, output)
  2136  	return
  2137  }
  2138  
  2139  // ListTagsForResource API operation for Amazon CloudWatch Application Insights.
  2140  //
  2141  // Retrieve a list of the tags (keys and values) that are associated with a
  2142  // specified application. A tag is a label that you optionally define and associate
  2143  // with an application. Each tag consists of a required tag key and an optional
  2144  // associated tag value. A tag key is a general label that acts as a category
  2145  // for more specific tag values. A tag value acts as a descriptor within a tag
  2146  // key.
  2147  //
  2148  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2149  // with awserr.Error's Code and Message methods to get detailed information about
  2150  // the error.
  2151  //
  2152  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  2153  // API operation ListTagsForResource for usage and error information.
  2154  //
  2155  // Returned Error Types:
  2156  //   * ResourceNotFoundException
  2157  //   The resource does not exist in the customer account.
  2158  //
  2159  //   * ValidationException
  2160  //   The parameter is not valid.
  2161  //
  2162  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/ListTagsForResource
  2163  func (c *ApplicationInsights) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  2164  	req, out := c.ListTagsForResourceRequest(input)
  2165  	return out, req.Send()
  2166  }
  2167  
  2168  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  2169  // the ability to pass a context and additional request options.
  2170  //
  2171  // See ListTagsForResource for details on how to use this API operation.
  2172  //
  2173  // The context must be non-nil and will be used for request cancellation. If
  2174  // the context is nil a panic will occur. In the future the SDK may create
  2175  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2176  // for more information on using Contexts.
  2177  func (c *ApplicationInsights) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  2178  	req, out := c.ListTagsForResourceRequest(input)
  2179  	req.SetContext(ctx)
  2180  	req.ApplyOptions(opts...)
  2181  	return out, req.Send()
  2182  }
  2183  
  2184  const opTagResource = "TagResource"
  2185  
  2186  // TagResourceRequest generates a "aws/request.Request" representing the
  2187  // client's request for the TagResource operation. The "output" return
  2188  // value will be populated with the request's response once the request completes
  2189  // successfully.
  2190  //
  2191  // Use "Send" method on the returned Request to send the API call to the service.
  2192  // the "output" return value is not valid until after Send returns without error.
  2193  //
  2194  // See TagResource for more information on using the TagResource
  2195  // API call, and error handling.
  2196  //
  2197  // This method is useful when you want to inject custom logic or configuration
  2198  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2199  //
  2200  //
  2201  //    // Example sending a request using the TagResourceRequest method.
  2202  //    req, resp := client.TagResourceRequest(params)
  2203  //
  2204  //    err := req.Send()
  2205  //    if err == nil { // resp is now filled
  2206  //        fmt.Println(resp)
  2207  //    }
  2208  //
  2209  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/TagResource
  2210  func (c *ApplicationInsights) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  2211  	op := &request.Operation{
  2212  		Name:       opTagResource,
  2213  		HTTPMethod: "POST",
  2214  		HTTPPath:   "/",
  2215  	}
  2216  
  2217  	if input == nil {
  2218  		input = &TagResourceInput{}
  2219  	}
  2220  
  2221  	output = &TagResourceOutput{}
  2222  	req = c.newRequest(op, input, output)
  2223  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2224  	return
  2225  }
  2226  
  2227  // TagResource API operation for Amazon CloudWatch Application Insights.
  2228  //
  2229  // Add one or more tags (keys and values) to a specified application. A tag
  2230  // is a label that you optionally define and associate with an application.
  2231  // Tags can help you categorize and manage application in different ways, such
  2232  // as by purpose, owner, environment, or other criteria.
  2233  //
  2234  // Each tag consists of a required tag key and an associated tag value, both
  2235  // of which you define. A tag key is a general label that acts as a category
  2236  // for more specific tag values. A tag value acts as a descriptor within a tag
  2237  // key.
  2238  //
  2239  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2240  // with awserr.Error's Code and Message methods to get detailed information about
  2241  // the error.
  2242  //
  2243  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  2244  // API operation TagResource for usage and error information.
  2245  //
  2246  // Returned Error Types:
  2247  //   * ResourceNotFoundException
  2248  //   The resource does not exist in the customer account.
  2249  //
  2250  //   * TooManyTagsException
  2251  //   The number of the provided tags is beyond the limit, or the number of total
  2252  //   tags you are trying to attach to the specified resource exceeds the limit.
  2253  //
  2254  //   * ValidationException
  2255  //   The parameter is not valid.
  2256  //
  2257  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/TagResource
  2258  func (c *ApplicationInsights) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  2259  	req, out := c.TagResourceRequest(input)
  2260  	return out, req.Send()
  2261  }
  2262  
  2263  // TagResourceWithContext is the same as TagResource with the addition of
  2264  // the ability to pass a context and additional request options.
  2265  //
  2266  // See TagResource for details on how to use this API operation.
  2267  //
  2268  // The context must be non-nil and will be used for request cancellation. If
  2269  // the context is nil a panic will occur. In the future the SDK may create
  2270  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2271  // for more information on using Contexts.
  2272  func (c *ApplicationInsights) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  2273  	req, out := c.TagResourceRequest(input)
  2274  	req.SetContext(ctx)
  2275  	req.ApplyOptions(opts...)
  2276  	return out, req.Send()
  2277  }
  2278  
  2279  const opUntagResource = "UntagResource"
  2280  
  2281  // UntagResourceRequest generates a "aws/request.Request" representing the
  2282  // client's request for the UntagResource operation. The "output" return
  2283  // value will be populated with the request's response once the request completes
  2284  // successfully.
  2285  //
  2286  // Use "Send" method on the returned Request to send the API call to the service.
  2287  // the "output" return value is not valid until after Send returns without error.
  2288  //
  2289  // See UntagResource for more information on using the UntagResource
  2290  // API call, and error handling.
  2291  //
  2292  // This method is useful when you want to inject custom logic or configuration
  2293  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2294  //
  2295  //
  2296  //    // Example sending a request using the UntagResourceRequest method.
  2297  //    req, resp := client.UntagResourceRequest(params)
  2298  //
  2299  //    err := req.Send()
  2300  //    if err == nil { // resp is now filled
  2301  //        fmt.Println(resp)
  2302  //    }
  2303  //
  2304  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UntagResource
  2305  func (c *ApplicationInsights) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  2306  	op := &request.Operation{
  2307  		Name:       opUntagResource,
  2308  		HTTPMethod: "POST",
  2309  		HTTPPath:   "/",
  2310  	}
  2311  
  2312  	if input == nil {
  2313  		input = &UntagResourceInput{}
  2314  	}
  2315  
  2316  	output = &UntagResourceOutput{}
  2317  	req = c.newRequest(op, input, output)
  2318  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2319  	return
  2320  }
  2321  
  2322  // UntagResource API operation for Amazon CloudWatch Application Insights.
  2323  //
  2324  // Remove one or more tags (keys and values) from a specified application.
  2325  //
  2326  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2327  // with awserr.Error's Code and Message methods to get detailed information about
  2328  // the error.
  2329  //
  2330  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  2331  // API operation UntagResource for usage and error information.
  2332  //
  2333  // Returned Error Types:
  2334  //   * ResourceNotFoundException
  2335  //   The resource does not exist in the customer account.
  2336  //
  2337  //   * ValidationException
  2338  //   The parameter is not valid.
  2339  //
  2340  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UntagResource
  2341  func (c *ApplicationInsights) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  2342  	req, out := c.UntagResourceRequest(input)
  2343  	return out, req.Send()
  2344  }
  2345  
  2346  // UntagResourceWithContext is the same as UntagResource with the addition of
  2347  // the ability to pass a context and additional request options.
  2348  //
  2349  // See UntagResource for details on how to use this API operation.
  2350  //
  2351  // The context must be non-nil and will be used for request cancellation. If
  2352  // the context is nil a panic will occur. In the future the SDK may create
  2353  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2354  // for more information on using Contexts.
  2355  func (c *ApplicationInsights) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  2356  	req, out := c.UntagResourceRequest(input)
  2357  	req.SetContext(ctx)
  2358  	req.ApplyOptions(opts...)
  2359  	return out, req.Send()
  2360  }
  2361  
  2362  const opUpdateApplication = "UpdateApplication"
  2363  
  2364  // UpdateApplicationRequest generates a "aws/request.Request" representing the
  2365  // client's request for the UpdateApplication operation. The "output" return
  2366  // value will be populated with the request's response once the request completes
  2367  // successfully.
  2368  //
  2369  // Use "Send" method on the returned Request to send the API call to the service.
  2370  // the "output" return value is not valid until after Send returns without error.
  2371  //
  2372  // See UpdateApplication for more information on using the UpdateApplication
  2373  // API call, and error handling.
  2374  //
  2375  // This method is useful when you want to inject custom logic or configuration
  2376  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2377  //
  2378  //
  2379  //    // Example sending a request using the UpdateApplicationRequest method.
  2380  //    req, resp := client.UpdateApplicationRequest(params)
  2381  //
  2382  //    err := req.Send()
  2383  //    if err == nil { // resp is now filled
  2384  //        fmt.Println(resp)
  2385  //    }
  2386  //
  2387  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UpdateApplication
  2388  func (c *ApplicationInsights) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *UpdateApplicationOutput) {
  2389  	op := &request.Operation{
  2390  		Name:       opUpdateApplication,
  2391  		HTTPMethod: "POST",
  2392  		HTTPPath:   "/",
  2393  	}
  2394  
  2395  	if input == nil {
  2396  		input = &UpdateApplicationInput{}
  2397  	}
  2398  
  2399  	output = &UpdateApplicationOutput{}
  2400  	req = c.newRequest(op, input, output)
  2401  	return
  2402  }
  2403  
  2404  // UpdateApplication API operation for Amazon CloudWatch Application Insights.
  2405  //
  2406  // Updates the application.
  2407  //
  2408  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2409  // with awserr.Error's Code and Message methods to get detailed information about
  2410  // the error.
  2411  //
  2412  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  2413  // API operation UpdateApplication for usage and error information.
  2414  //
  2415  // Returned Error Types:
  2416  //   * InternalServerException
  2417  //   The server encountered an internal error and is unable to complete the request.
  2418  //
  2419  //   * ResourceNotFoundException
  2420  //   The resource does not exist in the customer account.
  2421  //
  2422  //   * ValidationException
  2423  //   The parameter is not valid.
  2424  //
  2425  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UpdateApplication
  2426  func (c *ApplicationInsights) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) {
  2427  	req, out := c.UpdateApplicationRequest(input)
  2428  	return out, req.Send()
  2429  }
  2430  
  2431  // UpdateApplicationWithContext is the same as UpdateApplication with the addition of
  2432  // the ability to pass a context and additional request options.
  2433  //
  2434  // See UpdateApplication for details on how to use this API operation.
  2435  //
  2436  // The context must be non-nil and will be used for request cancellation. If
  2437  // the context is nil a panic will occur. In the future the SDK may create
  2438  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2439  // for more information on using Contexts.
  2440  func (c *ApplicationInsights) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*UpdateApplicationOutput, error) {
  2441  	req, out := c.UpdateApplicationRequest(input)
  2442  	req.SetContext(ctx)
  2443  	req.ApplyOptions(opts...)
  2444  	return out, req.Send()
  2445  }
  2446  
  2447  const opUpdateComponent = "UpdateComponent"
  2448  
  2449  // UpdateComponentRequest generates a "aws/request.Request" representing the
  2450  // client's request for the UpdateComponent operation. The "output" return
  2451  // value will be populated with the request's response once the request completes
  2452  // successfully.
  2453  //
  2454  // Use "Send" method on the returned Request to send the API call to the service.
  2455  // the "output" return value is not valid until after Send returns without error.
  2456  //
  2457  // See UpdateComponent for more information on using the UpdateComponent
  2458  // API call, and error handling.
  2459  //
  2460  // This method is useful when you want to inject custom logic or configuration
  2461  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2462  //
  2463  //
  2464  //    // Example sending a request using the UpdateComponentRequest method.
  2465  //    req, resp := client.UpdateComponentRequest(params)
  2466  //
  2467  //    err := req.Send()
  2468  //    if err == nil { // resp is now filled
  2469  //        fmt.Println(resp)
  2470  //    }
  2471  //
  2472  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UpdateComponent
  2473  func (c *ApplicationInsights) UpdateComponentRequest(input *UpdateComponentInput) (req *request.Request, output *UpdateComponentOutput) {
  2474  	op := &request.Operation{
  2475  		Name:       opUpdateComponent,
  2476  		HTTPMethod: "POST",
  2477  		HTTPPath:   "/",
  2478  	}
  2479  
  2480  	if input == nil {
  2481  		input = &UpdateComponentInput{}
  2482  	}
  2483  
  2484  	output = &UpdateComponentOutput{}
  2485  	req = c.newRequest(op, input, output)
  2486  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2487  	return
  2488  }
  2489  
  2490  // UpdateComponent API operation for Amazon CloudWatch Application Insights.
  2491  //
  2492  // Updates the custom component name and/or the list of resources that make
  2493  // up the component.
  2494  //
  2495  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2496  // with awserr.Error's Code and Message methods to get detailed information about
  2497  // the error.
  2498  //
  2499  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  2500  // API operation UpdateComponent for usage and error information.
  2501  //
  2502  // Returned Error Types:
  2503  //   * ResourceInUseException
  2504  //   The resource is already created or in use.
  2505  //
  2506  //   * ResourceNotFoundException
  2507  //   The resource does not exist in the customer account.
  2508  //
  2509  //   * ValidationException
  2510  //   The parameter is not valid.
  2511  //
  2512  //   * InternalServerException
  2513  //   The server encountered an internal error and is unable to complete the request.
  2514  //
  2515  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UpdateComponent
  2516  func (c *ApplicationInsights) UpdateComponent(input *UpdateComponentInput) (*UpdateComponentOutput, error) {
  2517  	req, out := c.UpdateComponentRequest(input)
  2518  	return out, req.Send()
  2519  }
  2520  
  2521  // UpdateComponentWithContext is the same as UpdateComponent with the addition of
  2522  // the ability to pass a context and additional request options.
  2523  //
  2524  // See UpdateComponent for details on how to use this API operation.
  2525  //
  2526  // The context must be non-nil and will be used for request cancellation. If
  2527  // the context is nil a panic will occur. In the future the SDK may create
  2528  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2529  // for more information on using Contexts.
  2530  func (c *ApplicationInsights) UpdateComponentWithContext(ctx aws.Context, input *UpdateComponentInput, opts ...request.Option) (*UpdateComponentOutput, error) {
  2531  	req, out := c.UpdateComponentRequest(input)
  2532  	req.SetContext(ctx)
  2533  	req.ApplyOptions(opts...)
  2534  	return out, req.Send()
  2535  }
  2536  
  2537  const opUpdateComponentConfiguration = "UpdateComponentConfiguration"
  2538  
  2539  // UpdateComponentConfigurationRequest generates a "aws/request.Request" representing the
  2540  // client's request for the UpdateComponentConfiguration operation. The "output" return
  2541  // value will be populated with the request's response once the request completes
  2542  // successfully.
  2543  //
  2544  // Use "Send" method on the returned Request to send the API call to the service.
  2545  // the "output" return value is not valid until after Send returns without error.
  2546  //
  2547  // See UpdateComponentConfiguration for more information on using the UpdateComponentConfiguration
  2548  // API call, and error handling.
  2549  //
  2550  // This method is useful when you want to inject custom logic or configuration
  2551  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2552  //
  2553  //
  2554  //    // Example sending a request using the UpdateComponentConfigurationRequest method.
  2555  //    req, resp := client.UpdateComponentConfigurationRequest(params)
  2556  //
  2557  //    err := req.Send()
  2558  //    if err == nil { // resp is now filled
  2559  //        fmt.Println(resp)
  2560  //    }
  2561  //
  2562  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UpdateComponentConfiguration
  2563  func (c *ApplicationInsights) UpdateComponentConfigurationRequest(input *UpdateComponentConfigurationInput) (req *request.Request, output *UpdateComponentConfigurationOutput) {
  2564  	op := &request.Operation{
  2565  		Name:       opUpdateComponentConfiguration,
  2566  		HTTPMethod: "POST",
  2567  		HTTPPath:   "/",
  2568  	}
  2569  
  2570  	if input == nil {
  2571  		input = &UpdateComponentConfigurationInput{}
  2572  	}
  2573  
  2574  	output = &UpdateComponentConfigurationOutput{}
  2575  	req = c.newRequest(op, input, output)
  2576  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2577  	return
  2578  }
  2579  
  2580  // UpdateComponentConfiguration API operation for Amazon CloudWatch Application Insights.
  2581  //
  2582  // Updates the monitoring configurations for the component. The configuration
  2583  // input parameter is an escaped JSON of the configuration and should match
  2584  // the schema of what is returned by DescribeComponentConfigurationRecommendation.
  2585  //
  2586  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2587  // with awserr.Error's Code and Message methods to get detailed information about
  2588  // the error.
  2589  //
  2590  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  2591  // API operation UpdateComponentConfiguration for usage and error information.
  2592  //
  2593  // Returned Error Types:
  2594  //   * ResourceNotFoundException
  2595  //   The resource does not exist in the customer account.
  2596  //
  2597  //   * ValidationException
  2598  //   The parameter is not valid.
  2599  //
  2600  //   * InternalServerException
  2601  //   The server encountered an internal error and is unable to complete the request.
  2602  //
  2603  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UpdateComponentConfiguration
  2604  func (c *ApplicationInsights) UpdateComponentConfiguration(input *UpdateComponentConfigurationInput) (*UpdateComponentConfigurationOutput, error) {
  2605  	req, out := c.UpdateComponentConfigurationRequest(input)
  2606  	return out, req.Send()
  2607  }
  2608  
  2609  // UpdateComponentConfigurationWithContext is the same as UpdateComponentConfiguration with the addition of
  2610  // the ability to pass a context and additional request options.
  2611  //
  2612  // See UpdateComponentConfiguration for details on how to use this API operation.
  2613  //
  2614  // The context must be non-nil and will be used for request cancellation. If
  2615  // the context is nil a panic will occur. In the future the SDK may create
  2616  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2617  // for more information on using Contexts.
  2618  func (c *ApplicationInsights) UpdateComponentConfigurationWithContext(ctx aws.Context, input *UpdateComponentConfigurationInput, opts ...request.Option) (*UpdateComponentConfigurationOutput, error) {
  2619  	req, out := c.UpdateComponentConfigurationRequest(input)
  2620  	req.SetContext(ctx)
  2621  	req.ApplyOptions(opts...)
  2622  	return out, req.Send()
  2623  }
  2624  
  2625  const opUpdateLogPattern = "UpdateLogPattern"
  2626  
  2627  // UpdateLogPatternRequest generates a "aws/request.Request" representing the
  2628  // client's request for the UpdateLogPattern operation. The "output" return
  2629  // value will be populated with the request's response once the request completes
  2630  // successfully.
  2631  //
  2632  // Use "Send" method on the returned Request to send the API call to the service.
  2633  // the "output" return value is not valid until after Send returns without error.
  2634  //
  2635  // See UpdateLogPattern for more information on using the UpdateLogPattern
  2636  // API call, and error handling.
  2637  //
  2638  // This method is useful when you want to inject custom logic or configuration
  2639  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2640  //
  2641  //
  2642  //    // Example sending a request using the UpdateLogPatternRequest method.
  2643  //    req, resp := client.UpdateLogPatternRequest(params)
  2644  //
  2645  //    err := req.Send()
  2646  //    if err == nil { // resp is now filled
  2647  //        fmt.Println(resp)
  2648  //    }
  2649  //
  2650  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UpdateLogPattern
  2651  func (c *ApplicationInsights) UpdateLogPatternRequest(input *UpdateLogPatternInput) (req *request.Request, output *UpdateLogPatternOutput) {
  2652  	op := &request.Operation{
  2653  		Name:       opUpdateLogPattern,
  2654  		HTTPMethod: "POST",
  2655  		HTTPPath:   "/",
  2656  	}
  2657  
  2658  	if input == nil {
  2659  		input = &UpdateLogPatternInput{}
  2660  	}
  2661  
  2662  	output = &UpdateLogPatternOutput{}
  2663  	req = c.newRequest(op, input, output)
  2664  	return
  2665  }
  2666  
  2667  // UpdateLogPattern API operation for Amazon CloudWatch Application Insights.
  2668  //
  2669  // Adds a log pattern to a LogPatternSet.
  2670  //
  2671  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2672  // with awserr.Error's Code and Message methods to get detailed information about
  2673  // the error.
  2674  //
  2675  // See the AWS API reference guide for Amazon CloudWatch Application Insights's
  2676  // API operation UpdateLogPattern for usage and error information.
  2677  //
  2678  // Returned Error Types:
  2679  //   * ResourceInUseException
  2680  //   The resource is already created or in use.
  2681  //
  2682  //   * ResourceNotFoundException
  2683  //   The resource does not exist in the customer account.
  2684  //
  2685  //   * ValidationException
  2686  //   The parameter is not valid.
  2687  //
  2688  //   * InternalServerException
  2689  //   The server encountered an internal error and is unable to complete the request.
  2690  //
  2691  // See also, https://docs.aws.amazon.com/goto/WebAPI/application-insights-2018-11-25/UpdateLogPattern
  2692  func (c *ApplicationInsights) UpdateLogPattern(input *UpdateLogPatternInput) (*UpdateLogPatternOutput, error) {
  2693  	req, out := c.UpdateLogPatternRequest(input)
  2694  	return out, req.Send()
  2695  }
  2696  
  2697  // UpdateLogPatternWithContext is the same as UpdateLogPattern with the addition of
  2698  // the ability to pass a context and additional request options.
  2699  //
  2700  // See UpdateLogPattern for details on how to use this API operation.
  2701  //
  2702  // The context must be non-nil and will be used for request cancellation. If
  2703  // the context is nil a panic will occur. In the future the SDK may create
  2704  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2705  // for more information on using Contexts.
  2706  func (c *ApplicationInsights) UpdateLogPatternWithContext(ctx aws.Context, input *UpdateLogPatternInput, opts ...request.Option) (*UpdateLogPatternOutput, error) {
  2707  	req, out := c.UpdateLogPatternRequest(input)
  2708  	req.SetContext(ctx)
  2709  	req.ApplyOptions(opts...)
  2710  	return out, req.Send()
  2711  }
  2712  
  2713  // User does not have permissions to perform this action.
  2714  type AccessDeniedException struct {
  2715  	_            struct{}                  `type:"structure"`
  2716  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  2717  
  2718  	Message_ *string `locationName:"Message" type:"string"`
  2719  }
  2720  
  2721  // String returns the string representation.
  2722  //
  2723  // API parameter values that are decorated as "sensitive" in the API will not
  2724  // be included in the string output. The member name will be present, but the
  2725  // value will be replaced with "sensitive".
  2726  func (s AccessDeniedException) String() string {
  2727  	return awsutil.Prettify(s)
  2728  }
  2729  
  2730  // GoString returns the string representation.
  2731  //
  2732  // API parameter values that are decorated as "sensitive" in the API will not
  2733  // be included in the string output. The member name will be present, but the
  2734  // value will be replaced with "sensitive".
  2735  func (s AccessDeniedException) GoString() string {
  2736  	return s.String()
  2737  }
  2738  
  2739  func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
  2740  	return &AccessDeniedException{
  2741  		RespMetadata: v,
  2742  	}
  2743  }
  2744  
  2745  // Code returns the exception type name.
  2746  func (s *AccessDeniedException) Code() string {
  2747  	return "AccessDeniedException"
  2748  }
  2749  
  2750  // Message returns the exception's message.
  2751  func (s *AccessDeniedException) Message() string {
  2752  	if s.Message_ != nil {
  2753  		return *s.Message_
  2754  	}
  2755  	return ""
  2756  }
  2757  
  2758  // OrigErr always returns nil, satisfies awserr.Error interface.
  2759  func (s *AccessDeniedException) OrigErr() error {
  2760  	return nil
  2761  }
  2762  
  2763  func (s *AccessDeniedException) Error() string {
  2764  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  2765  }
  2766  
  2767  // Status code returns the HTTP status code for the request's response error.
  2768  func (s *AccessDeniedException) StatusCode() int {
  2769  	return s.RespMetadata.StatusCode
  2770  }
  2771  
  2772  // RequestID returns the service's response RequestID for request.
  2773  func (s *AccessDeniedException) RequestID() string {
  2774  	return s.RespMetadata.RequestID
  2775  }
  2776  
  2777  // Describes a standalone resource or similarly grouped resources that the application
  2778  // is made up of.
  2779  type ApplicationComponent struct {
  2780  	_ struct{} `type:"structure"`
  2781  
  2782  	// The name of the component.
  2783  	ComponentName *string `min:"1" type:"string"`
  2784  
  2785  	// If logging is supported for the resource type, indicates whether the component
  2786  	// has configured logs to be monitored.
  2787  	ComponentRemarks *string `type:"string"`
  2788  
  2789  	// Workloads detected in the application component.
  2790  	DetectedWorkload map[string]map[string]*string `type:"map"`
  2791  
  2792  	// Indicates whether the application component is monitored.
  2793  	Monitor *bool `type:"boolean"`
  2794  
  2795  	// The operating system of the component.
  2796  	OsType *string `type:"string" enum:"OsType"`
  2797  
  2798  	// The resource type. Supported resource types include EC2 instances, Auto Scaling
  2799  	// group, Classic ELB, Application ELB, and SQS Queue.
  2800  	ResourceType *string `min:"1" type:"string"`
  2801  
  2802  	// The stack tier of the application component.
  2803  	Tier *string `min:"1" type:"string" enum:"Tier"`
  2804  }
  2805  
  2806  // String returns the string representation.
  2807  //
  2808  // API parameter values that are decorated as "sensitive" in the API will not
  2809  // be included in the string output. The member name will be present, but the
  2810  // value will be replaced with "sensitive".
  2811  func (s ApplicationComponent) String() string {
  2812  	return awsutil.Prettify(s)
  2813  }
  2814  
  2815  // GoString returns the string representation.
  2816  //
  2817  // API parameter values that are decorated as "sensitive" in the API will not
  2818  // be included in the string output. The member name will be present, but the
  2819  // value will be replaced with "sensitive".
  2820  func (s ApplicationComponent) GoString() string {
  2821  	return s.String()
  2822  }
  2823  
  2824  // SetComponentName sets the ComponentName field's value.
  2825  func (s *ApplicationComponent) SetComponentName(v string) *ApplicationComponent {
  2826  	s.ComponentName = &v
  2827  	return s
  2828  }
  2829  
  2830  // SetComponentRemarks sets the ComponentRemarks field's value.
  2831  func (s *ApplicationComponent) SetComponentRemarks(v string) *ApplicationComponent {
  2832  	s.ComponentRemarks = &v
  2833  	return s
  2834  }
  2835  
  2836  // SetDetectedWorkload sets the DetectedWorkload field's value.
  2837  func (s *ApplicationComponent) SetDetectedWorkload(v map[string]map[string]*string) *ApplicationComponent {
  2838  	s.DetectedWorkload = v
  2839  	return s
  2840  }
  2841  
  2842  // SetMonitor sets the Monitor field's value.
  2843  func (s *ApplicationComponent) SetMonitor(v bool) *ApplicationComponent {
  2844  	s.Monitor = &v
  2845  	return s
  2846  }
  2847  
  2848  // SetOsType sets the OsType field's value.
  2849  func (s *ApplicationComponent) SetOsType(v string) *ApplicationComponent {
  2850  	s.OsType = &v
  2851  	return s
  2852  }
  2853  
  2854  // SetResourceType sets the ResourceType field's value.
  2855  func (s *ApplicationComponent) SetResourceType(v string) *ApplicationComponent {
  2856  	s.ResourceType = &v
  2857  	return s
  2858  }
  2859  
  2860  // SetTier sets the Tier field's value.
  2861  func (s *ApplicationComponent) SetTier(v string) *ApplicationComponent {
  2862  	s.Tier = &v
  2863  	return s
  2864  }
  2865  
  2866  // Describes the status of the application.
  2867  type ApplicationInfo struct {
  2868  	_ struct{} `type:"structure"`
  2869  
  2870  	// Indicates whether Application Insights can listen to CloudWatch events for
  2871  	// the application resources, such as instance terminated, failed deployment,
  2872  	// and others.
  2873  	CWEMonitorEnabled *bool `type:"boolean"`
  2874  
  2875  	// The lifecycle of the application.
  2876  	LifeCycle *string `type:"string"`
  2877  
  2878  	// Indicates whether Application Insights will create opsItems for any problem
  2879  	// detected by Application Insights for an application.
  2880  	OpsCenterEnabled *bool `type:"boolean"`
  2881  
  2882  	// The SNS topic provided to Application Insights that is associated to the
  2883  	// created opsItems to receive SNS notifications for opsItem updates.
  2884  	OpsItemSNSTopicArn *string `min:"20" type:"string"`
  2885  
  2886  	// The issues on the user side that block Application Insights from successfully
  2887  	// monitoring an application. Example remarks include:
  2888  	//
  2889  	//    * “Configuring application, detected 1 Errors, 3 Warnings”
  2890  	//
  2891  	//    * “Configuring application, detected 1 Unconfigured Components”
  2892  	Remarks *string `type:"string"`
  2893  
  2894  	// The name of the resource group used for the application.
  2895  	ResourceGroupName *string `min:"1" type:"string"`
  2896  }
  2897  
  2898  // String returns the string representation.
  2899  //
  2900  // API parameter values that are decorated as "sensitive" in the API will not
  2901  // be included in the string output. The member name will be present, but the
  2902  // value will be replaced with "sensitive".
  2903  func (s ApplicationInfo) String() string {
  2904  	return awsutil.Prettify(s)
  2905  }
  2906  
  2907  // GoString returns the string representation.
  2908  //
  2909  // API parameter values that are decorated as "sensitive" in the API will not
  2910  // be included in the string output. The member name will be present, but the
  2911  // value will be replaced with "sensitive".
  2912  func (s ApplicationInfo) GoString() string {
  2913  	return s.String()
  2914  }
  2915  
  2916  // SetCWEMonitorEnabled sets the CWEMonitorEnabled field's value.
  2917  func (s *ApplicationInfo) SetCWEMonitorEnabled(v bool) *ApplicationInfo {
  2918  	s.CWEMonitorEnabled = &v
  2919  	return s
  2920  }
  2921  
  2922  // SetLifeCycle sets the LifeCycle field's value.
  2923  func (s *ApplicationInfo) SetLifeCycle(v string) *ApplicationInfo {
  2924  	s.LifeCycle = &v
  2925  	return s
  2926  }
  2927  
  2928  // SetOpsCenterEnabled sets the OpsCenterEnabled field's value.
  2929  func (s *ApplicationInfo) SetOpsCenterEnabled(v bool) *ApplicationInfo {
  2930  	s.OpsCenterEnabled = &v
  2931  	return s
  2932  }
  2933  
  2934  // SetOpsItemSNSTopicArn sets the OpsItemSNSTopicArn field's value.
  2935  func (s *ApplicationInfo) SetOpsItemSNSTopicArn(v string) *ApplicationInfo {
  2936  	s.OpsItemSNSTopicArn = &v
  2937  	return s
  2938  }
  2939  
  2940  // SetRemarks sets the Remarks field's value.
  2941  func (s *ApplicationInfo) SetRemarks(v string) *ApplicationInfo {
  2942  	s.Remarks = &v
  2943  	return s
  2944  }
  2945  
  2946  // SetResourceGroupName sets the ResourceGroupName field's value.
  2947  func (s *ApplicationInfo) SetResourceGroupName(v string) *ApplicationInfo {
  2948  	s.ResourceGroupName = &v
  2949  	return s
  2950  }
  2951  
  2952  // The request is not understood by the server.
  2953  type BadRequestException struct {
  2954  	_            struct{}                  `type:"structure"`
  2955  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  2956  
  2957  	Message_ *string `locationName:"Message" type:"string"`
  2958  }
  2959  
  2960  // String returns the string representation.
  2961  //
  2962  // API parameter values that are decorated as "sensitive" in the API will not
  2963  // be included in the string output. The member name will be present, but the
  2964  // value will be replaced with "sensitive".
  2965  func (s BadRequestException) String() string {
  2966  	return awsutil.Prettify(s)
  2967  }
  2968  
  2969  // GoString returns the string representation.
  2970  //
  2971  // API parameter values that are decorated as "sensitive" in the API will not
  2972  // be included in the string output. The member name will be present, but the
  2973  // value will be replaced with "sensitive".
  2974  func (s BadRequestException) GoString() string {
  2975  	return s.String()
  2976  }
  2977  
  2978  func newErrorBadRequestException(v protocol.ResponseMetadata) error {
  2979  	return &BadRequestException{
  2980  		RespMetadata: v,
  2981  	}
  2982  }
  2983  
  2984  // Code returns the exception type name.
  2985  func (s *BadRequestException) Code() string {
  2986  	return "BadRequestException"
  2987  }
  2988  
  2989  // Message returns the exception's message.
  2990  func (s *BadRequestException) Message() string {
  2991  	if s.Message_ != nil {
  2992  		return *s.Message_
  2993  	}
  2994  	return ""
  2995  }
  2996  
  2997  // OrigErr always returns nil, satisfies awserr.Error interface.
  2998  func (s *BadRequestException) OrigErr() error {
  2999  	return nil
  3000  }
  3001  
  3002  func (s *BadRequestException) Error() string {
  3003  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  3004  }
  3005  
  3006  // Status code returns the HTTP status code for the request's response error.
  3007  func (s *BadRequestException) StatusCode() int {
  3008  	return s.RespMetadata.StatusCode
  3009  }
  3010  
  3011  // RequestID returns the service's response RequestID for request.
  3012  func (s *BadRequestException) RequestID() string {
  3013  	return s.RespMetadata.RequestID
  3014  }
  3015  
  3016  // The event information.
  3017  type ConfigurationEvent struct {
  3018  	_ struct{} `type:"structure"`
  3019  
  3020  	// The details of the event in plain text.
  3021  	EventDetail *string `type:"string"`
  3022  
  3023  	// The name of the resource Application Insights attempted to configure.
  3024  	EventResourceName *string `type:"string"`
  3025  
  3026  	// The resource type that Application Insights attempted to configure, for example,
  3027  	// CLOUDWATCH_ALARM.
  3028  	EventResourceType *string `type:"string" enum:"ConfigurationEventResourceType"`
  3029  
  3030  	// The status of the configuration update event. Possible values include INFO,
  3031  	// WARN, and ERROR.
  3032  	EventStatus *string `type:"string" enum:"ConfigurationEventStatus"`
  3033  
  3034  	// The timestamp of the event.
  3035  	EventTime *time.Time `type:"timestamp"`
  3036  
  3037  	// The resource monitored by Application Insights.
  3038  	MonitoredResourceARN *string `type:"string"`
  3039  }
  3040  
  3041  // String returns the string representation.
  3042  //
  3043  // API parameter values that are decorated as "sensitive" in the API will not
  3044  // be included in the string output. The member name will be present, but the
  3045  // value will be replaced with "sensitive".
  3046  func (s ConfigurationEvent) String() string {
  3047  	return awsutil.Prettify(s)
  3048  }
  3049  
  3050  // GoString returns the string representation.
  3051  //
  3052  // API parameter values that are decorated as "sensitive" in the API will not
  3053  // be included in the string output. The member name will be present, but the
  3054  // value will be replaced with "sensitive".
  3055  func (s ConfigurationEvent) GoString() string {
  3056  	return s.String()
  3057  }
  3058  
  3059  // SetEventDetail sets the EventDetail field's value.
  3060  func (s *ConfigurationEvent) SetEventDetail(v string) *ConfigurationEvent {
  3061  	s.EventDetail = &v
  3062  	return s
  3063  }
  3064  
  3065  // SetEventResourceName sets the EventResourceName field's value.
  3066  func (s *ConfigurationEvent) SetEventResourceName(v string) *ConfigurationEvent {
  3067  	s.EventResourceName = &v
  3068  	return s
  3069  }
  3070  
  3071  // SetEventResourceType sets the EventResourceType field's value.
  3072  func (s *ConfigurationEvent) SetEventResourceType(v string) *ConfigurationEvent {
  3073  	s.EventResourceType = &v
  3074  	return s
  3075  }
  3076  
  3077  // SetEventStatus sets the EventStatus field's value.
  3078  func (s *ConfigurationEvent) SetEventStatus(v string) *ConfigurationEvent {
  3079  	s.EventStatus = &v
  3080  	return s
  3081  }
  3082  
  3083  // SetEventTime sets the EventTime field's value.
  3084  func (s *ConfigurationEvent) SetEventTime(v time.Time) *ConfigurationEvent {
  3085  	s.EventTime = &v
  3086  	return s
  3087  }
  3088  
  3089  // SetMonitoredResourceARN sets the MonitoredResourceARN field's value.
  3090  func (s *ConfigurationEvent) SetMonitoredResourceARN(v string) *ConfigurationEvent {
  3091  	s.MonitoredResourceARN = &v
  3092  	return s
  3093  }
  3094  
  3095  type CreateApplicationInput struct {
  3096  	_ struct{} `type:"structure"`
  3097  
  3098  	// Indicates whether Application Insights can listen to CloudWatch events for
  3099  	// the application resources, such as instance terminated, failed deployment,
  3100  	// and others.
  3101  	CWEMonitorEnabled *bool `type:"boolean"`
  3102  
  3103  	// When set to true, creates opsItems for any problems detected on an application.
  3104  	OpsCenterEnabled *bool `type:"boolean"`
  3105  
  3106  	// The SNS topic provided to Application Insights that is associated to the
  3107  	// created opsItem. Allows you to receive notifications for updates to the opsItem.
  3108  	OpsItemSNSTopicArn *string `min:"20" type:"string"`
  3109  
  3110  	// The name of the resource group.
  3111  	//
  3112  	// ResourceGroupName is a required field
  3113  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  3114  
  3115  	// List of tags to add to the application. tag key (Key) and an associated tag
  3116  	// value (Value). The maximum length of a tag key is 128 characters. The maximum
  3117  	// length of a tag value is 256 characters.
  3118  	Tags []*Tag `type:"list"`
  3119  }
  3120  
  3121  // String returns the string representation.
  3122  //
  3123  // API parameter values that are decorated as "sensitive" in the API will not
  3124  // be included in the string output. The member name will be present, but the
  3125  // value will be replaced with "sensitive".
  3126  func (s CreateApplicationInput) String() string {
  3127  	return awsutil.Prettify(s)
  3128  }
  3129  
  3130  // GoString returns the string representation.
  3131  //
  3132  // API parameter values that are decorated as "sensitive" in the API will not
  3133  // be included in the string output. The member name will be present, but the
  3134  // value will be replaced with "sensitive".
  3135  func (s CreateApplicationInput) GoString() string {
  3136  	return s.String()
  3137  }
  3138  
  3139  // Validate inspects the fields of the type to determine if they are valid.
  3140  func (s *CreateApplicationInput) Validate() error {
  3141  	invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"}
  3142  	if s.OpsItemSNSTopicArn != nil && len(*s.OpsItemSNSTopicArn) < 20 {
  3143  		invalidParams.Add(request.NewErrParamMinLen("OpsItemSNSTopicArn", 20))
  3144  	}
  3145  	if s.ResourceGroupName == nil {
  3146  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  3147  	}
  3148  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  3149  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  3150  	}
  3151  	if s.Tags != nil {
  3152  		for i, v := range s.Tags {
  3153  			if v == nil {
  3154  				continue
  3155  			}
  3156  			if err := v.Validate(); err != nil {
  3157  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  3158  			}
  3159  		}
  3160  	}
  3161  
  3162  	if invalidParams.Len() > 0 {
  3163  		return invalidParams
  3164  	}
  3165  	return nil
  3166  }
  3167  
  3168  // SetCWEMonitorEnabled sets the CWEMonitorEnabled field's value.
  3169  func (s *CreateApplicationInput) SetCWEMonitorEnabled(v bool) *CreateApplicationInput {
  3170  	s.CWEMonitorEnabled = &v
  3171  	return s
  3172  }
  3173  
  3174  // SetOpsCenterEnabled sets the OpsCenterEnabled field's value.
  3175  func (s *CreateApplicationInput) SetOpsCenterEnabled(v bool) *CreateApplicationInput {
  3176  	s.OpsCenterEnabled = &v
  3177  	return s
  3178  }
  3179  
  3180  // SetOpsItemSNSTopicArn sets the OpsItemSNSTopicArn field's value.
  3181  func (s *CreateApplicationInput) SetOpsItemSNSTopicArn(v string) *CreateApplicationInput {
  3182  	s.OpsItemSNSTopicArn = &v
  3183  	return s
  3184  }
  3185  
  3186  // SetResourceGroupName sets the ResourceGroupName field's value.
  3187  func (s *CreateApplicationInput) SetResourceGroupName(v string) *CreateApplicationInput {
  3188  	s.ResourceGroupName = &v
  3189  	return s
  3190  }
  3191  
  3192  // SetTags sets the Tags field's value.
  3193  func (s *CreateApplicationInput) SetTags(v []*Tag) *CreateApplicationInput {
  3194  	s.Tags = v
  3195  	return s
  3196  }
  3197  
  3198  type CreateApplicationOutput struct {
  3199  	_ struct{} `type:"structure"`
  3200  
  3201  	// Information about the application.
  3202  	ApplicationInfo *ApplicationInfo `type:"structure"`
  3203  }
  3204  
  3205  // String returns the string representation.
  3206  //
  3207  // API parameter values that are decorated as "sensitive" in the API will not
  3208  // be included in the string output. The member name will be present, but the
  3209  // value will be replaced with "sensitive".
  3210  func (s CreateApplicationOutput) String() string {
  3211  	return awsutil.Prettify(s)
  3212  }
  3213  
  3214  // GoString returns the string representation.
  3215  //
  3216  // API parameter values that are decorated as "sensitive" in the API will not
  3217  // be included in the string output. The member name will be present, but the
  3218  // value will be replaced with "sensitive".
  3219  func (s CreateApplicationOutput) GoString() string {
  3220  	return s.String()
  3221  }
  3222  
  3223  // SetApplicationInfo sets the ApplicationInfo field's value.
  3224  func (s *CreateApplicationOutput) SetApplicationInfo(v *ApplicationInfo) *CreateApplicationOutput {
  3225  	s.ApplicationInfo = v
  3226  	return s
  3227  }
  3228  
  3229  type CreateComponentInput struct {
  3230  	_ struct{} `type:"structure"`
  3231  
  3232  	// The name of the component.
  3233  	//
  3234  	// ComponentName is a required field
  3235  	ComponentName *string `min:"1" type:"string" required:"true"`
  3236  
  3237  	// The name of the resource group.
  3238  	//
  3239  	// ResourceGroupName is a required field
  3240  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  3241  
  3242  	// The list of resource ARNs that belong to the component.
  3243  	//
  3244  	// ResourceList is a required field
  3245  	ResourceList []*string `type:"list" required:"true"`
  3246  }
  3247  
  3248  // String returns the string representation.
  3249  //
  3250  // API parameter values that are decorated as "sensitive" in the API will not
  3251  // be included in the string output. The member name will be present, but the
  3252  // value will be replaced with "sensitive".
  3253  func (s CreateComponentInput) String() string {
  3254  	return awsutil.Prettify(s)
  3255  }
  3256  
  3257  // GoString returns the string representation.
  3258  //
  3259  // API parameter values that are decorated as "sensitive" in the API will not
  3260  // be included in the string output. The member name will be present, but the
  3261  // value will be replaced with "sensitive".
  3262  func (s CreateComponentInput) GoString() string {
  3263  	return s.String()
  3264  }
  3265  
  3266  // Validate inspects the fields of the type to determine if they are valid.
  3267  func (s *CreateComponentInput) Validate() error {
  3268  	invalidParams := request.ErrInvalidParams{Context: "CreateComponentInput"}
  3269  	if s.ComponentName == nil {
  3270  		invalidParams.Add(request.NewErrParamRequired("ComponentName"))
  3271  	}
  3272  	if s.ComponentName != nil && len(*s.ComponentName) < 1 {
  3273  		invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1))
  3274  	}
  3275  	if s.ResourceGroupName == nil {
  3276  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  3277  	}
  3278  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  3279  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  3280  	}
  3281  	if s.ResourceList == nil {
  3282  		invalidParams.Add(request.NewErrParamRequired("ResourceList"))
  3283  	}
  3284  
  3285  	if invalidParams.Len() > 0 {
  3286  		return invalidParams
  3287  	}
  3288  	return nil
  3289  }
  3290  
  3291  // SetComponentName sets the ComponentName field's value.
  3292  func (s *CreateComponentInput) SetComponentName(v string) *CreateComponentInput {
  3293  	s.ComponentName = &v
  3294  	return s
  3295  }
  3296  
  3297  // SetResourceGroupName sets the ResourceGroupName field's value.
  3298  func (s *CreateComponentInput) SetResourceGroupName(v string) *CreateComponentInput {
  3299  	s.ResourceGroupName = &v
  3300  	return s
  3301  }
  3302  
  3303  // SetResourceList sets the ResourceList field's value.
  3304  func (s *CreateComponentInput) SetResourceList(v []*string) *CreateComponentInput {
  3305  	s.ResourceList = v
  3306  	return s
  3307  }
  3308  
  3309  type CreateComponentOutput struct {
  3310  	_ struct{} `type:"structure"`
  3311  }
  3312  
  3313  // String returns the string representation.
  3314  //
  3315  // API parameter values that are decorated as "sensitive" in the API will not
  3316  // be included in the string output. The member name will be present, but the
  3317  // value will be replaced with "sensitive".
  3318  func (s CreateComponentOutput) String() string {
  3319  	return awsutil.Prettify(s)
  3320  }
  3321  
  3322  // GoString returns the string representation.
  3323  //
  3324  // API parameter values that are decorated as "sensitive" in the API will not
  3325  // be included in the string output. The member name will be present, but the
  3326  // value will be replaced with "sensitive".
  3327  func (s CreateComponentOutput) GoString() string {
  3328  	return s.String()
  3329  }
  3330  
  3331  type CreateLogPatternInput struct {
  3332  	_ struct{} `type:"structure"`
  3333  
  3334  	// The log pattern. The pattern must be DFA compatible. Patterns that utilize
  3335  	// forward lookahead or backreference constructions are not supported.
  3336  	//
  3337  	// Pattern is a required field
  3338  	Pattern *string `min:"1" type:"string" required:"true"`
  3339  
  3340  	// The name of the log pattern.
  3341  	//
  3342  	// PatternName is a required field
  3343  	PatternName *string `min:"1" type:"string" required:"true"`
  3344  
  3345  	// The name of the log pattern set.
  3346  	//
  3347  	// PatternSetName is a required field
  3348  	PatternSetName *string `min:"1" type:"string" required:"true"`
  3349  
  3350  	// Rank of the log pattern. Must be a value between 1 and 1,000,000. The patterns
  3351  	// are sorted by rank, so we recommend that you set your highest priority patterns
  3352  	// with the lowest rank. A pattern of rank 1 will be the first to get matched
  3353  	// to a log line. A pattern of rank 1,000,000 will be last to get matched. When
  3354  	// you configure custom log patterns from the console, a Low severity pattern
  3355  	// translates to a 750,000 rank. A Medium severity pattern translates to a 500,000
  3356  	// rank. And a High severity pattern translates to a 250,000 rank. Rank values
  3357  	// less than 1 or greater than 1,000,000 are reserved for AWS-provided patterns.
  3358  	//
  3359  	// Rank is a required field
  3360  	Rank *int64 `type:"integer" required:"true"`
  3361  
  3362  	// The name of the resource group.
  3363  	//
  3364  	// ResourceGroupName is a required field
  3365  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  3366  }
  3367  
  3368  // String returns the string representation.
  3369  //
  3370  // API parameter values that are decorated as "sensitive" in the API will not
  3371  // be included in the string output. The member name will be present, but the
  3372  // value will be replaced with "sensitive".
  3373  func (s CreateLogPatternInput) String() string {
  3374  	return awsutil.Prettify(s)
  3375  }
  3376  
  3377  // GoString returns the string representation.
  3378  //
  3379  // API parameter values that are decorated as "sensitive" in the API will not
  3380  // be included in the string output. The member name will be present, but the
  3381  // value will be replaced with "sensitive".
  3382  func (s CreateLogPatternInput) GoString() string {
  3383  	return s.String()
  3384  }
  3385  
  3386  // Validate inspects the fields of the type to determine if they are valid.
  3387  func (s *CreateLogPatternInput) Validate() error {
  3388  	invalidParams := request.ErrInvalidParams{Context: "CreateLogPatternInput"}
  3389  	if s.Pattern == nil {
  3390  		invalidParams.Add(request.NewErrParamRequired("Pattern"))
  3391  	}
  3392  	if s.Pattern != nil && len(*s.Pattern) < 1 {
  3393  		invalidParams.Add(request.NewErrParamMinLen("Pattern", 1))
  3394  	}
  3395  	if s.PatternName == nil {
  3396  		invalidParams.Add(request.NewErrParamRequired("PatternName"))
  3397  	}
  3398  	if s.PatternName != nil && len(*s.PatternName) < 1 {
  3399  		invalidParams.Add(request.NewErrParamMinLen("PatternName", 1))
  3400  	}
  3401  	if s.PatternSetName == nil {
  3402  		invalidParams.Add(request.NewErrParamRequired("PatternSetName"))
  3403  	}
  3404  	if s.PatternSetName != nil && len(*s.PatternSetName) < 1 {
  3405  		invalidParams.Add(request.NewErrParamMinLen("PatternSetName", 1))
  3406  	}
  3407  	if s.Rank == nil {
  3408  		invalidParams.Add(request.NewErrParamRequired("Rank"))
  3409  	}
  3410  	if s.ResourceGroupName == nil {
  3411  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  3412  	}
  3413  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  3414  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  3415  	}
  3416  
  3417  	if invalidParams.Len() > 0 {
  3418  		return invalidParams
  3419  	}
  3420  	return nil
  3421  }
  3422  
  3423  // SetPattern sets the Pattern field's value.
  3424  func (s *CreateLogPatternInput) SetPattern(v string) *CreateLogPatternInput {
  3425  	s.Pattern = &v
  3426  	return s
  3427  }
  3428  
  3429  // SetPatternName sets the PatternName field's value.
  3430  func (s *CreateLogPatternInput) SetPatternName(v string) *CreateLogPatternInput {
  3431  	s.PatternName = &v
  3432  	return s
  3433  }
  3434  
  3435  // SetPatternSetName sets the PatternSetName field's value.
  3436  func (s *CreateLogPatternInput) SetPatternSetName(v string) *CreateLogPatternInput {
  3437  	s.PatternSetName = &v
  3438  	return s
  3439  }
  3440  
  3441  // SetRank sets the Rank field's value.
  3442  func (s *CreateLogPatternInput) SetRank(v int64) *CreateLogPatternInput {
  3443  	s.Rank = &v
  3444  	return s
  3445  }
  3446  
  3447  // SetResourceGroupName sets the ResourceGroupName field's value.
  3448  func (s *CreateLogPatternInput) SetResourceGroupName(v string) *CreateLogPatternInput {
  3449  	s.ResourceGroupName = &v
  3450  	return s
  3451  }
  3452  
  3453  type CreateLogPatternOutput struct {
  3454  	_ struct{} `type:"structure"`
  3455  
  3456  	// The successfully created log pattern.
  3457  	LogPattern *LogPattern `type:"structure"`
  3458  
  3459  	// The name of the resource group.
  3460  	ResourceGroupName *string `min:"1" type:"string"`
  3461  }
  3462  
  3463  // String returns the string representation.
  3464  //
  3465  // API parameter values that are decorated as "sensitive" in the API will not
  3466  // be included in the string output. The member name will be present, but the
  3467  // value will be replaced with "sensitive".
  3468  func (s CreateLogPatternOutput) String() string {
  3469  	return awsutil.Prettify(s)
  3470  }
  3471  
  3472  // GoString returns the string representation.
  3473  //
  3474  // API parameter values that are decorated as "sensitive" in the API will not
  3475  // be included in the string output. The member name will be present, but the
  3476  // value will be replaced with "sensitive".
  3477  func (s CreateLogPatternOutput) GoString() string {
  3478  	return s.String()
  3479  }
  3480  
  3481  // SetLogPattern sets the LogPattern field's value.
  3482  func (s *CreateLogPatternOutput) SetLogPattern(v *LogPattern) *CreateLogPatternOutput {
  3483  	s.LogPattern = v
  3484  	return s
  3485  }
  3486  
  3487  // SetResourceGroupName sets the ResourceGroupName field's value.
  3488  func (s *CreateLogPatternOutput) SetResourceGroupName(v string) *CreateLogPatternOutput {
  3489  	s.ResourceGroupName = &v
  3490  	return s
  3491  }
  3492  
  3493  type DeleteApplicationInput struct {
  3494  	_ struct{} `type:"structure"`
  3495  
  3496  	// The name of the resource group.
  3497  	//
  3498  	// ResourceGroupName is a required field
  3499  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  3500  }
  3501  
  3502  // String returns the string representation.
  3503  //
  3504  // API parameter values that are decorated as "sensitive" in the API will not
  3505  // be included in the string output. The member name will be present, but the
  3506  // value will be replaced with "sensitive".
  3507  func (s DeleteApplicationInput) String() string {
  3508  	return awsutil.Prettify(s)
  3509  }
  3510  
  3511  // GoString returns the string representation.
  3512  //
  3513  // API parameter values that are decorated as "sensitive" in the API will not
  3514  // be included in the string output. The member name will be present, but the
  3515  // value will be replaced with "sensitive".
  3516  func (s DeleteApplicationInput) GoString() string {
  3517  	return s.String()
  3518  }
  3519  
  3520  // Validate inspects the fields of the type to determine if they are valid.
  3521  func (s *DeleteApplicationInput) Validate() error {
  3522  	invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"}
  3523  	if s.ResourceGroupName == nil {
  3524  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  3525  	}
  3526  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  3527  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  3528  	}
  3529  
  3530  	if invalidParams.Len() > 0 {
  3531  		return invalidParams
  3532  	}
  3533  	return nil
  3534  }
  3535  
  3536  // SetResourceGroupName sets the ResourceGroupName field's value.
  3537  func (s *DeleteApplicationInput) SetResourceGroupName(v string) *DeleteApplicationInput {
  3538  	s.ResourceGroupName = &v
  3539  	return s
  3540  }
  3541  
  3542  type DeleteApplicationOutput struct {
  3543  	_ struct{} `type:"structure"`
  3544  }
  3545  
  3546  // String returns the string representation.
  3547  //
  3548  // API parameter values that are decorated as "sensitive" in the API will not
  3549  // be included in the string output. The member name will be present, but the
  3550  // value will be replaced with "sensitive".
  3551  func (s DeleteApplicationOutput) String() string {
  3552  	return awsutil.Prettify(s)
  3553  }
  3554  
  3555  // GoString returns the string representation.
  3556  //
  3557  // API parameter values that are decorated as "sensitive" in the API will not
  3558  // be included in the string output. The member name will be present, but the
  3559  // value will be replaced with "sensitive".
  3560  func (s DeleteApplicationOutput) GoString() string {
  3561  	return s.String()
  3562  }
  3563  
  3564  type DeleteComponentInput struct {
  3565  	_ struct{} `type:"structure"`
  3566  
  3567  	// The name of the component.
  3568  	//
  3569  	// ComponentName is a required field
  3570  	ComponentName *string `min:"1" type:"string" required:"true"`
  3571  
  3572  	// The name of the resource group.
  3573  	//
  3574  	// ResourceGroupName is a required field
  3575  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  3576  }
  3577  
  3578  // String returns the string representation.
  3579  //
  3580  // API parameter values that are decorated as "sensitive" in the API will not
  3581  // be included in the string output. The member name will be present, but the
  3582  // value will be replaced with "sensitive".
  3583  func (s DeleteComponentInput) String() string {
  3584  	return awsutil.Prettify(s)
  3585  }
  3586  
  3587  // GoString returns the string representation.
  3588  //
  3589  // API parameter values that are decorated as "sensitive" in the API will not
  3590  // be included in the string output. The member name will be present, but the
  3591  // value will be replaced with "sensitive".
  3592  func (s DeleteComponentInput) GoString() string {
  3593  	return s.String()
  3594  }
  3595  
  3596  // Validate inspects the fields of the type to determine if they are valid.
  3597  func (s *DeleteComponentInput) Validate() error {
  3598  	invalidParams := request.ErrInvalidParams{Context: "DeleteComponentInput"}
  3599  	if s.ComponentName == nil {
  3600  		invalidParams.Add(request.NewErrParamRequired("ComponentName"))
  3601  	}
  3602  	if s.ComponentName != nil && len(*s.ComponentName) < 1 {
  3603  		invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1))
  3604  	}
  3605  	if s.ResourceGroupName == nil {
  3606  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  3607  	}
  3608  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  3609  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  3610  	}
  3611  
  3612  	if invalidParams.Len() > 0 {
  3613  		return invalidParams
  3614  	}
  3615  	return nil
  3616  }
  3617  
  3618  // SetComponentName sets the ComponentName field's value.
  3619  func (s *DeleteComponentInput) SetComponentName(v string) *DeleteComponentInput {
  3620  	s.ComponentName = &v
  3621  	return s
  3622  }
  3623  
  3624  // SetResourceGroupName sets the ResourceGroupName field's value.
  3625  func (s *DeleteComponentInput) SetResourceGroupName(v string) *DeleteComponentInput {
  3626  	s.ResourceGroupName = &v
  3627  	return s
  3628  }
  3629  
  3630  type DeleteComponentOutput struct {
  3631  	_ struct{} `type:"structure"`
  3632  }
  3633  
  3634  // String returns the string representation.
  3635  //
  3636  // API parameter values that are decorated as "sensitive" in the API will not
  3637  // be included in the string output. The member name will be present, but the
  3638  // value will be replaced with "sensitive".
  3639  func (s DeleteComponentOutput) String() string {
  3640  	return awsutil.Prettify(s)
  3641  }
  3642  
  3643  // GoString returns the string representation.
  3644  //
  3645  // API parameter values that are decorated as "sensitive" in the API will not
  3646  // be included in the string output. The member name will be present, but the
  3647  // value will be replaced with "sensitive".
  3648  func (s DeleteComponentOutput) GoString() string {
  3649  	return s.String()
  3650  }
  3651  
  3652  type DeleteLogPatternInput struct {
  3653  	_ struct{} `type:"structure"`
  3654  
  3655  	// The name of the log pattern.
  3656  	//
  3657  	// PatternName is a required field
  3658  	PatternName *string `min:"1" type:"string" required:"true"`
  3659  
  3660  	// The name of the log pattern set.
  3661  	//
  3662  	// PatternSetName is a required field
  3663  	PatternSetName *string `min:"1" type:"string" required:"true"`
  3664  
  3665  	// The name of the resource group.
  3666  	//
  3667  	// ResourceGroupName is a required field
  3668  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  3669  }
  3670  
  3671  // String returns the string representation.
  3672  //
  3673  // API parameter values that are decorated as "sensitive" in the API will not
  3674  // be included in the string output. The member name will be present, but the
  3675  // value will be replaced with "sensitive".
  3676  func (s DeleteLogPatternInput) String() string {
  3677  	return awsutil.Prettify(s)
  3678  }
  3679  
  3680  // GoString returns the string representation.
  3681  //
  3682  // API parameter values that are decorated as "sensitive" in the API will not
  3683  // be included in the string output. The member name will be present, but the
  3684  // value will be replaced with "sensitive".
  3685  func (s DeleteLogPatternInput) GoString() string {
  3686  	return s.String()
  3687  }
  3688  
  3689  // Validate inspects the fields of the type to determine if they are valid.
  3690  func (s *DeleteLogPatternInput) Validate() error {
  3691  	invalidParams := request.ErrInvalidParams{Context: "DeleteLogPatternInput"}
  3692  	if s.PatternName == nil {
  3693  		invalidParams.Add(request.NewErrParamRequired("PatternName"))
  3694  	}
  3695  	if s.PatternName != nil && len(*s.PatternName) < 1 {
  3696  		invalidParams.Add(request.NewErrParamMinLen("PatternName", 1))
  3697  	}
  3698  	if s.PatternSetName == nil {
  3699  		invalidParams.Add(request.NewErrParamRequired("PatternSetName"))
  3700  	}
  3701  	if s.PatternSetName != nil && len(*s.PatternSetName) < 1 {
  3702  		invalidParams.Add(request.NewErrParamMinLen("PatternSetName", 1))
  3703  	}
  3704  	if s.ResourceGroupName == nil {
  3705  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  3706  	}
  3707  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  3708  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  3709  	}
  3710  
  3711  	if invalidParams.Len() > 0 {
  3712  		return invalidParams
  3713  	}
  3714  	return nil
  3715  }
  3716  
  3717  // SetPatternName sets the PatternName field's value.
  3718  func (s *DeleteLogPatternInput) SetPatternName(v string) *DeleteLogPatternInput {
  3719  	s.PatternName = &v
  3720  	return s
  3721  }
  3722  
  3723  // SetPatternSetName sets the PatternSetName field's value.
  3724  func (s *DeleteLogPatternInput) SetPatternSetName(v string) *DeleteLogPatternInput {
  3725  	s.PatternSetName = &v
  3726  	return s
  3727  }
  3728  
  3729  // SetResourceGroupName sets the ResourceGroupName field's value.
  3730  func (s *DeleteLogPatternInput) SetResourceGroupName(v string) *DeleteLogPatternInput {
  3731  	s.ResourceGroupName = &v
  3732  	return s
  3733  }
  3734  
  3735  type DeleteLogPatternOutput struct {
  3736  	_ struct{} `type:"structure"`
  3737  }
  3738  
  3739  // String returns the string representation.
  3740  //
  3741  // API parameter values that are decorated as "sensitive" in the API will not
  3742  // be included in the string output. The member name will be present, but the
  3743  // value will be replaced with "sensitive".
  3744  func (s DeleteLogPatternOutput) String() string {
  3745  	return awsutil.Prettify(s)
  3746  }
  3747  
  3748  // GoString returns the string representation.
  3749  //
  3750  // API parameter values that are decorated as "sensitive" in the API will not
  3751  // be included in the string output. The member name will be present, but the
  3752  // value will be replaced with "sensitive".
  3753  func (s DeleteLogPatternOutput) GoString() string {
  3754  	return s.String()
  3755  }
  3756  
  3757  type DescribeApplicationInput struct {
  3758  	_ struct{} `type:"structure"`
  3759  
  3760  	// The name of the resource group.
  3761  	//
  3762  	// ResourceGroupName is a required field
  3763  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  3764  }
  3765  
  3766  // String returns the string representation.
  3767  //
  3768  // API parameter values that are decorated as "sensitive" in the API will not
  3769  // be included in the string output. The member name will be present, but the
  3770  // value will be replaced with "sensitive".
  3771  func (s DescribeApplicationInput) String() string {
  3772  	return awsutil.Prettify(s)
  3773  }
  3774  
  3775  // GoString returns the string representation.
  3776  //
  3777  // API parameter values that are decorated as "sensitive" in the API will not
  3778  // be included in the string output. The member name will be present, but the
  3779  // value will be replaced with "sensitive".
  3780  func (s DescribeApplicationInput) GoString() string {
  3781  	return s.String()
  3782  }
  3783  
  3784  // Validate inspects the fields of the type to determine if they are valid.
  3785  func (s *DescribeApplicationInput) Validate() error {
  3786  	invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationInput"}
  3787  	if s.ResourceGroupName == nil {
  3788  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  3789  	}
  3790  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  3791  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  3792  	}
  3793  
  3794  	if invalidParams.Len() > 0 {
  3795  		return invalidParams
  3796  	}
  3797  	return nil
  3798  }
  3799  
  3800  // SetResourceGroupName sets the ResourceGroupName field's value.
  3801  func (s *DescribeApplicationInput) SetResourceGroupName(v string) *DescribeApplicationInput {
  3802  	s.ResourceGroupName = &v
  3803  	return s
  3804  }
  3805  
  3806  type DescribeApplicationOutput struct {
  3807  	_ struct{} `type:"structure"`
  3808  
  3809  	// Information about the application.
  3810  	ApplicationInfo *ApplicationInfo `type:"structure"`
  3811  }
  3812  
  3813  // String returns the string representation.
  3814  //
  3815  // API parameter values that are decorated as "sensitive" in the API will not
  3816  // be included in the string output. The member name will be present, but the
  3817  // value will be replaced with "sensitive".
  3818  func (s DescribeApplicationOutput) String() string {
  3819  	return awsutil.Prettify(s)
  3820  }
  3821  
  3822  // GoString returns the string representation.
  3823  //
  3824  // API parameter values that are decorated as "sensitive" in the API will not
  3825  // be included in the string output. The member name will be present, but the
  3826  // value will be replaced with "sensitive".
  3827  func (s DescribeApplicationOutput) GoString() string {
  3828  	return s.String()
  3829  }
  3830  
  3831  // SetApplicationInfo sets the ApplicationInfo field's value.
  3832  func (s *DescribeApplicationOutput) SetApplicationInfo(v *ApplicationInfo) *DescribeApplicationOutput {
  3833  	s.ApplicationInfo = v
  3834  	return s
  3835  }
  3836  
  3837  type DescribeComponentConfigurationInput struct {
  3838  	_ struct{} `type:"structure"`
  3839  
  3840  	// The name of the component.
  3841  	//
  3842  	// ComponentName is a required field
  3843  	ComponentName *string `min:"1" type:"string" required:"true"`
  3844  
  3845  	// The name of the resource group.
  3846  	//
  3847  	// ResourceGroupName is a required field
  3848  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  3849  }
  3850  
  3851  // String returns the string representation.
  3852  //
  3853  // API parameter values that are decorated as "sensitive" in the API will not
  3854  // be included in the string output. The member name will be present, but the
  3855  // value will be replaced with "sensitive".
  3856  func (s DescribeComponentConfigurationInput) String() string {
  3857  	return awsutil.Prettify(s)
  3858  }
  3859  
  3860  // GoString returns the string representation.
  3861  //
  3862  // API parameter values that are decorated as "sensitive" in the API will not
  3863  // be included in the string output. The member name will be present, but the
  3864  // value will be replaced with "sensitive".
  3865  func (s DescribeComponentConfigurationInput) GoString() string {
  3866  	return s.String()
  3867  }
  3868  
  3869  // Validate inspects the fields of the type to determine if they are valid.
  3870  func (s *DescribeComponentConfigurationInput) Validate() error {
  3871  	invalidParams := request.ErrInvalidParams{Context: "DescribeComponentConfigurationInput"}
  3872  	if s.ComponentName == nil {
  3873  		invalidParams.Add(request.NewErrParamRequired("ComponentName"))
  3874  	}
  3875  	if s.ComponentName != nil && len(*s.ComponentName) < 1 {
  3876  		invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1))
  3877  	}
  3878  	if s.ResourceGroupName == nil {
  3879  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  3880  	}
  3881  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  3882  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  3883  	}
  3884  
  3885  	if invalidParams.Len() > 0 {
  3886  		return invalidParams
  3887  	}
  3888  	return nil
  3889  }
  3890  
  3891  // SetComponentName sets the ComponentName field's value.
  3892  func (s *DescribeComponentConfigurationInput) SetComponentName(v string) *DescribeComponentConfigurationInput {
  3893  	s.ComponentName = &v
  3894  	return s
  3895  }
  3896  
  3897  // SetResourceGroupName sets the ResourceGroupName field's value.
  3898  func (s *DescribeComponentConfigurationInput) SetResourceGroupName(v string) *DescribeComponentConfigurationInput {
  3899  	s.ResourceGroupName = &v
  3900  	return s
  3901  }
  3902  
  3903  type DescribeComponentConfigurationOutput struct {
  3904  	_ struct{} `type:"structure"`
  3905  
  3906  	// The configuration settings of the component. The value is the escaped JSON
  3907  	// of the configuration.
  3908  	ComponentConfiguration *string `min:"1" type:"string"`
  3909  
  3910  	// Indicates whether the application component is monitored.
  3911  	Monitor *bool `type:"boolean"`
  3912  
  3913  	// The tier of the application component. Supported tiers include DOT_NET_CORE,
  3914  	// DOT_NET_WORKER, DOT_NET_WEB, SQL_SERVER, and DEFAULT
  3915  	Tier *string `min:"1" type:"string" enum:"Tier"`
  3916  }
  3917  
  3918  // String returns the string representation.
  3919  //
  3920  // API parameter values that are decorated as "sensitive" in the API will not
  3921  // be included in the string output. The member name will be present, but the
  3922  // value will be replaced with "sensitive".
  3923  func (s DescribeComponentConfigurationOutput) String() string {
  3924  	return awsutil.Prettify(s)
  3925  }
  3926  
  3927  // GoString returns the string representation.
  3928  //
  3929  // API parameter values that are decorated as "sensitive" in the API will not
  3930  // be included in the string output. The member name will be present, but the
  3931  // value will be replaced with "sensitive".
  3932  func (s DescribeComponentConfigurationOutput) GoString() string {
  3933  	return s.String()
  3934  }
  3935  
  3936  // SetComponentConfiguration sets the ComponentConfiguration field's value.
  3937  func (s *DescribeComponentConfigurationOutput) SetComponentConfiguration(v string) *DescribeComponentConfigurationOutput {
  3938  	s.ComponentConfiguration = &v
  3939  	return s
  3940  }
  3941  
  3942  // SetMonitor sets the Monitor field's value.
  3943  func (s *DescribeComponentConfigurationOutput) SetMonitor(v bool) *DescribeComponentConfigurationOutput {
  3944  	s.Monitor = &v
  3945  	return s
  3946  }
  3947  
  3948  // SetTier sets the Tier field's value.
  3949  func (s *DescribeComponentConfigurationOutput) SetTier(v string) *DescribeComponentConfigurationOutput {
  3950  	s.Tier = &v
  3951  	return s
  3952  }
  3953  
  3954  type DescribeComponentConfigurationRecommendationInput struct {
  3955  	_ struct{} `type:"structure"`
  3956  
  3957  	// The name of the component.
  3958  	//
  3959  	// ComponentName is a required field
  3960  	ComponentName *string `min:"1" type:"string" required:"true"`
  3961  
  3962  	// The name of the resource group.
  3963  	//
  3964  	// ResourceGroupName is a required field
  3965  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  3966  
  3967  	// The tier of the application component. Supported tiers include DOT_NET_CORE,
  3968  	// DOT_NET_WORKER, DOT_NET_WEB, SQL_SERVER, and DEFAULT.
  3969  	//
  3970  	// Tier is a required field
  3971  	Tier *string `min:"1" type:"string" required:"true" enum:"Tier"`
  3972  }
  3973  
  3974  // String returns the string representation.
  3975  //
  3976  // API parameter values that are decorated as "sensitive" in the API will not
  3977  // be included in the string output. The member name will be present, but the
  3978  // value will be replaced with "sensitive".
  3979  func (s DescribeComponentConfigurationRecommendationInput) String() string {
  3980  	return awsutil.Prettify(s)
  3981  }
  3982  
  3983  // GoString returns the string representation.
  3984  //
  3985  // API parameter values that are decorated as "sensitive" in the API will not
  3986  // be included in the string output. The member name will be present, but the
  3987  // value will be replaced with "sensitive".
  3988  func (s DescribeComponentConfigurationRecommendationInput) GoString() string {
  3989  	return s.String()
  3990  }
  3991  
  3992  // Validate inspects the fields of the type to determine if they are valid.
  3993  func (s *DescribeComponentConfigurationRecommendationInput) Validate() error {
  3994  	invalidParams := request.ErrInvalidParams{Context: "DescribeComponentConfigurationRecommendationInput"}
  3995  	if s.ComponentName == nil {
  3996  		invalidParams.Add(request.NewErrParamRequired("ComponentName"))
  3997  	}
  3998  	if s.ComponentName != nil && len(*s.ComponentName) < 1 {
  3999  		invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1))
  4000  	}
  4001  	if s.ResourceGroupName == nil {
  4002  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  4003  	}
  4004  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  4005  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  4006  	}
  4007  	if s.Tier == nil {
  4008  		invalidParams.Add(request.NewErrParamRequired("Tier"))
  4009  	}
  4010  	if s.Tier != nil && len(*s.Tier) < 1 {
  4011  		invalidParams.Add(request.NewErrParamMinLen("Tier", 1))
  4012  	}
  4013  
  4014  	if invalidParams.Len() > 0 {
  4015  		return invalidParams
  4016  	}
  4017  	return nil
  4018  }
  4019  
  4020  // SetComponentName sets the ComponentName field's value.
  4021  func (s *DescribeComponentConfigurationRecommendationInput) SetComponentName(v string) *DescribeComponentConfigurationRecommendationInput {
  4022  	s.ComponentName = &v
  4023  	return s
  4024  }
  4025  
  4026  // SetResourceGroupName sets the ResourceGroupName field's value.
  4027  func (s *DescribeComponentConfigurationRecommendationInput) SetResourceGroupName(v string) *DescribeComponentConfigurationRecommendationInput {
  4028  	s.ResourceGroupName = &v
  4029  	return s
  4030  }
  4031  
  4032  // SetTier sets the Tier field's value.
  4033  func (s *DescribeComponentConfigurationRecommendationInput) SetTier(v string) *DescribeComponentConfigurationRecommendationInput {
  4034  	s.Tier = &v
  4035  	return s
  4036  }
  4037  
  4038  type DescribeComponentConfigurationRecommendationOutput struct {
  4039  	_ struct{} `type:"structure"`
  4040  
  4041  	// The recommended configuration settings of the component. The value is the
  4042  	// escaped JSON of the configuration.
  4043  	ComponentConfiguration *string `min:"1" type:"string"`
  4044  }
  4045  
  4046  // String returns the string representation.
  4047  //
  4048  // API parameter values that are decorated as "sensitive" in the API will not
  4049  // be included in the string output. The member name will be present, but the
  4050  // value will be replaced with "sensitive".
  4051  func (s DescribeComponentConfigurationRecommendationOutput) String() string {
  4052  	return awsutil.Prettify(s)
  4053  }
  4054  
  4055  // GoString returns the string representation.
  4056  //
  4057  // API parameter values that are decorated as "sensitive" in the API will not
  4058  // be included in the string output. The member name will be present, but the
  4059  // value will be replaced with "sensitive".
  4060  func (s DescribeComponentConfigurationRecommendationOutput) GoString() string {
  4061  	return s.String()
  4062  }
  4063  
  4064  // SetComponentConfiguration sets the ComponentConfiguration field's value.
  4065  func (s *DescribeComponentConfigurationRecommendationOutput) SetComponentConfiguration(v string) *DescribeComponentConfigurationRecommendationOutput {
  4066  	s.ComponentConfiguration = &v
  4067  	return s
  4068  }
  4069  
  4070  type DescribeComponentInput struct {
  4071  	_ struct{} `type:"structure"`
  4072  
  4073  	// The name of the component.
  4074  	//
  4075  	// ComponentName is a required field
  4076  	ComponentName *string `min:"1" type:"string" required:"true"`
  4077  
  4078  	// The name of the resource group.
  4079  	//
  4080  	// ResourceGroupName is a required field
  4081  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  4082  }
  4083  
  4084  // String returns the string representation.
  4085  //
  4086  // API parameter values that are decorated as "sensitive" in the API will not
  4087  // be included in the string output. The member name will be present, but the
  4088  // value will be replaced with "sensitive".
  4089  func (s DescribeComponentInput) String() string {
  4090  	return awsutil.Prettify(s)
  4091  }
  4092  
  4093  // GoString returns the string representation.
  4094  //
  4095  // API parameter values that are decorated as "sensitive" in the API will not
  4096  // be included in the string output. The member name will be present, but the
  4097  // value will be replaced with "sensitive".
  4098  func (s DescribeComponentInput) GoString() string {
  4099  	return s.String()
  4100  }
  4101  
  4102  // Validate inspects the fields of the type to determine if they are valid.
  4103  func (s *DescribeComponentInput) Validate() error {
  4104  	invalidParams := request.ErrInvalidParams{Context: "DescribeComponentInput"}
  4105  	if s.ComponentName == nil {
  4106  		invalidParams.Add(request.NewErrParamRequired("ComponentName"))
  4107  	}
  4108  	if s.ComponentName != nil && len(*s.ComponentName) < 1 {
  4109  		invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1))
  4110  	}
  4111  	if s.ResourceGroupName == nil {
  4112  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  4113  	}
  4114  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  4115  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  4116  	}
  4117  
  4118  	if invalidParams.Len() > 0 {
  4119  		return invalidParams
  4120  	}
  4121  	return nil
  4122  }
  4123  
  4124  // SetComponentName sets the ComponentName field's value.
  4125  func (s *DescribeComponentInput) SetComponentName(v string) *DescribeComponentInput {
  4126  	s.ComponentName = &v
  4127  	return s
  4128  }
  4129  
  4130  // SetResourceGroupName sets the ResourceGroupName field's value.
  4131  func (s *DescribeComponentInput) SetResourceGroupName(v string) *DescribeComponentInput {
  4132  	s.ResourceGroupName = &v
  4133  	return s
  4134  }
  4135  
  4136  type DescribeComponentOutput struct {
  4137  	_ struct{} `type:"structure"`
  4138  
  4139  	// Describes a standalone resource or similarly grouped resources that the application
  4140  	// is made up of.
  4141  	ApplicationComponent *ApplicationComponent `type:"structure"`
  4142  
  4143  	// The list of resource ARNs that belong to the component.
  4144  	ResourceList []*string `type:"list"`
  4145  }
  4146  
  4147  // String returns the string representation.
  4148  //
  4149  // API parameter values that are decorated as "sensitive" in the API will not
  4150  // be included in the string output. The member name will be present, but the
  4151  // value will be replaced with "sensitive".
  4152  func (s DescribeComponentOutput) String() string {
  4153  	return awsutil.Prettify(s)
  4154  }
  4155  
  4156  // GoString returns the string representation.
  4157  //
  4158  // API parameter values that are decorated as "sensitive" in the API will not
  4159  // be included in the string output. The member name will be present, but the
  4160  // value will be replaced with "sensitive".
  4161  func (s DescribeComponentOutput) GoString() string {
  4162  	return s.String()
  4163  }
  4164  
  4165  // SetApplicationComponent sets the ApplicationComponent field's value.
  4166  func (s *DescribeComponentOutput) SetApplicationComponent(v *ApplicationComponent) *DescribeComponentOutput {
  4167  	s.ApplicationComponent = v
  4168  	return s
  4169  }
  4170  
  4171  // SetResourceList sets the ResourceList field's value.
  4172  func (s *DescribeComponentOutput) SetResourceList(v []*string) *DescribeComponentOutput {
  4173  	s.ResourceList = v
  4174  	return s
  4175  }
  4176  
  4177  type DescribeLogPatternInput struct {
  4178  	_ struct{} `type:"structure"`
  4179  
  4180  	// The name of the log pattern.
  4181  	//
  4182  	// PatternName is a required field
  4183  	PatternName *string `min:"1" type:"string" required:"true"`
  4184  
  4185  	// The name of the log pattern set.
  4186  	//
  4187  	// PatternSetName is a required field
  4188  	PatternSetName *string `min:"1" type:"string" required:"true"`
  4189  
  4190  	// The name of the resource group.
  4191  	//
  4192  	// ResourceGroupName is a required field
  4193  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  4194  }
  4195  
  4196  // String returns the string representation.
  4197  //
  4198  // API parameter values that are decorated as "sensitive" in the API will not
  4199  // be included in the string output. The member name will be present, but the
  4200  // value will be replaced with "sensitive".
  4201  func (s DescribeLogPatternInput) String() string {
  4202  	return awsutil.Prettify(s)
  4203  }
  4204  
  4205  // GoString returns the string representation.
  4206  //
  4207  // API parameter values that are decorated as "sensitive" in the API will not
  4208  // be included in the string output. The member name will be present, but the
  4209  // value will be replaced with "sensitive".
  4210  func (s DescribeLogPatternInput) GoString() string {
  4211  	return s.String()
  4212  }
  4213  
  4214  // Validate inspects the fields of the type to determine if they are valid.
  4215  func (s *DescribeLogPatternInput) Validate() error {
  4216  	invalidParams := request.ErrInvalidParams{Context: "DescribeLogPatternInput"}
  4217  	if s.PatternName == nil {
  4218  		invalidParams.Add(request.NewErrParamRequired("PatternName"))
  4219  	}
  4220  	if s.PatternName != nil && len(*s.PatternName) < 1 {
  4221  		invalidParams.Add(request.NewErrParamMinLen("PatternName", 1))
  4222  	}
  4223  	if s.PatternSetName == nil {
  4224  		invalidParams.Add(request.NewErrParamRequired("PatternSetName"))
  4225  	}
  4226  	if s.PatternSetName != nil && len(*s.PatternSetName) < 1 {
  4227  		invalidParams.Add(request.NewErrParamMinLen("PatternSetName", 1))
  4228  	}
  4229  	if s.ResourceGroupName == nil {
  4230  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  4231  	}
  4232  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  4233  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  4234  	}
  4235  
  4236  	if invalidParams.Len() > 0 {
  4237  		return invalidParams
  4238  	}
  4239  	return nil
  4240  }
  4241  
  4242  // SetPatternName sets the PatternName field's value.
  4243  func (s *DescribeLogPatternInput) SetPatternName(v string) *DescribeLogPatternInput {
  4244  	s.PatternName = &v
  4245  	return s
  4246  }
  4247  
  4248  // SetPatternSetName sets the PatternSetName field's value.
  4249  func (s *DescribeLogPatternInput) SetPatternSetName(v string) *DescribeLogPatternInput {
  4250  	s.PatternSetName = &v
  4251  	return s
  4252  }
  4253  
  4254  // SetResourceGroupName sets the ResourceGroupName field's value.
  4255  func (s *DescribeLogPatternInput) SetResourceGroupName(v string) *DescribeLogPatternInput {
  4256  	s.ResourceGroupName = &v
  4257  	return s
  4258  }
  4259  
  4260  type DescribeLogPatternOutput struct {
  4261  	_ struct{} `type:"structure"`
  4262  
  4263  	// The successfully created log pattern.
  4264  	LogPattern *LogPattern `type:"structure"`
  4265  
  4266  	// The name of the resource group.
  4267  	ResourceGroupName *string `min:"1" type:"string"`
  4268  }
  4269  
  4270  // String returns the string representation.
  4271  //
  4272  // API parameter values that are decorated as "sensitive" in the API will not
  4273  // be included in the string output. The member name will be present, but the
  4274  // value will be replaced with "sensitive".
  4275  func (s DescribeLogPatternOutput) String() string {
  4276  	return awsutil.Prettify(s)
  4277  }
  4278  
  4279  // GoString returns the string representation.
  4280  //
  4281  // API parameter values that are decorated as "sensitive" in the API will not
  4282  // be included in the string output. The member name will be present, but the
  4283  // value will be replaced with "sensitive".
  4284  func (s DescribeLogPatternOutput) GoString() string {
  4285  	return s.String()
  4286  }
  4287  
  4288  // SetLogPattern sets the LogPattern field's value.
  4289  func (s *DescribeLogPatternOutput) SetLogPattern(v *LogPattern) *DescribeLogPatternOutput {
  4290  	s.LogPattern = v
  4291  	return s
  4292  }
  4293  
  4294  // SetResourceGroupName sets the ResourceGroupName field's value.
  4295  func (s *DescribeLogPatternOutput) SetResourceGroupName(v string) *DescribeLogPatternOutput {
  4296  	s.ResourceGroupName = &v
  4297  	return s
  4298  }
  4299  
  4300  type DescribeObservationInput struct {
  4301  	_ struct{} `type:"structure"`
  4302  
  4303  	// The ID of the observation.
  4304  	//
  4305  	// ObservationId is a required field
  4306  	ObservationId *string `min:"38" type:"string" required:"true"`
  4307  }
  4308  
  4309  // String returns the string representation.
  4310  //
  4311  // API parameter values that are decorated as "sensitive" in the API will not
  4312  // be included in the string output. The member name will be present, but the
  4313  // value will be replaced with "sensitive".
  4314  func (s DescribeObservationInput) String() string {
  4315  	return awsutil.Prettify(s)
  4316  }
  4317  
  4318  // GoString returns the string representation.
  4319  //
  4320  // API parameter values that are decorated as "sensitive" in the API will not
  4321  // be included in the string output. The member name will be present, but the
  4322  // value will be replaced with "sensitive".
  4323  func (s DescribeObservationInput) GoString() string {
  4324  	return s.String()
  4325  }
  4326  
  4327  // Validate inspects the fields of the type to determine if they are valid.
  4328  func (s *DescribeObservationInput) Validate() error {
  4329  	invalidParams := request.ErrInvalidParams{Context: "DescribeObservationInput"}
  4330  	if s.ObservationId == nil {
  4331  		invalidParams.Add(request.NewErrParamRequired("ObservationId"))
  4332  	}
  4333  	if s.ObservationId != nil && len(*s.ObservationId) < 38 {
  4334  		invalidParams.Add(request.NewErrParamMinLen("ObservationId", 38))
  4335  	}
  4336  
  4337  	if invalidParams.Len() > 0 {
  4338  		return invalidParams
  4339  	}
  4340  	return nil
  4341  }
  4342  
  4343  // SetObservationId sets the ObservationId field's value.
  4344  func (s *DescribeObservationInput) SetObservationId(v string) *DescribeObservationInput {
  4345  	s.ObservationId = &v
  4346  	return s
  4347  }
  4348  
  4349  type DescribeObservationOutput struct {
  4350  	_ struct{} `type:"structure"`
  4351  
  4352  	// Information about the observation.
  4353  	Observation *Observation `type:"structure"`
  4354  }
  4355  
  4356  // String returns the string representation.
  4357  //
  4358  // API parameter values that are decorated as "sensitive" in the API will not
  4359  // be included in the string output. The member name will be present, but the
  4360  // value will be replaced with "sensitive".
  4361  func (s DescribeObservationOutput) String() string {
  4362  	return awsutil.Prettify(s)
  4363  }
  4364  
  4365  // GoString returns the string representation.
  4366  //
  4367  // API parameter values that are decorated as "sensitive" in the API will not
  4368  // be included in the string output. The member name will be present, but the
  4369  // value will be replaced with "sensitive".
  4370  func (s DescribeObservationOutput) GoString() string {
  4371  	return s.String()
  4372  }
  4373  
  4374  // SetObservation sets the Observation field's value.
  4375  func (s *DescribeObservationOutput) SetObservation(v *Observation) *DescribeObservationOutput {
  4376  	s.Observation = v
  4377  	return s
  4378  }
  4379  
  4380  type DescribeProblemInput struct {
  4381  	_ struct{} `type:"structure"`
  4382  
  4383  	// The ID of the problem.
  4384  	//
  4385  	// ProblemId is a required field
  4386  	ProblemId *string `min:"38" type:"string" required:"true"`
  4387  }
  4388  
  4389  // String returns the string representation.
  4390  //
  4391  // API parameter values that are decorated as "sensitive" in the API will not
  4392  // be included in the string output. The member name will be present, but the
  4393  // value will be replaced with "sensitive".
  4394  func (s DescribeProblemInput) String() string {
  4395  	return awsutil.Prettify(s)
  4396  }
  4397  
  4398  // GoString returns the string representation.
  4399  //
  4400  // API parameter values that are decorated as "sensitive" in the API will not
  4401  // be included in the string output. The member name will be present, but the
  4402  // value will be replaced with "sensitive".
  4403  func (s DescribeProblemInput) GoString() string {
  4404  	return s.String()
  4405  }
  4406  
  4407  // Validate inspects the fields of the type to determine if they are valid.
  4408  func (s *DescribeProblemInput) Validate() error {
  4409  	invalidParams := request.ErrInvalidParams{Context: "DescribeProblemInput"}
  4410  	if s.ProblemId == nil {
  4411  		invalidParams.Add(request.NewErrParamRequired("ProblemId"))
  4412  	}
  4413  	if s.ProblemId != nil && len(*s.ProblemId) < 38 {
  4414  		invalidParams.Add(request.NewErrParamMinLen("ProblemId", 38))
  4415  	}
  4416  
  4417  	if invalidParams.Len() > 0 {
  4418  		return invalidParams
  4419  	}
  4420  	return nil
  4421  }
  4422  
  4423  // SetProblemId sets the ProblemId field's value.
  4424  func (s *DescribeProblemInput) SetProblemId(v string) *DescribeProblemInput {
  4425  	s.ProblemId = &v
  4426  	return s
  4427  }
  4428  
  4429  type DescribeProblemObservationsInput struct {
  4430  	_ struct{} `type:"structure"`
  4431  
  4432  	// The ID of the problem.
  4433  	//
  4434  	// ProblemId is a required field
  4435  	ProblemId *string `min:"38" type:"string" required:"true"`
  4436  }
  4437  
  4438  // String returns the string representation.
  4439  //
  4440  // API parameter values that are decorated as "sensitive" in the API will not
  4441  // be included in the string output. The member name will be present, but the
  4442  // value will be replaced with "sensitive".
  4443  func (s DescribeProblemObservationsInput) String() string {
  4444  	return awsutil.Prettify(s)
  4445  }
  4446  
  4447  // GoString returns the string representation.
  4448  //
  4449  // API parameter values that are decorated as "sensitive" in the API will not
  4450  // be included in the string output. The member name will be present, but the
  4451  // value will be replaced with "sensitive".
  4452  func (s DescribeProblemObservationsInput) GoString() string {
  4453  	return s.String()
  4454  }
  4455  
  4456  // Validate inspects the fields of the type to determine if they are valid.
  4457  func (s *DescribeProblemObservationsInput) Validate() error {
  4458  	invalidParams := request.ErrInvalidParams{Context: "DescribeProblemObservationsInput"}
  4459  	if s.ProblemId == nil {
  4460  		invalidParams.Add(request.NewErrParamRequired("ProblemId"))
  4461  	}
  4462  	if s.ProblemId != nil && len(*s.ProblemId) < 38 {
  4463  		invalidParams.Add(request.NewErrParamMinLen("ProblemId", 38))
  4464  	}
  4465  
  4466  	if invalidParams.Len() > 0 {
  4467  		return invalidParams
  4468  	}
  4469  	return nil
  4470  }
  4471  
  4472  // SetProblemId sets the ProblemId field's value.
  4473  func (s *DescribeProblemObservationsInput) SetProblemId(v string) *DescribeProblemObservationsInput {
  4474  	s.ProblemId = &v
  4475  	return s
  4476  }
  4477  
  4478  type DescribeProblemObservationsOutput struct {
  4479  	_ struct{} `type:"structure"`
  4480  
  4481  	// Observations related to the problem.
  4482  	RelatedObservations *RelatedObservations `type:"structure"`
  4483  }
  4484  
  4485  // String returns the string representation.
  4486  //
  4487  // API parameter values that are decorated as "sensitive" in the API will not
  4488  // be included in the string output. The member name will be present, but the
  4489  // value will be replaced with "sensitive".
  4490  func (s DescribeProblemObservationsOutput) String() string {
  4491  	return awsutil.Prettify(s)
  4492  }
  4493  
  4494  // GoString returns the string representation.
  4495  //
  4496  // API parameter values that are decorated as "sensitive" in the API will not
  4497  // be included in the string output. The member name will be present, but the
  4498  // value will be replaced with "sensitive".
  4499  func (s DescribeProblemObservationsOutput) GoString() string {
  4500  	return s.String()
  4501  }
  4502  
  4503  // SetRelatedObservations sets the RelatedObservations field's value.
  4504  func (s *DescribeProblemObservationsOutput) SetRelatedObservations(v *RelatedObservations) *DescribeProblemObservationsOutput {
  4505  	s.RelatedObservations = v
  4506  	return s
  4507  }
  4508  
  4509  type DescribeProblemOutput struct {
  4510  	_ struct{} `type:"structure"`
  4511  
  4512  	// Information about the problem.
  4513  	Problem *Problem `type:"structure"`
  4514  }
  4515  
  4516  // String returns the string representation.
  4517  //
  4518  // API parameter values that are decorated as "sensitive" in the API will not
  4519  // be included in the string output. The member name will be present, but the
  4520  // value will be replaced with "sensitive".
  4521  func (s DescribeProblemOutput) String() string {
  4522  	return awsutil.Prettify(s)
  4523  }
  4524  
  4525  // GoString returns the string representation.
  4526  //
  4527  // API parameter values that are decorated as "sensitive" in the API will not
  4528  // be included in the string output. The member name will be present, but the
  4529  // value will be replaced with "sensitive".
  4530  func (s DescribeProblemOutput) GoString() string {
  4531  	return s.String()
  4532  }
  4533  
  4534  // SetProblem sets the Problem field's value.
  4535  func (s *DescribeProblemOutput) SetProblem(v *Problem) *DescribeProblemOutput {
  4536  	s.Problem = v
  4537  	return s
  4538  }
  4539  
  4540  // The server encountered an internal error and is unable to complete the request.
  4541  type InternalServerException struct {
  4542  	_            struct{}                  `type:"structure"`
  4543  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  4544  
  4545  	Message_ *string `locationName:"Message" type:"string"`
  4546  }
  4547  
  4548  // String returns the string representation.
  4549  //
  4550  // API parameter values that are decorated as "sensitive" in the API will not
  4551  // be included in the string output. The member name will be present, but the
  4552  // value will be replaced with "sensitive".
  4553  func (s InternalServerException) String() string {
  4554  	return awsutil.Prettify(s)
  4555  }
  4556  
  4557  // GoString returns the string representation.
  4558  //
  4559  // API parameter values that are decorated as "sensitive" in the API will not
  4560  // be included in the string output. The member name will be present, but the
  4561  // value will be replaced with "sensitive".
  4562  func (s InternalServerException) GoString() string {
  4563  	return s.String()
  4564  }
  4565  
  4566  func newErrorInternalServerException(v protocol.ResponseMetadata) error {
  4567  	return &InternalServerException{
  4568  		RespMetadata: v,
  4569  	}
  4570  }
  4571  
  4572  // Code returns the exception type name.
  4573  func (s *InternalServerException) Code() string {
  4574  	return "InternalServerException"
  4575  }
  4576  
  4577  // Message returns the exception's message.
  4578  func (s *InternalServerException) Message() string {
  4579  	if s.Message_ != nil {
  4580  		return *s.Message_
  4581  	}
  4582  	return ""
  4583  }
  4584  
  4585  // OrigErr always returns nil, satisfies awserr.Error interface.
  4586  func (s *InternalServerException) OrigErr() error {
  4587  	return nil
  4588  }
  4589  
  4590  func (s *InternalServerException) Error() string {
  4591  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  4592  }
  4593  
  4594  // Status code returns the HTTP status code for the request's response error.
  4595  func (s *InternalServerException) StatusCode() int {
  4596  	return s.RespMetadata.StatusCode
  4597  }
  4598  
  4599  // RequestID returns the service's response RequestID for request.
  4600  func (s *InternalServerException) RequestID() string {
  4601  	return s.RespMetadata.RequestID
  4602  }
  4603  
  4604  type ListApplicationsInput struct {
  4605  	_ struct{} `type:"structure"`
  4606  
  4607  	// The maximum number of results to return in a single call. To retrieve the
  4608  	// remaining results, make another call with the returned NextToken value.
  4609  	MaxResults *int64 `min:"1" type:"integer"`
  4610  
  4611  	// The token to request the next page of results.
  4612  	NextToken *string `min:"1" type:"string"`
  4613  }
  4614  
  4615  // String returns the string representation.
  4616  //
  4617  // API parameter values that are decorated as "sensitive" in the API will not
  4618  // be included in the string output. The member name will be present, but the
  4619  // value will be replaced with "sensitive".
  4620  func (s ListApplicationsInput) String() string {
  4621  	return awsutil.Prettify(s)
  4622  }
  4623  
  4624  // GoString returns the string representation.
  4625  //
  4626  // API parameter values that are decorated as "sensitive" in the API will not
  4627  // be included in the string output. The member name will be present, but the
  4628  // value will be replaced with "sensitive".
  4629  func (s ListApplicationsInput) GoString() string {
  4630  	return s.String()
  4631  }
  4632  
  4633  // Validate inspects the fields of the type to determine if they are valid.
  4634  func (s *ListApplicationsInput) Validate() error {
  4635  	invalidParams := request.ErrInvalidParams{Context: "ListApplicationsInput"}
  4636  	if s.MaxResults != nil && *s.MaxResults < 1 {
  4637  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  4638  	}
  4639  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  4640  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  4641  	}
  4642  
  4643  	if invalidParams.Len() > 0 {
  4644  		return invalidParams
  4645  	}
  4646  	return nil
  4647  }
  4648  
  4649  // SetMaxResults sets the MaxResults field's value.
  4650  func (s *ListApplicationsInput) SetMaxResults(v int64) *ListApplicationsInput {
  4651  	s.MaxResults = &v
  4652  	return s
  4653  }
  4654  
  4655  // SetNextToken sets the NextToken field's value.
  4656  func (s *ListApplicationsInput) SetNextToken(v string) *ListApplicationsInput {
  4657  	s.NextToken = &v
  4658  	return s
  4659  }
  4660  
  4661  type ListApplicationsOutput struct {
  4662  	_ struct{} `type:"structure"`
  4663  
  4664  	// The list of applications.
  4665  	ApplicationInfoList []*ApplicationInfo `type:"list"`
  4666  
  4667  	// The token used to retrieve the next page of results. This value is null when
  4668  	// there are no more results to return.
  4669  	NextToken *string `min:"1" type:"string"`
  4670  }
  4671  
  4672  // String returns the string representation.
  4673  //
  4674  // API parameter values that are decorated as "sensitive" in the API will not
  4675  // be included in the string output. The member name will be present, but the
  4676  // value will be replaced with "sensitive".
  4677  func (s ListApplicationsOutput) String() string {
  4678  	return awsutil.Prettify(s)
  4679  }
  4680  
  4681  // GoString returns the string representation.
  4682  //
  4683  // API parameter values that are decorated as "sensitive" in the API will not
  4684  // be included in the string output. The member name will be present, but the
  4685  // value will be replaced with "sensitive".
  4686  func (s ListApplicationsOutput) GoString() string {
  4687  	return s.String()
  4688  }
  4689  
  4690  // SetApplicationInfoList sets the ApplicationInfoList field's value.
  4691  func (s *ListApplicationsOutput) SetApplicationInfoList(v []*ApplicationInfo) *ListApplicationsOutput {
  4692  	s.ApplicationInfoList = v
  4693  	return s
  4694  }
  4695  
  4696  // SetNextToken sets the NextToken field's value.
  4697  func (s *ListApplicationsOutput) SetNextToken(v string) *ListApplicationsOutput {
  4698  	s.NextToken = &v
  4699  	return s
  4700  }
  4701  
  4702  type ListComponentsInput struct {
  4703  	_ struct{} `type:"structure"`
  4704  
  4705  	// The maximum number of results to return in a single call. To retrieve the
  4706  	// remaining results, make another call with the returned NextToken value.
  4707  	MaxResults *int64 `min:"1" type:"integer"`
  4708  
  4709  	// The token to request the next page of results.
  4710  	NextToken *string `min:"1" type:"string"`
  4711  
  4712  	// The name of the resource group.
  4713  	//
  4714  	// ResourceGroupName is a required field
  4715  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  4716  }
  4717  
  4718  // String returns the string representation.
  4719  //
  4720  // API parameter values that are decorated as "sensitive" in the API will not
  4721  // be included in the string output. The member name will be present, but the
  4722  // value will be replaced with "sensitive".
  4723  func (s ListComponentsInput) String() string {
  4724  	return awsutil.Prettify(s)
  4725  }
  4726  
  4727  // GoString returns the string representation.
  4728  //
  4729  // API parameter values that are decorated as "sensitive" in the API will not
  4730  // be included in the string output. The member name will be present, but the
  4731  // value will be replaced with "sensitive".
  4732  func (s ListComponentsInput) GoString() string {
  4733  	return s.String()
  4734  }
  4735  
  4736  // Validate inspects the fields of the type to determine if they are valid.
  4737  func (s *ListComponentsInput) Validate() error {
  4738  	invalidParams := request.ErrInvalidParams{Context: "ListComponentsInput"}
  4739  	if s.MaxResults != nil && *s.MaxResults < 1 {
  4740  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  4741  	}
  4742  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  4743  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  4744  	}
  4745  	if s.ResourceGroupName == nil {
  4746  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  4747  	}
  4748  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  4749  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  4750  	}
  4751  
  4752  	if invalidParams.Len() > 0 {
  4753  		return invalidParams
  4754  	}
  4755  	return nil
  4756  }
  4757  
  4758  // SetMaxResults sets the MaxResults field's value.
  4759  func (s *ListComponentsInput) SetMaxResults(v int64) *ListComponentsInput {
  4760  	s.MaxResults = &v
  4761  	return s
  4762  }
  4763  
  4764  // SetNextToken sets the NextToken field's value.
  4765  func (s *ListComponentsInput) SetNextToken(v string) *ListComponentsInput {
  4766  	s.NextToken = &v
  4767  	return s
  4768  }
  4769  
  4770  // SetResourceGroupName sets the ResourceGroupName field's value.
  4771  func (s *ListComponentsInput) SetResourceGroupName(v string) *ListComponentsInput {
  4772  	s.ResourceGroupName = &v
  4773  	return s
  4774  }
  4775  
  4776  type ListComponentsOutput struct {
  4777  	_ struct{} `type:"structure"`
  4778  
  4779  	// The list of application components.
  4780  	ApplicationComponentList []*ApplicationComponent `type:"list"`
  4781  
  4782  	// The token to request the next page of results.
  4783  	NextToken *string `min:"1" type:"string"`
  4784  }
  4785  
  4786  // String returns the string representation.
  4787  //
  4788  // API parameter values that are decorated as "sensitive" in the API will not
  4789  // be included in the string output. The member name will be present, but the
  4790  // value will be replaced with "sensitive".
  4791  func (s ListComponentsOutput) String() string {
  4792  	return awsutil.Prettify(s)
  4793  }
  4794  
  4795  // GoString returns the string representation.
  4796  //
  4797  // API parameter values that are decorated as "sensitive" in the API will not
  4798  // be included in the string output. The member name will be present, but the
  4799  // value will be replaced with "sensitive".
  4800  func (s ListComponentsOutput) GoString() string {
  4801  	return s.String()
  4802  }
  4803  
  4804  // SetApplicationComponentList sets the ApplicationComponentList field's value.
  4805  func (s *ListComponentsOutput) SetApplicationComponentList(v []*ApplicationComponent) *ListComponentsOutput {
  4806  	s.ApplicationComponentList = v
  4807  	return s
  4808  }
  4809  
  4810  // SetNextToken sets the NextToken field's value.
  4811  func (s *ListComponentsOutput) SetNextToken(v string) *ListComponentsOutput {
  4812  	s.NextToken = &v
  4813  	return s
  4814  }
  4815  
  4816  type ListConfigurationHistoryInput struct {
  4817  	_ struct{} `type:"structure"`
  4818  
  4819  	// The end time of the event.
  4820  	EndTime *time.Time `type:"timestamp"`
  4821  
  4822  	// The status of the configuration update event. Possible values include INFO,
  4823  	// WARN, and ERROR.
  4824  	EventStatus *string `type:"string" enum:"ConfigurationEventStatus"`
  4825  
  4826  	// The maximum number of results returned by ListConfigurationHistory in paginated
  4827  	// output. When this parameter is used, ListConfigurationHistory returns only
  4828  	// MaxResults in a single page along with a NextToken response element. The
  4829  	// remaining results of the initial request can be seen by sending another ListConfigurationHistory
  4830  	// request with the returned NextToken value. If this parameter is not used,
  4831  	// then ListConfigurationHistory returns all results.
  4832  	MaxResults *int64 `min:"1" type:"integer"`
  4833  
  4834  	// The NextToken value returned from a previous paginated ListConfigurationHistory
  4835  	// request where MaxResults was used and the results exceeded the value of that
  4836  	// parameter. Pagination continues from the end of the previous results that
  4837  	// returned the NextToken value. This value is null when there are no more results
  4838  	// to return.
  4839  	NextToken *string `min:"1" type:"string"`
  4840  
  4841  	// Resource group to which the application belongs.
  4842  	ResourceGroupName *string `min:"1" type:"string"`
  4843  
  4844  	// The start time of the event.
  4845  	StartTime *time.Time `type:"timestamp"`
  4846  }
  4847  
  4848  // String returns the string representation.
  4849  //
  4850  // API parameter values that are decorated as "sensitive" in the API will not
  4851  // be included in the string output. The member name will be present, but the
  4852  // value will be replaced with "sensitive".
  4853  func (s ListConfigurationHistoryInput) String() string {
  4854  	return awsutil.Prettify(s)
  4855  }
  4856  
  4857  // GoString returns the string representation.
  4858  //
  4859  // API parameter values that are decorated as "sensitive" in the API will not
  4860  // be included in the string output. The member name will be present, but the
  4861  // value will be replaced with "sensitive".
  4862  func (s ListConfigurationHistoryInput) GoString() string {
  4863  	return s.String()
  4864  }
  4865  
  4866  // Validate inspects the fields of the type to determine if they are valid.
  4867  func (s *ListConfigurationHistoryInput) Validate() error {
  4868  	invalidParams := request.ErrInvalidParams{Context: "ListConfigurationHistoryInput"}
  4869  	if s.MaxResults != nil && *s.MaxResults < 1 {
  4870  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  4871  	}
  4872  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  4873  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  4874  	}
  4875  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  4876  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  4877  	}
  4878  
  4879  	if invalidParams.Len() > 0 {
  4880  		return invalidParams
  4881  	}
  4882  	return nil
  4883  }
  4884  
  4885  // SetEndTime sets the EndTime field's value.
  4886  func (s *ListConfigurationHistoryInput) SetEndTime(v time.Time) *ListConfigurationHistoryInput {
  4887  	s.EndTime = &v
  4888  	return s
  4889  }
  4890  
  4891  // SetEventStatus sets the EventStatus field's value.
  4892  func (s *ListConfigurationHistoryInput) SetEventStatus(v string) *ListConfigurationHistoryInput {
  4893  	s.EventStatus = &v
  4894  	return s
  4895  }
  4896  
  4897  // SetMaxResults sets the MaxResults field's value.
  4898  func (s *ListConfigurationHistoryInput) SetMaxResults(v int64) *ListConfigurationHistoryInput {
  4899  	s.MaxResults = &v
  4900  	return s
  4901  }
  4902  
  4903  // SetNextToken sets the NextToken field's value.
  4904  func (s *ListConfigurationHistoryInput) SetNextToken(v string) *ListConfigurationHistoryInput {
  4905  	s.NextToken = &v
  4906  	return s
  4907  }
  4908  
  4909  // SetResourceGroupName sets the ResourceGroupName field's value.
  4910  func (s *ListConfigurationHistoryInput) SetResourceGroupName(v string) *ListConfigurationHistoryInput {
  4911  	s.ResourceGroupName = &v
  4912  	return s
  4913  }
  4914  
  4915  // SetStartTime sets the StartTime field's value.
  4916  func (s *ListConfigurationHistoryInput) SetStartTime(v time.Time) *ListConfigurationHistoryInput {
  4917  	s.StartTime = &v
  4918  	return s
  4919  }
  4920  
  4921  type ListConfigurationHistoryOutput struct {
  4922  	_ struct{} `type:"structure"`
  4923  
  4924  	// The list of configuration events and their corresponding details.
  4925  	EventList []*ConfigurationEvent `type:"list"`
  4926  
  4927  	// The NextToken value to include in a future ListConfigurationHistory request.
  4928  	// When the results of a ListConfigurationHistory request exceed MaxResults,
  4929  	// this value can be used to retrieve the next page of results. This value is
  4930  	// null when there are no more results to return.
  4931  	NextToken *string `min:"1" type:"string"`
  4932  }
  4933  
  4934  // String returns the string representation.
  4935  //
  4936  // API parameter values that are decorated as "sensitive" in the API will not
  4937  // be included in the string output. The member name will be present, but the
  4938  // value will be replaced with "sensitive".
  4939  func (s ListConfigurationHistoryOutput) String() string {
  4940  	return awsutil.Prettify(s)
  4941  }
  4942  
  4943  // GoString returns the string representation.
  4944  //
  4945  // API parameter values that are decorated as "sensitive" in the API will not
  4946  // be included in the string output. The member name will be present, but the
  4947  // value will be replaced with "sensitive".
  4948  func (s ListConfigurationHistoryOutput) GoString() string {
  4949  	return s.String()
  4950  }
  4951  
  4952  // SetEventList sets the EventList field's value.
  4953  func (s *ListConfigurationHistoryOutput) SetEventList(v []*ConfigurationEvent) *ListConfigurationHistoryOutput {
  4954  	s.EventList = v
  4955  	return s
  4956  }
  4957  
  4958  // SetNextToken sets the NextToken field's value.
  4959  func (s *ListConfigurationHistoryOutput) SetNextToken(v string) *ListConfigurationHistoryOutput {
  4960  	s.NextToken = &v
  4961  	return s
  4962  }
  4963  
  4964  type ListLogPatternSetsInput struct {
  4965  	_ struct{} `type:"structure"`
  4966  
  4967  	// The maximum number of results to return in a single call. To retrieve the
  4968  	// remaining results, make another call with the returned NextToken value.
  4969  	MaxResults *int64 `min:"1" type:"integer"`
  4970  
  4971  	// The token to request the next page of results.
  4972  	NextToken *string `min:"1" type:"string"`
  4973  
  4974  	// The name of the resource group.
  4975  	//
  4976  	// ResourceGroupName is a required field
  4977  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  4978  }
  4979  
  4980  // String returns the string representation.
  4981  //
  4982  // API parameter values that are decorated as "sensitive" in the API will not
  4983  // be included in the string output. The member name will be present, but the
  4984  // value will be replaced with "sensitive".
  4985  func (s ListLogPatternSetsInput) String() string {
  4986  	return awsutil.Prettify(s)
  4987  }
  4988  
  4989  // GoString returns the string representation.
  4990  //
  4991  // API parameter values that are decorated as "sensitive" in the API will not
  4992  // be included in the string output. The member name will be present, but the
  4993  // value will be replaced with "sensitive".
  4994  func (s ListLogPatternSetsInput) GoString() string {
  4995  	return s.String()
  4996  }
  4997  
  4998  // Validate inspects the fields of the type to determine if they are valid.
  4999  func (s *ListLogPatternSetsInput) Validate() error {
  5000  	invalidParams := request.ErrInvalidParams{Context: "ListLogPatternSetsInput"}
  5001  	if s.MaxResults != nil && *s.MaxResults < 1 {
  5002  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  5003  	}
  5004  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  5005  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  5006  	}
  5007  	if s.ResourceGroupName == nil {
  5008  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  5009  	}
  5010  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  5011  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  5012  	}
  5013  
  5014  	if invalidParams.Len() > 0 {
  5015  		return invalidParams
  5016  	}
  5017  	return nil
  5018  }
  5019  
  5020  // SetMaxResults sets the MaxResults field's value.
  5021  func (s *ListLogPatternSetsInput) SetMaxResults(v int64) *ListLogPatternSetsInput {
  5022  	s.MaxResults = &v
  5023  	return s
  5024  }
  5025  
  5026  // SetNextToken sets the NextToken field's value.
  5027  func (s *ListLogPatternSetsInput) SetNextToken(v string) *ListLogPatternSetsInput {
  5028  	s.NextToken = &v
  5029  	return s
  5030  }
  5031  
  5032  // SetResourceGroupName sets the ResourceGroupName field's value.
  5033  func (s *ListLogPatternSetsInput) SetResourceGroupName(v string) *ListLogPatternSetsInput {
  5034  	s.ResourceGroupName = &v
  5035  	return s
  5036  }
  5037  
  5038  type ListLogPatternSetsOutput struct {
  5039  	_ struct{} `type:"structure"`
  5040  
  5041  	// The list of log pattern sets.
  5042  	LogPatternSets []*string `type:"list"`
  5043  
  5044  	// The token used to retrieve the next page of results. This value is null when
  5045  	// there are no more results to return.
  5046  	NextToken *string `min:"1" type:"string"`
  5047  
  5048  	// The name of the resource group.
  5049  	ResourceGroupName *string `min:"1" type:"string"`
  5050  }
  5051  
  5052  // String returns the string representation.
  5053  //
  5054  // API parameter values that are decorated as "sensitive" in the API will not
  5055  // be included in the string output. The member name will be present, but the
  5056  // value will be replaced with "sensitive".
  5057  func (s ListLogPatternSetsOutput) String() string {
  5058  	return awsutil.Prettify(s)
  5059  }
  5060  
  5061  // GoString returns the string representation.
  5062  //
  5063  // API parameter values that are decorated as "sensitive" in the API will not
  5064  // be included in the string output. The member name will be present, but the
  5065  // value will be replaced with "sensitive".
  5066  func (s ListLogPatternSetsOutput) GoString() string {
  5067  	return s.String()
  5068  }
  5069  
  5070  // SetLogPatternSets sets the LogPatternSets field's value.
  5071  func (s *ListLogPatternSetsOutput) SetLogPatternSets(v []*string) *ListLogPatternSetsOutput {
  5072  	s.LogPatternSets = v
  5073  	return s
  5074  }
  5075  
  5076  // SetNextToken sets the NextToken field's value.
  5077  func (s *ListLogPatternSetsOutput) SetNextToken(v string) *ListLogPatternSetsOutput {
  5078  	s.NextToken = &v
  5079  	return s
  5080  }
  5081  
  5082  // SetResourceGroupName sets the ResourceGroupName field's value.
  5083  func (s *ListLogPatternSetsOutput) SetResourceGroupName(v string) *ListLogPatternSetsOutput {
  5084  	s.ResourceGroupName = &v
  5085  	return s
  5086  }
  5087  
  5088  type ListLogPatternsInput struct {
  5089  	_ struct{} `type:"structure"`
  5090  
  5091  	// The maximum number of results to return in a single call. To retrieve the
  5092  	// remaining results, make another call with the returned NextToken value.
  5093  	MaxResults *int64 `min:"1" type:"integer"`
  5094  
  5095  	// The token to request the next page of results.
  5096  	NextToken *string `min:"1" type:"string"`
  5097  
  5098  	// The name of the log pattern set.
  5099  	PatternSetName *string `min:"1" type:"string"`
  5100  
  5101  	// The name of the resource group.
  5102  	//
  5103  	// ResourceGroupName is a required field
  5104  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  5105  }
  5106  
  5107  // String returns the string representation.
  5108  //
  5109  // API parameter values that are decorated as "sensitive" in the API will not
  5110  // be included in the string output. The member name will be present, but the
  5111  // value will be replaced with "sensitive".
  5112  func (s ListLogPatternsInput) String() string {
  5113  	return awsutil.Prettify(s)
  5114  }
  5115  
  5116  // GoString returns the string representation.
  5117  //
  5118  // API parameter values that are decorated as "sensitive" in the API will not
  5119  // be included in the string output. The member name will be present, but the
  5120  // value will be replaced with "sensitive".
  5121  func (s ListLogPatternsInput) GoString() string {
  5122  	return s.String()
  5123  }
  5124  
  5125  // Validate inspects the fields of the type to determine if they are valid.
  5126  func (s *ListLogPatternsInput) Validate() error {
  5127  	invalidParams := request.ErrInvalidParams{Context: "ListLogPatternsInput"}
  5128  	if s.MaxResults != nil && *s.MaxResults < 1 {
  5129  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  5130  	}
  5131  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  5132  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  5133  	}
  5134  	if s.PatternSetName != nil && len(*s.PatternSetName) < 1 {
  5135  		invalidParams.Add(request.NewErrParamMinLen("PatternSetName", 1))
  5136  	}
  5137  	if s.ResourceGroupName == nil {
  5138  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  5139  	}
  5140  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  5141  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  5142  	}
  5143  
  5144  	if invalidParams.Len() > 0 {
  5145  		return invalidParams
  5146  	}
  5147  	return nil
  5148  }
  5149  
  5150  // SetMaxResults sets the MaxResults field's value.
  5151  func (s *ListLogPatternsInput) SetMaxResults(v int64) *ListLogPatternsInput {
  5152  	s.MaxResults = &v
  5153  	return s
  5154  }
  5155  
  5156  // SetNextToken sets the NextToken field's value.
  5157  func (s *ListLogPatternsInput) SetNextToken(v string) *ListLogPatternsInput {
  5158  	s.NextToken = &v
  5159  	return s
  5160  }
  5161  
  5162  // SetPatternSetName sets the PatternSetName field's value.
  5163  func (s *ListLogPatternsInput) SetPatternSetName(v string) *ListLogPatternsInput {
  5164  	s.PatternSetName = &v
  5165  	return s
  5166  }
  5167  
  5168  // SetResourceGroupName sets the ResourceGroupName field's value.
  5169  func (s *ListLogPatternsInput) SetResourceGroupName(v string) *ListLogPatternsInput {
  5170  	s.ResourceGroupName = &v
  5171  	return s
  5172  }
  5173  
  5174  type ListLogPatternsOutput struct {
  5175  	_ struct{} `type:"structure"`
  5176  
  5177  	// The list of log patterns.
  5178  	LogPatterns []*LogPattern `type:"list"`
  5179  
  5180  	// The token used to retrieve the next page of results. This value is null when
  5181  	// there are no more results to return.
  5182  	NextToken *string `min:"1" type:"string"`
  5183  
  5184  	// The name of the resource group.
  5185  	ResourceGroupName *string `min:"1" type:"string"`
  5186  }
  5187  
  5188  // String returns the string representation.
  5189  //
  5190  // API parameter values that are decorated as "sensitive" in the API will not
  5191  // be included in the string output. The member name will be present, but the
  5192  // value will be replaced with "sensitive".
  5193  func (s ListLogPatternsOutput) String() string {
  5194  	return awsutil.Prettify(s)
  5195  }
  5196  
  5197  // GoString returns the string representation.
  5198  //
  5199  // API parameter values that are decorated as "sensitive" in the API will not
  5200  // be included in the string output. The member name will be present, but the
  5201  // value will be replaced with "sensitive".
  5202  func (s ListLogPatternsOutput) GoString() string {
  5203  	return s.String()
  5204  }
  5205  
  5206  // SetLogPatterns sets the LogPatterns field's value.
  5207  func (s *ListLogPatternsOutput) SetLogPatterns(v []*LogPattern) *ListLogPatternsOutput {
  5208  	s.LogPatterns = v
  5209  	return s
  5210  }
  5211  
  5212  // SetNextToken sets the NextToken field's value.
  5213  func (s *ListLogPatternsOutput) SetNextToken(v string) *ListLogPatternsOutput {
  5214  	s.NextToken = &v
  5215  	return s
  5216  }
  5217  
  5218  // SetResourceGroupName sets the ResourceGroupName field's value.
  5219  func (s *ListLogPatternsOutput) SetResourceGroupName(v string) *ListLogPatternsOutput {
  5220  	s.ResourceGroupName = &v
  5221  	return s
  5222  }
  5223  
  5224  type ListProblemsInput struct {
  5225  	_ struct{} `type:"structure"`
  5226  
  5227  	// The time when the problem ended, in epoch seconds. If not specified, problems
  5228  	// within the past seven days are returned.
  5229  	EndTime *time.Time `type:"timestamp"`
  5230  
  5231  	// The maximum number of results to return in a single call. To retrieve the
  5232  	// remaining results, make another call with the returned NextToken value.
  5233  	MaxResults *int64 `min:"1" type:"integer"`
  5234  
  5235  	// The token to request the next page of results.
  5236  	NextToken *string `min:"1" type:"string"`
  5237  
  5238  	// The name of the resource group.
  5239  	ResourceGroupName *string `min:"1" type:"string"`
  5240  
  5241  	// The time when the problem was detected, in epoch seconds. If you don't specify
  5242  	// a time frame for the request, problems within the past seven days are returned.
  5243  	StartTime *time.Time `type:"timestamp"`
  5244  }
  5245  
  5246  // String returns the string representation.
  5247  //
  5248  // API parameter values that are decorated as "sensitive" in the API will not
  5249  // be included in the string output. The member name will be present, but the
  5250  // value will be replaced with "sensitive".
  5251  func (s ListProblemsInput) String() string {
  5252  	return awsutil.Prettify(s)
  5253  }
  5254  
  5255  // GoString returns the string representation.
  5256  //
  5257  // API parameter values that are decorated as "sensitive" in the API will not
  5258  // be included in the string output. The member name will be present, but the
  5259  // value will be replaced with "sensitive".
  5260  func (s ListProblemsInput) GoString() string {
  5261  	return s.String()
  5262  }
  5263  
  5264  // Validate inspects the fields of the type to determine if they are valid.
  5265  func (s *ListProblemsInput) Validate() error {
  5266  	invalidParams := request.ErrInvalidParams{Context: "ListProblemsInput"}
  5267  	if s.MaxResults != nil && *s.MaxResults < 1 {
  5268  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  5269  	}
  5270  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  5271  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  5272  	}
  5273  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  5274  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  5275  	}
  5276  
  5277  	if invalidParams.Len() > 0 {
  5278  		return invalidParams
  5279  	}
  5280  	return nil
  5281  }
  5282  
  5283  // SetEndTime sets the EndTime field's value.
  5284  func (s *ListProblemsInput) SetEndTime(v time.Time) *ListProblemsInput {
  5285  	s.EndTime = &v
  5286  	return s
  5287  }
  5288  
  5289  // SetMaxResults sets the MaxResults field's value.
  5290  func (s *ListProblemsInput) SetMaxResults(v int64) *ListProblemsInput {
  5291  	s.MaxResults = &v
  5292  	return s
  5293  }
  5294  
  5295  // SetNextToken sets the NextToken field's value.
  5296  func (s *ListProblemsInput) SetNextToken(v string) *ListProblemsInput {
  5297  	s.NextToken = &v
  5298  	return s
  5299  }
  5300  
  5301  // SetResourceGroupName sets the ResourceGroupName field's value.
  5302  func (s *ListProblemsInput) SetResourceGroupName(v string) *ListProblemsInput {
  5303  	s.ResourceGroupName = &v
  5304  	return s
  5305  }
  5306  
  5307  // SetStartTime sets the StartTime field's value.
  5308  func (s *ListProblemsInput) SetStartTime(v time.Time) *ListProblemsInput {
  5309  	s.StartTime = &v
  5310  	return s
  5311  }
  5312  
  5313  type ListProblemsOutput struct {
  5314  	_ struct{} `type:"structure"`
  5315  
  5316  	// The token used to retrieve the next page of results. This value is null when
  5317  	// there are no more results to return.
  5318  	NextToken *string `min:"1" type:"string"`
  5319  
  5320  	// The list of problems.
  5321  	ProblemList []*Problem `type:"list"`
  5322  }
  5323  
  5324  // String returns the string representation.
  5325  //
  5326  // API parameter values that are decorated as "sensitive" in the API will not
  5327  // be included in the string output. The member name will be present, but the
  5328  // value will be replaced with "sensitive".
  5329  func (s ListProblemsOutput) String() string {
  5330  	return awsutil.Prettify(s)
  5331  }
  5332  
  5333  // GoString returns the string representation.
  5334  //
  5335  // API parameter values that are decorated as "sensitive" in the API will not
  5336  // be included in the string output. The member name will be present, but the
  5337  // value will be replaced with "sensitive".
  5338  func (s ListProblemsOutput) GoString() string {
  5339  	return s.String()
  5340  }
  5341  
  5342  // SetNextToken sets the NextToken field's value.
  5343  func (s *ListProblemsOutput) SetNextToken(v string) *ListProblemsOutput {
  5344  	s.NextToken = &v
  5345  	return s
  5346  }
  5347  
  5348  // SetProblemList sets the ProblemList field's value.
  5349  func (s *ListProblemsOutput) SetProblemList(v []*Problem) *ListProblemsOutput {
  5350  	s.ProblemList = v
  5351  	return s
  5352  }
  5353  
  5354  type ListTagsForResourceInput struct {
  5355  	_ struct{} `type:"structure"`
  5356  
  5357  	// The Amazon Resource Name (ARN) of the application that you want to retrieve
  5358  	// tag information for.
  5359  	//
  5360  	// ResourceARN is a required field
  5361  	ResourceARN *string `min:"1" type:"string" required:"true"`
  5362  }
  5363  
  5364  // String returns the string representation.
  5365  //
  5366  // API parameter values that are decorated as "sensitive" in the API will not
  5367  // be included in the string output. The member name will be present, but the
  5368  // value will be replaced with "sensitive".
  5369  func (s ListTagsForResourceInput) String() string {
  5370  	return awsutil.Prettify(s)
  5371  }
  5372  
  5373  // GoString returns the string representation.
  5374  //
  5375  // API parameter values that are decorated as "sensitive" in the API will not
  5376  // be included in the string output. The member name will be present, but the
  5377  // value will be replaced with "sensitive".
  5378  func (s ListTagsForResourceInput) GoString() string {
  5379  	return s.String()
  5380  }
  5381  
  5382  // Validate inspects the fields of the type to determine if they are valid.
  5383  func (s *ListTagsForResourceInput) Validate() error {
  5384  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
  5385  	if s.ResourceARN == nil {
  5386  		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
  5387  	}
  5388  	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
  5389  		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
  5390  	}
  5391  
  5392  	if invalidParams.Len() > 0 {
  5393  		return invalidParams
  5394  	}
  5395  	return nil
  5396  }
  5397  
  5398  // SetResourceARN sets the ResourceARN field's value.
  5399  func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput {
  5400  	s.ResourceARN = &v
  5401  	return s
  5402  }
  5403  
  5404  type ListTagsForResourceOutput struct {
  5405  	_ struct{} `type:"structure"`
  5406  
  5407  	// An array that lists all the tags that are associated with the application.
  5408  	// Each tag consists of a required tag key (Key) and an associated tag value
  5409  	// (Value).
  5410  	Tags []*Tag `type:"list"`
  5411  }
  5412  
  5413  // String returns the string representation.
  5414  //
  5415  // API parameter values that are decorated as "sensitive" in the API will not
  5416  // be included in the string output. The member name will be present, but the
  5417  // value will be replaced with "sensitive".
  5418  func (s ListTagsForResourceOutput) String() string {
  5419  	return awsutil.Prettify(s)
  5420  }
  5421  
  5422  // GoString returns the string representation.
  5423  //
  5424  // API parameter values that are decorated as "sensitive" in the API will not
  5425  // be included in the string output. The member name will be present, but the
  5426  // value will be replaced with "sensitive".
  5427  func (s ListTagsForResourceOutput) GoString() string {
  5428  	return s.String()
  5429  }
  5430  
  5431  // SetTags sets the Tags field's value.
  5432  func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
  5433  	s.Tags = v
  5434  	return s
  5435  }
  5436  
  5437  // An object that defines the log patterns that belongs to a LogPatternSet.
  5438  type LogPattern struct {
  5439  	_ struct{} `type:"structure"`
  5440  
  5441  	// A regular expression that defines the log pattern. A log pattern can contain
  5442  	// as many as 50 characters, and it cannot be empty. The pattern must be DFA
  5443  	// compatible. Patterns that utilize forward lookahead or backreference constructions
  5444  	// are not supported.
  5445  	Pattern *string `min:"1" type:"string"`
  5446  
  5447  	// The name of the log pattern. A log pattern name can contain as many as 50
  5448  	// characters, and it cannot be empty. The characters can be Unicode letters,
  5449  	// digits, or one of the following symbols: period, dash, underscore.
  5450  	PatternName *string `min:"1" type:"string"`
  5451  
  5452  	// The name of the log pattern. A log pattern name can contain as many as 30
  5453  	// characters, and it cannot be empty. The characters can be Unicode letters,
  5454  	// digits, or one of the following symbols: period, dash, underscore.
  5455  	PatternSetName *string `min:"1" type:"string"`
  5456  
  5457  	// Rank of the log pattern. Must be a value between 1 and 1,000,000. The patterns
  5458  	// are sorted by rank, so we recommend that you set your highest priority patterns
  5459  	// with the lowest rank. A pattern of rank 1 will be the first to get matched
  5460  	// to a log line. A pattern of rank 1,000,000 will be last to get matched. When
  5461  	// you configure custom log patterns from the console, a Low severity pattern
  5462  	// translates to a 750,000 rank. A Medium severity pattern translates to a 500,000
  5463  	// rank. And a High severity pattern translates to a 250,000 rank. Rank values
  5464  	// less than 1 or greater than 1,000,000 are reserved for AWS-provided patterns.
  5465  	Rank *int64 `type:"integer"`
  5466  }
  5467  
  5468  // String returns the string representation.
  5469  //
  5470  // API parameter values that are decorated as "sensitive" in the API will not
  5471  // be included in the string output. The member name will be present, but the
  5472  // value will be replaced with "sensitive".
  5473  func (s LogPattern) String() string {
  5474  	return awsutil.Prettify(s)
  5475  }
  5476  
  5477  // GoString returns the string representation.
  5478  //
  5479  // API parameter values that are decorated as "sensitive" in the API will not
  5480  // be included in the string output. The member name will be present, but the
  5481  // value will be replaced with "sensitive".
  5482  func (s LogPattern) GoString() string {
  5483  	return s.String()
  5484  }
  5485  
  5486  // SetPattern sets the Pattern field's value.
  5487  func (s *LogPattern) SetPattern(v string) *LogPattern {
  5488  	s.Pattern = &v
  5489  	return s
  5490  }
  5491  
  5492  // SetPatternName sets the PatternName field's value.
  5493  func (s *LogPattern) SetPatternName(v string) *LogPattern {
  5494  	s.PatternName = &v
  5495  	return s
  5496  }
  5497  
  5498  // SetPatternSetName sets the PatternSetName field's value.
  5499  func (s *LogPattern) SetPatternSetName(v string) *LogPattern {
  5500  	s.PatternSetName = &v
  5501  	return s
  5502  }
  5503  
  5504  // SetRank sets the Rank field's value.
  5505  func (s *LogPattern) SetRank(v int64) *LogPattern {
  5506  	s.Rank = &v
  5507  	return s
  5508  }
  5509  
  5510  // Describes an anomaly or error with the application.
  5511  type Observation struct {
  5512  	_ struct{} `type:"structure"`
  5513  
  5514  	// The detail type of the CloudWatch Event-based observation, for example, EC2
  5515  	// Instance State-change Notification.
  5516  	CloudWatchEventDetailType *string `type:"string"`
  5517  
  5518  	// The ID of the CloudWatch Event-based observation related to the detected
  5519  	// problem.
  5520  	CloudWatchEventId *string `type:"string"`
  5521  
  5522  	// The source of the CloudWatch Event.
  5523  	CloudWatchEventSource *string `type:"string" enum:"CloudWatchEventSource"`
  5524  
  5525  	// The CodeDeploy application to which the deployment belongs.
  5526  	CodeDeployApplication *string `type:"string"`
  5527  
  5528  	// The deployment group to which the CodeDeploy deployment belongs.
  5529  	CodeDeployDeploymentGroup *string `type:"string"`
  5530  
  5531  	// The deployment ID of the CodeDeploy-based observation related to the detected
  5532  	// problem.
  5533  	CodeDeployDeploymentId *string `type:"string"`
  5534  
  5535  	// The instance group to which the CodeDeploy instance belongs.
  5536  	CodeDeployInstanceGroupId *string `type:"string"`
  5537  
  5538  	// The status of the CodeDeploy deployment, for example SUCCESS or FAILURE.
  5539  	CodeDeployState *string `type:"string"`
  5540  
  5541  	// The cause of an EBS CloudWatch event.
  5542  	EbsCause *string `type:"string"`
  5543  
  5544  	// The type of EBS CloudWatch event, such as createVolume, deleteVolume or attachVolume.
  5545  	EbsEvent *string `type:"string"`
  5546  
  5547  	// The request ID of an EBS CloudWatch event.
  5548  	EbsRequestId *string `type:"string"`
  5549  
  5550  	// The result of an EBS CloudWatch event, such as failed or succeeded.
  5551  	EbsResult *string `type:"string"`
  5552  
  5553  	// The state of the instance, such as STOPPING or TERMINATING.
  5554  	Ec2State *string `type:"string"`
  5555  
  5556  	// The time when the observation ended, in epoch seconds.
  5557  	EndTime *time.Time `type:"timestamp"`
  5558  
  5559  	// The Amazon Resource Name (ARN) of the AWS Health Event-based observation.
  5560  	HealthEventArn *string `type:"string"`
  5561  
  5562  	// The description of the AWS Health event provided by the service, such as
  5563  	// Amazon EC2.
  5564  	HealthEventDescription *string `type:"string"`
  5565  
  5566  	// The category of the AWS Health event, such as issue.
  5567  	HealthEventTypeCategory *string `type:"string"`
  5568  
  5569  	// The type of the AWS Health event, for example, AWS_EC2_POWER_CONNECTIVITY_ISSUE.
  5570  	HealthEventTypeCode *string `type:"string"`
  5571  
  5572  	// The service to which the AWS Health Event belongs, such as EC2.
  5573  	HealthService *string `type:"string"`
  5574  
  5575  	// The ID of the observation type.
  5576  	Id *string `min:"38" type:"string"`
  5577  
  5578  	// The timestamp in the CloudWatch Logs that specifies when the matched line
  5579  	// occurred.
  5580  	LineTime *time.Time `type:"timestamp"`
  5581  
  5582  	// The log filter of the observation.
  5583  	LogFilter *string `type:"string" enum:"LogFilter"`
  5584  
  5585  	// The log group name.
  5586  	LogGroup *string `type:"string"`
  5587  
  5588  	// The log text of the observation.
  5589  	LogText *string `type:"string"`
  5590  
  5591  	// The name of the observation metric.
  5592  	MetricName *string `type:"string"`
  5593  
  5594  	// The namespace of the observation metric.
  5595  	MetricNamespace *string `type:"string"`
  5596  
  5597  	// The category of an RDS event.
  5598  	RdsEventCategories *string `type:"string"`
  5599  
  5600  	// The message of an RDS event.
  5601  	RdsEventMessage *string `type:"string"`
  5602  
  5603  	// The name of the S3 CloudWatch Event-based observation.
  5604  	S3EventName *string `type:"string"`
  5605  
  5606  	// The source resource ARN of the observation.
  5607  	SourceARN *string `type:"string"`
  5608  
  5609  	// The source type of the observation.
  5610  	SourceType *string `type:"string"`
  5611  
  5612  	// The time when the observation was first detected, in epoch seconds.
  5613  	StartTime *time.Time `type:"timestamp"`
  5614  
  5615  	// The Amazon Resource Name (ARN) of the step function-based observation.
  5616  	StatesArn *string `type:"string"`
  5617  
  5618  	// The Amazon Resource Name (ARN) of the step function execution-based observation.
  5619  	StatesExecutionArn *string `type:"string"`
  5620  
  5621  	// The input to the step function-based observation.
  5622  	StatesInput *string `type:"string"`
  5623  
  5624  	// The status of the step function-related observation.
  5625  	StatesStatus *string `type:"string"`
  5626  
  5627  	// The unit of the source observation metric.
  5628  	Unit *string `type:"string"`
  5629  
  5630  	// The value of the source observation metric.
  5631  	Value *float64 `type:"double"`
  5632  
  5633  	// The X-Ray request error percentage for this node.
  5634  	XRayErrorPercent *int64 `type:"integer"`
  5635  
  5636  	// The X-Ray request fault percentage for this node.
  5637  	XRayFaultPercent *int64 `type:"integer"`
  5638  
  5639  	// The name of the X-Ray node.
  5640  	XRayNodeName *string `type:"string"`
  5641  
  5642  	// The type of the X-Ray node.
  5643  	XRayNodeType *string `type:"string"`
  5644  
  5645  	// The X-Ray node request average latency for this node.
  5646  	XRayRequestAverageLatency *int64 `type:"long"`
  5647  
  5648  	// The X-Ray request count for this node.
  5649  	XRayRequestCount *int64 `type:"integer"`
  5650  
  5651  	// The X-Ray request throttle percentage for this node.
  5652  	XRayThrottlePercent *int64 `type:"integer"`
  5653  }
  5654  
  5655  // String returns the string representation.
  5656  //
  5657  // API parameter values that are decorated as "sensitive" in the API will not
  5658  // be included in the string output. The member name will be present, but the
  5659  // value will be replaced with "sensitive".
  5660  func (s Observation) String() string {
  5661  	return awsutil.Prettify(s)
  5662  }
  5663  
  5664  // GoString returns the string representation.
  5665  //
  5666  // API parameter values that are decorated as "sensitive" in the API will not
  5667  // be included in the string output. The member name will be present, but the
  5668  // value will be replaced with "sensitive".
  5669  func (s Observation) GoString() string {
  5670  	return s.String()
  5671  }
  5672  
  5673  // SetCloudWatchEventDetailType sets the CloudWatchEventDetailType field's value.
  5674  func (s *Observation) SetCloudWatchEventDetailType(v string) *Observation {
  5675  	s.CloudWatchEventDetailType = &v
  5676  	return s
  5677  }
  5678  
  5679  // SetCloudWatchEventId sets the CloudWatchEventId field's value.
  5680  func (s *Observation) SetCloudWatchEventId(v string) *Observation {
  5681  	s.CloudWatchEventId = &v
  5682  	return s
  5683  }
  5684  
  5685  // SetCloudWatchEventSource sets the CloudWatchEventSource field's value.
  5686  func (s *Observation) SetCloudWatchEventSource(v string) *Observation {
  5687  	s.CloudWatchEventSource = &v
  5688  	return s
  5689  }
  5690  
  5691  // SetCodeDeployApplication sets the CodeDeployApplication field's value.
  5692  func (s *Observation) SetCodeDeployApplication(v string) *Observation {
  5693  	s.CodeDeployApplication = &v
  5694  	return s
  5695  }
  5696  
  5697  // SetCodeDeployDeploymentGroup sets the CodeDeployDeploymentGroup field's value.
  5698  func (s *Observation) SetCodeDeployDeploymentGroup(v string) *Observation {
  5699  	s.CodeDeployDeploymentGroup = &v
  5700  	return s
  5701  }
  5702  
  5703  // SetCodeDeployDeploymentId sets the CodeDeployDeploymentId field's value.
  5704  func (s *Observation) SetCodeDeployDeploymentId(v string) *Observation {
  5705  	s.CodeDeployDeploymentId = &v
  5706  	return s
  5707  }
  5708  
  5709  // SetCodeDeployInstanceGroupId sets the CodeDeployInstanceGroupId field's value.
  5710  func (s *Observation) SetCodeDeployInstanceGroupId(v string) *Observation {
  5711  	s.CodeDeployInstanceGroupId = &v
  5712  	return s
  5713  }
  5714  
  5715  // SetCodeDeployState sets the CodeDeployState field's value.
  5716  func (s *Observation) SetCodeDeployState(v string) *Observation {
  5717  	s.CodeDeployState = &v
  5718  	return s
  5719  }
  5720  
  5721  // SetEbsCause sets the EbsCause field's value.
  5722  func (s *Observation) SetEbsCause(v string) *Observation {
  5723  	s.EbsCause = &v
  5724  	return s
  5725  }
  5726  
  5727  // SetEbsEvent sets the EbsEvent field's value.
  5728  func (s *Observation) SetEbsEvent(v string) *Observation {
  5729  	s.EbsEvent = &v
  5730  	return s
  5731  }
  5732  
  5733  // SetEbsRequestId sets the EbsRequestId field's value.
  5734  func (s *Observation) SetEbsRequestId(v string) *Observation {
  5735  	s.EbsRequestId = &v
  5736  	return s
  5737  }
  5738  
  5739  // SetEbsResult sets the EbsResult field's value.
  5740  func (s *Observation) SetEbsResult(v string) *Observation {
  5741  	s.EbsResult = &v
  5742  	return s
  5743  }
  5744  
  5745  // SetEc2State sets the Ec2State field's value.
  5746  func (s *Observation) SetEc2State(v string) *Observation {
  5747  	s.Ec2State = &v
  5748  	return s
  5749  }
  5750  
  5751  // SetEndTime sets the EndTime field's value.
  5752  func (s *Observation) SetEndTime(v time.Time) *Observation {
  5753  	s.EndTime = &v
  5754  	return s
  5755  }
  5756  
  5757  // SetHealthEventArn sets the HealthEventArn field's value.
  5758  func (s *Observation) SetHealthEventArn(v string) *Observation {
  5759  	s.HealthEventArn = &v
  5760  	return s
  5761  }
  5762  
  5763  // SetHealthEventDescription sets the HealthEventDescription field's value.
  5764  func (s *Observation) SetHealthEventDescription(v string) *Observation {
  5765  	s.HealthEventDescription = &v
  5766  	return s
  5767  }
  5768  
  5769  // SetHealthEventTypeCategory sets the HealthEventTypeCategory field's value.
  5770  func (s *Observation) SetHealthEventTypeCategory(v string) *Observation {
  5771  	s.HealthEventTypeCategory = &v
  5772  	return s
  5773  }
  5774  
  5775  // SetHealthEventTypeCode sets the HealthEventTypeCode field's value.
  5776  func (s *Observation) SetHealthEventTypeCode(v string) *Observation {
  5777  	s.HealthEventTypeCode = &v
  5778  	return s
  5779  }
  5780  
  5781  // SetHealthService sets the HealthService field's value.
  5782  func (s *Observation) SetHealthService(v string) *Observation {
  5783  	s.HealthService = &v
  5784  	return s
  5785  }
  5786  
  5787  // SetId sets the Id field's value.
  5788  func (s *Observation) SetId(v string) *Observation {
  5789  	s.Id = &v
  5790  	return s
  5791  }
  5792  
  5793  // SetLineTime sets the LineTime field's value.
  5794  func (s *Observation) SetLineTime(v time.Time) *Observation {
  5795  	s.LineTime = &v
  5796  	return s
  5797  }
  5798  
  5799  // SetLogFilter sets the LogFilter field's value.
  5800  func (s *Observation) SetLogFilter(v string) *Observation {
  5801  	s.LogFilter = &v
  5802  	return s
  5803  }
  5804  
  5805  // SetLogGroup sets the LogGroup field's value.
  5806  func (s *Observation) SetLogGroup(v string) *Observation {
  5807  	s.LogGroup = &v
  5808  	return s
  5809  }
  5810  
  5811  // SetLogText sets the LogText field's value.
  5812  func (s *Observation) SetLogText(v string) *Observation {
  5813  	s.LogText = &v
  5814  	return s
  5815  }
  5816  
  5817  // SetMetricName sets the MetricName field's value.
  5818  func (s *Observation) SetMetricName(v string) *Observation {
  5819  	s.MetricName = &v
  5820  	return s
  5821  }
  5822  
  5823  // SetMetricNamespace sets the MetricNamespace field's value.
  5824  func (s *Observation) SetMetricNamespace(v string) *Observation {
  5825  	s.MetricNamespace = &v
  5826  	return s
  5827  }
  5828  
  5829  // SetRdsEventCategories sets the RdsEventCategories field's value.
  5830  func (s *Observation) SetRdsEventCategories(v string) *Observation {
  5831  	s.RdsEventCategories = &v
  5832  	return s
  5833  }
  5834  
  5835  // SetRdsEventMessage sets the RdsEventMessage field's value.
  5836  func (s *Observation) SetRdsEventMessage(v string) *Observation {
  5837  	s.RdsEventMessage = &v
  5838  	return s
  5839  }
  5840  
  5841  // SetS3EventName sets the S3EventName field's value.
  5842  func (s *Observation) SetS3EventName(v string) *Observation {
  5843  	s.S3EventName = &v
  5844  	return s
  5845  }
  5846  
  5847  // SetSourceARN sets the SourceARN field's value.
  5848  func (s *Observation) SetSourceARN(v string) *Observation {
  5849  	s.SourceARN = &v
  5850  	return s
  5851  }
  5852  
  5853  // SetSourceType sets the SourceType field's value.
  5854  func (s *Observation) SetSourceType(v string) *Observation {
  5855  	s.SourceType = &v
  5856  	return s
  5857  }
  5858  
  5859  // SetStartTime sets the StartTime field's value.
  5860  func (s *Observation) SetStartTime(v time.Time) *Observation {
  5861  	s.StartTime = &v
  5862  	return s
  5863  }
  5864  
  5865  // SetStatesArn sets the StatesArn field's value.
  5866  func (s *Observation) SetStatesArn(v string) *Observation {
  5867  	s.StatesArn = &v
  5868  	return s
  5869  }
  5870  
  5871  // SetStatesExecutionArn sets the StatesExecutionArn field's value.
  5872  func (s *Observation) SetStatesExecutionArn(v string) *Observation {
  5873  	s.StatesExecutionArn = &v
  5874  	return s
  5875  }
  5876  
  5877  // SetStatesInput sets the StatesInput field's value.
  5878  func (s *Observation) SetStatesInput(v string) *Observation {
  5879  	s.StatesInput = &v
  5880  	return s
  5881  }
  5882  
  5883  // SetStatesStatus sets the StatesStatus field's value.
  5884  func (s *Observation) SetStatesStatus(v string) *Observation {
  5885  	s.StatesStatus = &v
  5886  	return s
  5887  }
  5888  
  5889  // SetUnit sets the Unit field's value.
  5890  func (s *Observation) SetUnit(v string) *Observation {
  5891  	s.Unit = &v
  5892  	return s
  5893  }
  5894  
  5895  // SetValue sets the Value field's value.
  5896  func (s *Observation) SetValue(v float64) *Observation {
  5897  	s.Value = &v
  5898  	return s
  5899  }
  5900  
  5901  // SetXRayErrorPercent sets the XRayErrorPercent field's value.
  5902  func (s *Observation) SetXRayErrorPercent(v int64) *Observation {
  5903  	s.XRayErrorPercent = &v
  5904  	return s
  5905  }
  5906  
  5907  // SetXRayFaultPercent sets the XRayFaultPercent field's value.
  5908  func (s *Observation) SetXRayFaultPercent(v int64) *Observation {
  5909  	s.XRayFaultPercent = &v
  5910  	return s
  5911  }
  5912  
  5913  // SetXRayNodeName sets the XRayNodeName field's value.
  5914  func (s *Observation) SetXRayNodeName(v string) *Observation {
  5915  	s.XRayNodeName = &v
  5916  	return s
  5917  }
  5918  
  5919  // SetXRayNodeType sets the XRayNodeType field's value.
  5920  func (s *Observation) SetXRayNodeType(v string) *Observation {
  5921  	s.XRayNodeType = &v
  5922  	return s
  5923  }
  5924  
  5925  // SetXRayRequestAverageLatency sets the XRayRequestAverageLatency field's value.
  5926  func (s *Observation) SetXRayRequestAverageLatency(v int64) *Observation {
  5927  	s.XRayRequestAverageLatency = &v
  5928  	return s
  5929  }
  5930  
  5931  // SetXRayRequestCount sets the XRayRequestCount field's value.
  5932  func (s *Observation) SetXRayRequestCount(v int64) *Observation {
  5933  	s.XRayRequestCount = &v
  5934  	return s
  5935  }
  5936  
  5937  // SetXRayThrottlePercent sets the XRayThrottlePercent field's value.
  5938  func (s *Observation) SetXRayThrottlePercent(v int64) *Observation {
  5939  	s.XRayThrottlePercent = &v
  5940  	return s
  5941  }
  5942  
  5943  // Describes a problem that is detected by correlating observations.
  5944  type Problem struct {
  5945  	_ struct{} `type:"structure"`
  5946  
  5947  	// The resource affected by the problem.
  5948  	AffectedResource *string `type:"string"`
  5949  
  5950  	// The time when the problem ended, in epoch seconds.
  5951  	EndTime *time.Time `type:"timestamp"`
  5952  
  5953  	// Feedback provided by the user about the problem.
  5954  	Feedback map[string]*string `type:"map"`
  5955  
  5956  	// The ID of the problem.
  5957  	Id *string `min:"38" type:"string"`
  5958  
  5959  	// A detailed analysis of the problem using machine learning.
  5960  	Insights *string `type:"string"`
  5961  
  5962  	// The name of the resource group affected by the problem.
  5963  	ResourceGroupName *string `min:"1" type:"string"`
  5964  
  5965  	// A measure of the level of impact of the problem.
  5966  	SeverityLevel *string `type:"string" enum:"SeverityLevel"`
  5967  
  5968  	// The time when the problem started, in epoch seconds.
  5969  	StartTime *time.Time `type:"timestamp"`
  5970  
  5971  	// The status of the problem.
  5972  	Status *string `type:"string" enum:"Status"`
  5973  
  5974  	// The name of the problem.
  5975  	Title *string `type:"string"`
  5976  }
  5977  
  5978  // String returns the string representation.
  5979  //
  5980  // API parameter values that are decorated as "sensitive" in the API will not
  5981  // be included in the string output. The member name will be present, but the
  5982  // value will be replaced with "sensitive".
  5983  func (s Problem) String() string {
  5984  	return awsutil.Prettify(s)
  5985  }
  5986  
  5987  // GoString returns the string representation.
  5988  //
  5989  // API parameter values that are decorated as "sensitive" in the API will not
  5990  // be included in the string output. The member name will be present, but the
  5991  // value will be replaced with "sensitive".
  5992  func (s Problem) GoString() string {
  5993  	return s.String()
  5994  }
  5995  
  5996  // SetAffectedResource sets the AffectedResource field's value.
  5997  func (s *Problem) SetAffectedResource(v string) *Problem {
  5998  	s.AffectedResource = &v
  5999  	return s
  6000  }
  6001  
  6002  // SetEndTime sets the EndTime field's value.
  6003  func (s *Problem) SetEndTime(v time.Time) *Problem {
  6004  	s.EndTime = &v
  6005  	return s
  6006  }
  6007  
  6008  // SetFeedback sets the Feedback field's value.
  6009  func (s *Problem) SetFeedback(v map[string]*string) *Problem {
  6010  	s.Feedback = v
  6011  	return s
  6012  }
  6013  
  6014  // SetId sets the Id field's value.
  6015  func (s *Problem) SetId(v string) *Problem {
  6016  	s.Id = &v
  6017  	return s
  6018  }
  6019  
  6020  // SetInsights sets the Insights field's value.
  6021  func (s *Problem) SetInsights(v string) *Problem {
  6022  	s.Insights = &v
  6023  	return s
  6024  }
  6025  
  6026  // SetResourceGroupName sets the ResourceGroupName field's value.
  6027  func (s *Problem) SetResourceGroupName(v string) *Problem {
  6028  	s.ResourceGroupName = &v
  6029  	return s
  6030  }
  6031  
  6032  // SetSeverityLevel sets the SeverityLevel field's value.
  6033  func (s *Problem) SetSeverityLevel(v string) *Problem {
  6034  	s.SeverityLevel = &v
  6035  	return s
  6036  }
  6037  
  6038  // SetStartTime sets the StartTime field's value.
  6039  func (s *Problem) SetStartTime(v time.Time) *Problem {
  6040  	s.StartTime = &v
  6041  	return s
  6042  }
  6043  
  6044  // SetStatus sets the Status field's value.
  6045  func (s *Problem) SetStatus(v string) *Problem {
  6046  	s.Status = &v
  6047  	return s
  6048  }
  6049  
  6050  // SetTitle sets the Title field's value.
  6051  func (s *Problem) SetTitle(v string) *Problem {
  6052  	s.Title = &v
  6053  	return s
  6054  }
  6055  
  6056  // Describes observations related to the problem.
  6057  type RelatedObservations struct {
  6058  	_ struct{} `type:"structure"`
  6059  
  6060  	// The list of observations related to the problem.
  6061  	ObservationList []*Observation `type:"list"`
  6062  }
  6063  
  6064  // String returns the string representation.
  6065  //
  6066  // API parameter values that are decorated as "sensitive" in the API will not
  6067  // be included in the string output. The member name will be present, but the
  6068  // value will be replaced with "sensitive".
  6069  func (s RelatedObservations) String() string {
  6070  	return awsutil.Prettify(s)
  6071  }
  6072  
  6073  // GoString returns the string representation.
  6074  //
  6075  // API parameter values that are decorated as "sensitive" in the API will not
  6076  // be included in the string output. The member name will be present, but the
  6077  // value will be replaced with "sensitive".
  6078  func (s RelatedObservations) GoString() string {
  6079  	return s.String()
  6080  }
  6081  
  6082  // SetObservationList sets the ObservationList field's value.
  6083  func (s *RelatedObservations) SetObservationList(v []*Observation) *RelatedObservations {
  6084  	s.ObservationList = v
  6085  	return s
  6086  }
  6087  
  6088  // The resource is already created or in use.
  6089  type ResourceInUseException struct {
  6090  	_            struct{}                  `type:"structure"`
  6091  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6092  
  6093  	Message_ *string `locationName:"Message" type:"string"`
  6094  }
  6095  
  6096  // String returns the string representation.
  6097  //
  6098  // API parameter values that are decorated as "sensitive" in the API will not
  6099  // be included in the string output. The member name will be present, but the
  6100  // value will be replaced with "sensitive".
  6101  func (s ResourceInUseException) String() string {
  6102  	return awsutil.Prettify(s)
  6103  }
  6104  
  6105  // GoString returns the string representation.
  6106  //
  6107  // API parameter values that are decorated as "sensitive" in the API will not
  6108  // be included in the string output. The member name will be present, but the
  6109  // value will be replaced with "sensitive".
  6110  func (s ResourceInUseException) GoString() string {
  6111  	return s.String()
  6112  }
  6113  
  6114  func newErrorResourceInUseException(v protocol.ResponseMetadata) error {
  6115  	return &ResourceInUseException{
  6116  		RespMetadata: v,
  6117  	}
  6118  }
  6119  
  6120  // Code returns the exception type name.
  6121  func (s *ResourceInUseException) Code() string {
  6122  	return "ResourceInUseException"
  6123  }
  6124  
  6125  // Message returns the exception's message.
  6126  func (s *ResourceInUseException) Message() string {
  6127  	if s.Message_ != nil {
  6128  		return *s.Message_
  6129  	}
  6130  	return ""
  6131  }
  6132  
  6133  // OrigErr always returns nil, satisfies awserr.Error interface.
  6134  func (s *ResourceInUseException) OrigErr() error {
  6135  	return nil
  6136  }
  6137  
  6138  func (s *ResourceInUseException) Error() string {
  6139  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  6140  }
  6141  
  6142  // Status code returns the HTTP status code for the request's response error.
  6143  func (s *ResourceInUseException) StatusCode() int {
  6144  	return s.RespMetadata.StatusCode
  6145  }
  6146  
  6147  // RequestID returns the service's response RequestID for request.
  6148  func (s *ResourceInUseException) RequestID() string {
  6149  	return s.RespMetadata.RequestID
  6150  }
  6151  
  6152  // The resource does not exist in the customer account.
  6153  type ResourceNotFoundException struct {
  6154  	_            struct{}                  `type:"structure"`
  6155  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6156  
  6157  	Message_ *string `locationName:"Message" type:"string"`
  6158  }
  6159  
  6160  // String returns the string representation.
  6161  //
  6162  // API parameter values that are decorated as "sensitive" in the API will not
  6163  // be included in the string output. The member name will be present, but the
  6164  // value will be replaced with "sensitive".
  6165  func (s ResourceNotFoundException) String() string {
  6166  	return awsutil.Prettify(s)
  6167  }
  6168  
  6169  // GoString returns the string representation.
  6170  //
  6171  // API parameter values that are decorated as "sensitive" in the API will not
  6172  // be included in the string output. The member name will be present, but the
  6173  // value will be replaced with "sensitive".
  6174  func (s ResourceNotFoundException) GoString() string {
  6175  	return s.String()
  6176  }
  6177  
  6178  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
  6179  	return &ResourceNotFoundException{
  6180  		RespMetadata: v,
  6181  	}
  6182  }
  6183  
  6184  // Code returns the exception type name.
  6185  func (s *ResourceNotFoundException) Code() string {
  6186  	return "ResourceNotFoundException"
  6187  }
  6188  
  6189  // Message returns the exception's message.
  6190  func (s *ResourceNotFoundException) Message() string {
  6191  	if s.Message_ != nil {
  6192  		return *s.Message_
  6193  	}
  6194  	return ""
  6195  }
  6196  
  6197  // OrigErr always returns nil, satisfies awserr.Error interface.
  6198  func (s *ResourceNotFoundException) OrigErr() error {
  6199  	return nil
  6200  }
  6201  
  6202  func (s *ResourceNotFoundException) Error() string {
  6203  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  6204  }
  6205  
  6206  // Status code returns the HTTP status code for the request's response error.
  6207  func (s *ResourceNotFoundException) StatusCode() int {
  6208  	return s.RespMetadata.StatusCode
  6209  }
  6210  
  6211  // RequestID returns the service's response RequestID for request.
  6212  func (s *ResourceNotFoundException) RequestID() string {
  6213  	return s.RespMetadata.RequestID
  6214  }
  6215  
  6216  // An object that defines the tags associated with an application. A tag is
  6217  // a label that you optionally define and associate with an application. Tags
  6218  // can help you categorize and manage resources in different ways, such as by
  6219  // purpose, owner, environment, or other criteria.
  6220  //
  6221  // Each tag consists of a required tag key and an associated tag value, both
  6222  // of which you define. A tag key is a general label that acts as a category
  6223  // for a more specific tag value. A tag value acts as a descriptor within a
  6224  // tag key. A tag key can contain as many as 128 characters. A tag value can
  6225  // contain as many as 256 characters. The characters can be Unicode letters,
  6226  // digits, white space, or one of the following symbols: _ . : / = + -. The
  6227  // following additional restrictions apply to tags:
  6228  //
  6229  //    * Tag keys and values are case sensitive.
  6230  //
  6231  //    * For each associated resource, each tag key must be unique and it can
  6232  //    have only one value.
  6233  //
  6234  //    * The aws: prefix is reserved for use by AWS; you can’t use it in any
  6235  //    tag keys or values that you define. In addition, you can't edit or remove
  6236  //    tag keys or values that use this prefix.
  6237  type Tag struct {
  6238  	_ struct{} `type:"structure"`
  6239  
  6240  	// One part of a key-value pair that defines a tag. The maximum length of a
  6241  	// tag key is 128 characters. The minimum length is 1 character.
  6242  	//
  6243  	// Key is a required field
  6244  	Key *string `min:"1" type:"string" required:"true"`
  6245  
  6246  	// The optional part of a key-value pair that defines a tag. The maximum length
  6247  	// of a tag value is 256 characters. The minimum length is 0 characters. If
  6248  	// you don't want an application to have a specific tag value, don't specify
  6249  	// a value for this parameter.
  6250  	//
  6251  	// Value is a required field
  6252  	Value *string `type:"string" required:"true"`
  6253  }
  6254  
  6255  // String returns the string representation.
  6256  //
  6257  // API parameter values that are decorated as "sensitive" in the API will not
  6258  // be included in the string output. The member name will be present, but the
  6259  // value will be replaced with "sensitive".
  6260  func (s Tag) String() string {
  6261  	return awsutil.Prettify(s)
  6262  }
  6263  
  6264  // GoString returns the string representation.
  6265  //
  6266  // API parameter values that are decorated as "sensitive" in the API will not
  6267  // be included in the string output. The member name will be present, but the
  6268  // value will be replaced with "sensitive".
  6269  func (s Tag) GoString() string {
  6270  	return s.String()
  6271  }
  6272  
  6273  // Validate inspects the fields of the type to determine if they are valid.
  6274  func (s *Tag) Validate() error {
  6275  	invalidParams := request.ErrInvalidParams{Context: "Tag"}
  6276  	if s.Key == nil {
  6277  		invalidParams.Add(request.NewErrParamRequired("Key"))
  6278  	}
  6279  	if s.Key != nil && len(*s.Key) < 1 {
  6280  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
  6281  	}
  6282  	if s.Value == nil {
  6283  		invalidParams.Add(request.NewErrParamRequired("Value"))
  6284  	}
  6285  
  6286  	if invalidParams.Len() > 0 {
  6287  		return invalidParams
  6288  	}
  6289  	return nil
  6290  }
  6291  
  6292  // SetKey sets the Key field's value.
  6293  func (s *Tag) SetKey(v string) *Tag {
  6294  	s.Key = &v
  6295  	return s
  6296  }
  6297  
  6298  // SetValue sets the Value field's value.
  6299  func (s *Tag) SetValue(v string) *Tag {
  6300  	s.Value = &v
  6301  	return s
  6302  }
  6303  
  6304  type TagResourceInput struct {
  6305  	_ struct{} `type:"structure"`
  6306  
  6307  	// The Amazon Resource Name (ARN) of the application that you want to add one
  6308  	// or more tags to.
  6309  	//
  6310  	// ResourceARN is a required field
  6311  	ResourceARN *string `min:"1" type:"string" required:"true"`
  6312  
  6313  	// A list of tags that to add to the application. A tag consists of a required
  6314  	// tag key (Key) and an associated tag value (Value). The maximum length of
  6315  	// a tag key is 128 characters. The maximum length of a tag value is 256 characters.
  6316  	//
  6317  	// Tags is a required field
  6318  	Tags []*Tag `type:"list" required:"true"`
  6319  }
  6320  
  6321  // String returns the string representation.
  6322  //
  6323  // API parameter values that are decorated as "sensitive" in the API will not
  6324  // be included in the string output. The member name will be present, but the
  6325  // value will be replaced with "sensitive".
  6326  func (s TagResourceInput) String() string {
  6327  	return awsutil.Prettify(s)
  6328  }
  6329  
  6330  // GoString returns the string representation.
  6331  //
  6332  // API parameter values that are decorated as "sensitive" in the API will not
  6333  // be included in the string output. The member name will be present, but the
  6334  // value will be replaced with "sensitive".
  6335  func (s TagResourceInput) GoString() string {
  6336  	return s.String()
  6337  }
  6338  
  6339  // Validate inspects the fields of the type to determine if they are valid.
  6340  func (s *TagResourceInput) Validate() error {
  6341  	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
  6342  	if s.ResourceARN == nil {
  6343  		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
  6344  	}
  6345  	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
  6346  		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
  6347  	}
  6348  	if s.Tags == nil {
  6349  		invalidParams.Add(request.NewErrParamRequired("Tags"))
  6350  	}
  6351  	if s.Tags != nil {
  6352  		for i, v := range s.Tags {
  6353  			if v == nil {
  6354  				continue
  6355  			}
  6356  			if err := v.Validate(); err != nil {
  6357  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6358  			}
  6359  		}
  6360  	}
  6361  
  6362  	if invalidParams.Len() > 0 {
  6363  		return invalidParams
  6364  	}
  6365  	return nil
  6366  }
  6367  
  6368  // SetResourceARN sets the ResourceARN field's value.
  6369  func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput {
  6370  	s.ResourceARN = &v
  6371  	return s
  6372  }
  6373  
  6374  // SetTags sets the Tags field's value.
  6375  func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
  6376  	s.Tags = v
  6377  	return s
  6378  }
  6379  
  6380  type TagResourceOutput struct {
  6381  	_ struct{} `type:"structure"`
  6382  }
  6383  
  6384  // String returns the string representation.
  6385  //
  6386  // API parameter values that are decorated as "sensitive" in the API will not
  6387  // be included in the string output. The member name will be present, but the
  6388  // value will be replaced with "sensitive".
  6389  func (s TagResourceOutput) String() string {
  6390  	return awsutil.Prettify(s)
  6391  }
  6392  
  6393  // GoString returns the string representation.
  6394  //
  6395  // API parameter values that are decorated as "sensitive" in the API will not
  6396  // be included in the string output. The member name will be present, but the
  6397  // value will be replaced with "sensitive".
  6398  func (s TagResourceOutput) GoString() string {
  6399  	return s.String()
  6400  }
  6401  
  6402  // Tags are already registered for the specified application ARN.
  6403  type TagsAlreadyExistException struct {
  6404  	_            struct{}                  `type:"structure"`
  6405  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6406  
  6407  	Message_ *string `locationName:"Message" type:"string"`
  6408  }
  6409  
  6410  // String returns the string representation.
  6411  //
  6412  // API parameter values that are decorated as "sensitive" in the API will not
  6413  // be included in the string output. The member name will be present, but the
  6414  // value will be replaced with "sensitive".
  6415  func (s TagsAlreadyExistException) String() string {
  6416  	return awsutil.Prettify(s)
  6417  }
  6418  
  6419  // GoString returns the string representation.
  6420  //
  6421  // API parameter values that are decorated as "sensitive" in the API will not
  6422  // be included in the string output. The member name will be present, but the
  6423  // value will be replaced with "sensitive".
  6424  func (s TagsAlreadyExistException) GoString() string {
  6425  	return s.String()
  6426  }
  6427  
  6428  func newErrorTagsAlreadyExistException(v protocol.ResponseMetadata) error {
  6429  	return &TagsAlreadyExistException{
  6430  		RespMetadata: v,
  6431  	}
  6432  }
  6433  
  6434  // Code returns the exception type name.
  6435  func (s *TagsAlreadyExistException) Code() string {
  6436  	return "TagsAlreadyExistException"
  6437  }
  6438  
  6439  // Message returns the exception's message.
  6440  func (s *TagsAlreadyExistException) Message() string {
  6441  	if s.Message_ != nil {
  6442  		return *s.Message_
  6443  	}
  6444  	return ""
  6445  }
  6446  
  6447  // OrigErr always returns nil, satisfies awserr.Error interface.
  6448  func (s *TagsAlreadyExistException) OrigErr() error {
  6449  	return nil
  6450  }
  6451  
  6452  func (s *TagsAlreadyExistException) Error() string {
  6453  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  6454  }
  6455  
  6456  // Status code returns the HTTP status code for the request's response error.
  6457  func (s *TagsAlreadyExistException) StatusCode() int {
  6458  	return s.RespMetadata.StatusCode
  6459  }
  6460  
  6461  // RequestID returns the service's response RequestID for request.
  6462  func (s *TagsAlreadyExistException) RequestID() string {
  6463  	return s.RespMetadata.RequestID
  6464  }
  6465  
  6466  // The number of the provided tags is beyond the limit, or the number of total
  6467  // tags you are trying to attach to the specified resource exceeds the limit.
  6468  type TooManyTagsException struct {
  6469  	_            struct{}                  `type:"structure"`
  6470  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6471  
  6472  	Message_ *string `locationName:"Message" type:"string"`
  6473  
  6474  	// The name of the resource with too many tags.
  6475  	ResourceName *string `min:"1" type:"string"`
  6476  }
  6477  
  6478  // String returns the string representation.
  6479  //
  6480  // API parameter values that are decorated as "sensitive" in the API will not
  6481  // be included in the string output. The member name will be present, but the
  6482  // value will be replaced with "sensitive".
  6483  func (s TooManyTagsException) String() string {
  6484  	return awsutil.Prettify(s)
  6485  }
  6486  
  6487  // GoString returns the string representation.
  6488  //
  6489  // API parameter values that are decorated as "sensitive" in the API will not
  6490  // be included in the string output. The member name will be present, but the
  6491  // value will be replaced with "sensitive".
  6492  func (s TooManyTagsException) GoString() string {
  6493  	return s.String()
  6494  }
  6495  
  6496  func newErrorTooManyTagsException(v protocol.ResponseMetadata) error {
  6497  	return &TooManyTagsException{
  6498  		RespMetadata: v,
  6499  	}
  6500  }
  6501  
  6502  // Code returns the exception type name.
  6503  func (s *TooManyTagsException) Code() string {
  6504  	return "TooManyTagsException"
  6505  }
  6506  
  6507  // Message returns the exception's message.
  6508  func (s *TooManyTagsException) Message() string {
  6509  	if s.Message_ != nil {
  6510  		return *s.Message_
  6511  	}
  6512  	return ""
  6513  }
  6514  
  6515  // OrigErr always returns nil, satisfies awserr.Error interface.
  6516  func (s *TooManyTagsException) OrigErr() error {
  6517  	return nil
  6518  }
  6519  
  6520  func (s *TooManyTagsException) Error() string {
  6521  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  6522  }
  6523  
  6524  // Status code returns the HTTP status code for the request's response error.
  6525  func (s *TooManyTagsException) StatusCode() int {
  6526  	return s.RespMetadata.StatusCode
  6527  }
  6528  
  6529  // RequestID returns the service's response RequestID for request.
  6530  func (s *TooManyTagsException) RequestID() string {
  6531  	return s.RespMetadata.RequestID
  6532  }
  6533  
  6534  type UntagResourceInput struct {
  6535  	_ struct{} `type:"structure"`
  6536  
  6537  	// The Amazon Resource Name (ARN) of the application that you want to remove
  6538  	// one or more tags from.
  6539  	//
  6540  	// ResourceARN is a required field
  6541  	ResourceARN *string `min:"1" type:"string" required:"true"`
  6542  
  6543  	// The tags (tag keys) that you want to remove from the resource. When you specify
  6544  	// a tag key, the action removes both that key and its associated tag value.
  6545  	//
  6546  	// To remove more than one tag from the application, append the TagKeys parameter
  6547  	// and argument for each additional tag to remove, separated by an ampersand.
  6548  	//
  6549  	// TagKeys is a required field
  6550  	TagKeys []*string `type:"list" required:"true"`
  6551  }
  6552  
  6553  // String returns the string representation.
  6554  //
  6555  // API parameter values that are decorated as "sensitive" in the API will not
  6556  // be included in the string output. The member name will be present, but the
  6557  // value will be replaced with "sensitive".
  6558  func (s UntagResourceInput) String() string {
  6559  	return awsutil.Prettify(s)
  6560  }
  6561  
  6562  // GoString returns the string representation.
  6563  //
  6564  // API parameter values that are decorated as "sensitive" in the API will not
  6565  // be included in the string output. The member name will be present, but the
  6566  // value will be replaced with "sensitive".
  6567  func (s UntagResourceInput) GoString() string {
  6568  	return s.String()
  6569  }
  6570  
  6571  // Validate inspects the fields of the type to determine if they are valid.
  6572  func (s *UntagResourceInput) Validate() error {
  6573  	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
  6574  	if s.ResourceARN == nil {
  6575  		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
  6576  	}
  6577  	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
  6578  		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
  6579  	}
  6580  	if s.TagKeys == nil {
  6581  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
  6582  	}
  6583  
  6584  	if invalidParams.Len() > 0 {
  6585  		return invalidParams
  6586  	}
  6587  	return nil
  6588  }
  6589  
  6590  // SetResourceARN sets the ResourceARN field's value.
  6591  func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput {
  6592  	s.ResourceARN = &v
  6593  	return s
  6594  }
  6595  
  6596  // SetTagKeys sets the TagKeys field's value.
  6597  func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
  6598  	s.TagKeys = v
  6599  	return s
  6600  }
  6601  
  6602  type UntagResourceOutput struct {
  6603  	_ struct{} `type:"structure"`
  6604  }
  6605  
  6606  // String returns the string representation.
  6607  //
  6608  // API parameter values that are decorated as "sensitive" in the API will not
  6609  // be included in the string output. The member name will be present, but the
  6610  // value will be replaced with "sensitive".
  6611  func (s UntagResourceOutput) String() string {
  6612  	return awsutil.Prettify(s)
  6613  }
  6614  
  6615  // GoString returns the string representation.
  6616  //
  6617  // API parameter values that are decorated as "sensitive" in the API will not
  6618  // be included in the string output. The member name will be present, but the
  6619  // value will be replaced with "sensitive".
  6620  func (s UntagResourceOutput) GoString() string {
  6621  	return s.String()
  6622  }
  6623  
  6624  type UpdateApplicationInput struct {
  6625  	_ struct{} `type:"structure"`
  6626  
  6627  	// Indicates whether Application Insights can listen to CloudWatch events for
  6628  	// the application resources, such as instance terminated, failed deployment,
  6629  	// and others.
  6630  	CWEMonitorEnabled *bool `type:"boolean"`
  6631  
  6632  	// When set to true, creates opsItems for any problems detected on an application.
  6633  	OpsCenterEnabled *bool `type:"boolean"`
  6634  
  6635  	// The SNS topic provided to Application Insights that is associated to the
  6636  	// created opsItem. Allows you to receive notifications for updates to the opsItem.
  6637  	OpsItemSNSTopicArn *string `min:"20" type:"string"`
  6638  
  6639  	// Disassociates the SNS topic from the opsItem created for detected problems.
  6640  	RemoveSNSTopic *bool `type:"boolean"`
  6641  
  6642  	// The name of the resource group.
  6643  	//
  6644  	// ResourceGroupName is a required field
  6645  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  6646  }
  6647  
  6648  // String returns the string representation.
  6649  //
  6650  // API parameter values that are decorated as "sensitive" in the API will not
  6651  // be included in the string output. The member name will be present, but the
  6652  // value will be replaced with "sensitive".
  6653  func (s UpdateApplicationInput) String() string {
  6654  	return awsutil.Prettify(s)
  6655  }
  6656  
  6657  // GoString returns the string representation.
  6658  //
  6659  // API parameter values that are decorated as "sensitive" in the API will not
  6660  // be included in the string output. The member name will be present, but the
  6661  // value will be replaced with "sensitive".
  6662  func (s UpdateApplicationInput) GoString() string {
  6663  	return s.String()
  6664  }
  6665  
  6666  // Validate inspects the fields of the type to determine if they are valid.
  6667  func (s *UpdateApplicationInput) Validate() error {
  6668  	invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"}
  6669  	if s.OpsItemSNSTopicArn != nil && len(*s.OpsItemSNSTopicArn) < 20 {
  6670  		invalidParams.Add(request.NewErrParamMinLen("OpsItemSNSTopicArn", 20))
  6671  	}
  6672  	if s.ResourceGroupName == nil {
  6673  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  6674  	}
  6675  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  6676  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  6677  	}
  6678  
  6679  	if invalidParams.Len() > 0 {
  6680  		return invalidParams
  6681  	}
  6682  	return nil
  6683  }
  6684  
  6685  // SetCWEMonitorEnabled sets the CWEMonitorEnabled field's value.
  6686  func (s *UpdateApplicationInput) SetCWEMonitorEnabled(v bool) *UpdateApplicationInput {
  6687  	s.CWEMonitorEnabled = &v
  6688  	return s
  6689  }
  6690  
  6691  // SetOpsCenterEnabled sets the OpsCenterEnabled field's value.
  6692  func (s *UpdateApplicationInput) SetOpsCenterEnabled(v bool) *UpdateApplicationInput {
  6693  	s.OpsCenterEnabled = &v
  6694  	return s
  6695  }
  6696  
  6697  // SetOpsItemSNSTopicArn sets the OpsItemSNSTopicArn field's value.
  6698  func (s *UpdateApplicationInput) SetOpsItemSNSTopicArn(v string) *UpdateApplicationInput {
  6699  	s.OpsItemSNSTopicArn = &v
  6700  	return s
  6701  }
  6702  
  6703  // SetRemoveSNSTopic sets the RemoveSNSTopic field's value.
  6704  func (s *UpdateApplicationInput) SetRemoveSNSTopic(v bool) *UpdateApplicationInput {
  6705  	s.RemoveSNSTopic = &v
  6706  	return s
  6707  }
  6708  
  6709  // SetResourceGroupName sets the ResourceGroupName field's value.
  6710  func (s *UpdateApplicationInput) SetResourceGroupName(v string) *UpdateApplicationInput {
  6711  	s.ResourceGroupName = &v
  6712  	return s
  6713  }
  6714  
  6715  type UpdateApplicationOutput struct {
  6716  	_ struct{} `type:"structure"`
  6717  
  6718  	// Information about the application.
  6719  	ApplicationInfo *ApplicationInfo `type:"structure"`
  6720  }
  6721  
  6722  // String returns the string representation.
  6723  //
  6724  // API parameter values that are decorated as "sensitive" in the API will not
  6725  // be included in the string output. The member name will be present, but the
  6726  // value will be replaced with "sensitive".
  6727  func (s UpdateApplicationOutput) String() string {
  6728  	return awsutil.Prettify(s)
  6729  }
  6730  
  6731  // GoString returns the string representation.
  6732  //
  6733  // API parameter values that are decorated as "sensitive" in the API will not
  6734  // be included in the string output. The member name will be present, but the
  6735  // value will be replaced with "sensitive".
  6736  func (s UpdateApplicationOutput) GoString() string {
  6737  	return s.String()
  6738  }
  6739  
  6740  // SetApplicationInfo sets the ApplicationInfo field's value.
  6741  func (s *UpdateApplicationOutput) SetApplicationInfo(v *ApplicationInfo) *UpdateApplicationOutput {
  6742  	s.ApplicationInfo = v
  6743  	return s
  6744  }
  6745  
  6746  type UpdateComponentConfigurationInput struct {
  6747  	_ struct{} `type:"structure"`
  6748  
  6749  	// The configuration settings of the component. The value is the escaped JSON
  6750  	// of the configuration. For more information about the JSON format, see Working
  6751  	// with JSON (https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/working-with-json.html).
  6752  	// You can send a request to DescribeComponentConfigurationRecommendation to
  6753  	// see the recommended configuration for a component. For the complete format
  6754  	// of the component configuration file, see Component Configuration (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/component-config.html).
  6755  	ComponentConfiguration *string `min:"1" type:"string"`
  6756  
  6757  	// The name of the component.
  6758  	//
  6759  	// ComponentName is a required field
  6760  	ComponentName *string `min:"1" type:"string" required:"true"`
  6761  
  6762  	// Indicates whether the application component is monitored.
  6763  	Monitor *bool `type:"boolean"`
  6764  
  6765  	// The name of the resource group.
  6766  	//
  6767  	// ResourceGroupName is a required field
  6768  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  6769  
  6770  	// The tier of the application component. Supported tiers include DOT_NET_WORKER,
  6771  	// DOT_NET_WEB, DOT_NET_CORE, SQL_SERVER, and DEFAULT.
  6772  	Tier *string `min:"1" type:"string" enum:"Tier"`
  6773  }
  6774  
  6775  // String returns the string representation.
  6776  //
  6777  // API parameter values that are decorated as "sensitive" in the API will not
  6778  // be included in the string output. The member name will be present, but the
  6779  // value will be replaced with "sensitive".
  6780  func (s UpdateComponentConfigurationInput) String() string {
  6781  	return awsutil.Prettify(s)
  6782  }
  6783  
  6784  // GoString returns the string representation.
  6785  //
  6786  // API parameter values that are decorated as "sensitive" in the API will not
  6787  // be included in the string output. The member name will be present, but the
  6788  // value will be replaced with "sensitive".
  6789  func (s UpdateComponentConfigurationInput) GoString() string {
  6790  	return s.String()
  6791  }
  6792  
  6793  // Validate inspects the fields of the type to determine if they are valid.
  6794  func (s *UpdateComponentConfigurationInput) Validate() error {
  6795  	invalidParams := request.ErrInvalidParams{Context: "UpdateComponentConfigurationInput"}
  6796  	if s.ComponentConfiguration != nil && len(*s.ComponentConfiguration) < 1 {
  6797  		invalidParams.Add(request.NewErrParamMinLen("ComponentConfiguration", 1))
  6798  	}
  6799  	if s.ComponentName == nil {
  6800  		invalidParams.Add(request.NewErrParamRequired("ComponentName"))
  6801  	}
  6802  	if s.ComponentName != nil && len(*s.ComponentName) < 1 {
  6803  		invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1))
  6804  	}
  6805  	if s.ResourceGroupName == nil {
  6806  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  6807  	}
  6808  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  6809  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  6810  	}
  6811  	if s.Tier != nil && len(*s.Tier) < 1 {
  6812  		invalidParams.Add(request.NewErrParamMinLen("Tier", 1))
  6813  	}
  6814  
  6815  	if invalidParams.Len() > 0 {
  6816  		return invalidParams
  6817  	}
  6818  	return nil
  6819  }
  6820  
  6821  // SetComponentConfiguration sets the ComponentConfiguration field's value.
  6822  func (s *UpdateComponentConfigurationInput) SetComponentConfiguration(v string) *UpdateComponentConfigurationInput {
  6823  	s.ComponentConfiguration = &v
  6824  	return s
  6825  }
  6826  
  6827  // SetComponentName sets the ComponentName field's value.
  6828  func (s *UpdateComponentConfigurationInput) SetComponentName(v string) *UpdateComponentConfigurationInput {
  6829  	s.ComponentName = &v
  6830  	return s
  6831  }
  6832  
  6833  // SetMonitor sets the Monitor field's value.
  6834  func (s *UpdateComponentConfigurationInput) SetMonitor(v bool) *UpdateComponentConfigurationInput {
  6835  	s.Monitor = &v
  6836  	return s
  6837  }
  6838  
  6839  // SetResourceGroupName sets the ResourceGroupName field's value.
  6840  func (s *UpdateComponentConfigurationInput) SetResourceGroupName(v string) *UpdateComponentConfigurationInput {
  6841  	s.ResourceGroupName = &v
  6842  	return s
  6843  }
  6844  
  6845  // SetTier sets the Tier field's value.
  6846  func (s *UpdateComponentConfigurationInput) SetTier(v string) *UpdateComponentConfigurationInput {
  6847  	s.Tier = &v
  6848  	return s
  6849  }
  6850  
  6851  type UpdateComponentConfigurationOutput struct {
  6852  	_ struct{} `type:"structure"`
  6853  }
  6854  
  6855  // String returns the string representation.
  6856  //
  6857  // API parameter values that are decorated as "sensitive" in the API will not
  6858  // be included in the string output. The member name will be present, but the
  6859  // value will be replaced with "sensitive".
  6860  func (s UpdateComponentConfigurationOutput) String() string {
  6861  	return awsutil.Prettify(s)
  6862  }
  6863  
  6864  // GoString returns the string representation.
  6865  //
  6866  // API parameter values that are decorated as "sensitive" in the API will not
  6867  // be included in the string output. The member name will be present, but the
  6868  // value will be replaced with "sensitive".
  6869  func (s UpdateComponentConfigurationOutput) GoString() string {
  6870  	return s.String()
  6871  }
  6872  
  6873  type UpdateComponentInput struct {
  6874  	_ struct{} `type:"structure"`
  6875  
  6876  	// The name of the component.
  6877  	//
  6878  	// ComponentName is a required field
  6879  	ComponentName *string `min:"1" type:"string" required:"true"`
  6880  
  6881  	// The new name of the component.
  6882  	NewComponentName *string `min:"1" type:"string"`
  6883  
  6884  	// The name of the resource group.
  6885  	//
  6886  	// ResourceGroupName is a required field
  6887  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  6888  
  6889  	// The list of resource ARNs that belong to the component.
  6890  	ResourceList []*string `type:"list"`
  6891  }
  6892  
  6893  // String returns the string representation.
  6894  //
  6895  // API parameter values that are decorated as "sensitive" in the API will not
  6896  // be included in the string output. The member name will be present, but the
  6897  // value will be replaced with "sensitive".
  6898  func (s UpdateComponentInput) String() string {
  6899  	return awsutil.Prettify(s)
  6900  }
  6901  
  6902  // GoString returns the string representation.
  6903  //
  6904  // API parameter values that are decorated as "sensitive" in the API will not
  6905  // be included in the string output. The member name will be present, but the
  6906  // value will be replaced with "sensitive".
  6907  func (s UpdateComponentInput) GoString() string {
  6908  	return s.String()
  6909  }
  6910  
  6911  // Validate inspects the fields of the type to determine if they are valid.
  6912  func (s *UpdateComponentInput) Validate() error {
  6913  	invalidParams := request.ErrInvalidParams{Context: "UpdateComponentInput"}
  6914  	if s.ComponentName == nil {
  6915  		invalidParams.Add(request.NewErrParamRequired("ComponentName"))
  6916  	}
  6917  	if s.ComponentName != nil && len(*s.ComponentName) < 1 {
  6918  		invalidParams.Add(request.NewErrParamMinLen("ComponentName", 1))
  6919  	}
  6920  	if s.NewComponentName != nil && len(*s.NewComponentName) < 1 {
  6921  		invalidParams.Add(request.NewErrParamMinLen("NewComponentName", 1))
  6922  	}
  6923  	if s.ResourceGroupName == nil {
  6924  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  6925  	}
  6926  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  6927  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  6928  	}
  6929  
  6930  	if invalidParams.Len() > 0 {
  6931  		return invalidParams
  6932  	}
  6933  	return nil
  6934  }
  6935  
  6936  // SetComponentName sets the ComponentName field's value.
  6937  func (s *UpdateComponentInput) SetComponentName(v string) *UpdateComponentInput {
  6938  	s.ComponentName = &v
  6939  	return s
  6940  }
  6941  
  6942  // SetNewComponentName sets the NewComponentName field's value.
  6943  func (s *UpdateComponentInput) SetNewComponentName(v string) *UpdateComponentInput {
  6944  	s.NewComponentName = &v
  6945  	return s
  6946  }
  6947  
  6948  // SetResourceGroupName sets the ResourceGroupName field's value.
  6949  func (s *UpdateComponentInput) SetResourceGroupName(v string) *UpdateComponentInput {
  6950  	s.ResourceGroupName = &v
  6951  	return s
  6952  }
  6953  
  6954  // SetResourceList sets the ResourceList field's value.
  6955  func (s *UpdateComponentInput) SetResourceList(v []*string) *UpdateComponentInput {
  6956  	s.ResourceList = v
  6957  	return s
  6958  }
  6959  
  6960  type UpdateComponentOutput struct {
  6961  	_ struct{} `type:"structure"`
  6962  }
  6963  
  6964  // String returns the string representation.
  6965  //
  6966  // API parameter values that are decorated as "sensitive" in the API will not
  6967  // be included in the string output. The member name will be present, but the
  6968  // value will be replaced with "sensitive".
  6969  func (s UpdateComponentOutput) String() string {
  6970  	return awsutil.Prettify(s)
  6971  }
  6972  
  6973  // GoString returns the string representation.
  6974  //
  6975  // API parameter values that are decorated as "sensitive" in the API will not
  6976  // be included in the string output. The member name will be present, but the
  6977  // value will be replaced with "sensitive".
  6978  func (s UpdateComponentOutput) GoString() string {
  6979  	return s.String()
  6980  }
  6981  
  6982  type UpdateLogPatternInput struct {
  6983  	_ struct{} `type:"structure"`
  6984  
  6985  	// The log pattern. The pattern must be DFA compatible. Patterns that utilize
  6986  	// forward lookahead or backreference constructions are not supported.
  6987  	Pattern *string `min:"1" type:"string"`
  6988  
  6989  	// The name of the log pattern.
  6990  	//
  6991  	// PatternName is a required field
  6992  	PatternName *string `min:"1" type:"string" required:"true"`
  6993  
  6994  	// The name of the log pattern set.
  6995  	//
  6996  	// PatternSetName is a required field
  6997  	PatternSetName *string `min:"1" type:"string" required:"true"`
  6998  
  6999  	// Rank of the log pattern. Must be a value between 1 and 1,000,000. The patterns
  7000  	// are sorted by rank, so we recommend that you set your highest priority patterns
  7001  	// with the lowest rank. A pattern of rank 1 will be the first to get matched
  7002  	// to a log line. A pattern of rank 1,000,000 will be last to get matched. When
  7003  	// you configure custom log patterns from the console, a Low severity pattern
  7004  	// translates to a 750,000 rank. A Medium severity pattern translates to a 500,000
  7005  	// rank. And a High severity pattern translates to a 250,000 rank. Rank values
  7006  	// less than 1 or greater than 1,000,000 are reserved for AWS-provided patterns.
  7007  	Rank *int64 `type:"integer"`
  7008  
  7009  	// The name of the resource group.
  7010  	//
  7011  	// ResourceGroupName is a required field
  7012  	ResourceGroupName *string `min:"1" type:"string" required:"true"`
  7013  }
  7014  
  7015  // String returns the string representation.
  7016  //
  7017  // API parameter values that are decorated as "sensitive" in the API will not
  7018  // be included in the string output. The member name will be present, but the
  7019  // value will be replaced with "sensitive".
  7020  func (s UpdateLogPatternInput) String() string {
  7021  	return awsutil.Prettify(s)
  7022  }
  7023  
  7024  // GoString returns the string representation.
  7025  //
  7026  // API parameter values that are decorated as "sensitive" in the API will not
  7027  // be included in the string output. The member name will be present, but the
  7028  // value will be replaced with "sensitive".
  7029  func (s UpdateLogPatternInput) GoString() string {
  7030  	return s.String()
  7031  }
  7032  
  7033  // Validate inspects the fields of the type to determine if they are valid.
  7034  func (s *UpdateLogPatternInput) Validate() error {
  7035  	invalidParams := request.ErrInvalidParams{Context: "UpdateLogPatternInput"}
  7036  	if s.Pattern != nil && len(*s.Pattern) < 1 {
  7037  		invalidParams.Add(request.NewErrParamMinLen("Pattern", 1))
  7038  	}
  7039  	if s.PatternName == nil {
  7040  		invalidParams.Add(request.NewErrParamRequired("PatternName"))
  7041  	}
  7042  	if s.PatternName != nil && len(*s.PatternName) < 1 {
  7043  		invalidParams.Add(request.NewErrParamMinLen("PatternName", 1))
  7044  	}
  7045  	if s.PatternSetName == nil {
  7046  		invalidParams.Add(request.NewErrParamRequired("PatternSetName"))
  7047  	}
  7048  	if s.PatternSetName != nil && len(*s.PatternSetName) < 1 {
  7049  		invalidParams.Add(request.NewErrParamMinLen("PatternSetName", 1))
  7050  	}
  7051  	if s.ResourceGroupName == nil {
  7052  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupName"))
  7053  	}
  7054  	if s.ResourceGroupName != nil && len(*s.ResourceGroupName) < 1 {
  7055  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupName", 1))
  7056  	}
  7057  
  7058  	if invalidParams.Len() > 0 {
  7059  		return invalidParams
  7060  	}
  7061  	return nil
  7062  }
  7063  
  7064  // SetPattern sets the Pattern field's value.
  7065  func (s *UpdateLogPatternInput) SetPattern(v string) *UpdateLogPatternInput {
  7066  	s.Pattern = &v
  7067  	return s
  7068  }
  7069  
  7070  // SetPatternName sets the PatternName field's value.
  7071  func (s *UpdateLogPatternInput) SetPatternName(v string) *UpdateLogPatternInput {
  7072  	s.PatternName = &v
  7073  	return s
  7074  }
  7075  
  7076  // SetPatternSetName sets the PatternSetName field's value.
  7077  func (s *UpdateLogPatternInput) SetPatternSetName(v string) *UpdateLogPatternInput {
  7078  	s.PatternSetName = &v
  7079  	return s
  7080  }
  7081  
  7082  // SetRank sets the Rank field's value.
  7083  func (s *UpdateLogPatternInput) SetRank(v int64) *UpdateLogPatternInput {
  7084  	s.Rank = &v
  7085  	return s
  7086  }
  7087  
  7088  // SetResourceGroupName sets the ResourceGroupName field's value.
  7089  func (s *UpdateLogPatternInput) SetResourceGroupName(v string) *UpdateLogPatternInput {
  7090  	s.ResourceGroupName = &v
  7091  	return s
  7092  }
  7093  
  7094  type UpdateLogPatternOutput struct {
  7095  	_ struct{} `type:"structure"`
  7096  
  7097  	// The successfully created log pattern.
  7098  	LogPattern *LogPattern `type:"structure"`
  7099  
  7100  	// The name of the resource group.
  7101  	ResourceGroupName *string `min:"1" type:"string"`
  7102  }
  7103  
  7104  // String returns the string representation.
  7105  //
  7106  // API parameter values that are decorated as "sensitive" in the API will not
  7107  // be included in the string output. The member name will be present, but the
  7108  // value will be replaced with "sensitive".
  7109  func (s UpdateLogPatternOutput) String() string {
  7110  	return awsutil.Prettify(s)
  7111  }
  7112  
  7113  // GoString returns the string representation.
  7114  //
  7115  // API parameter values that are decorated as "sensitive" in the API will not
  7116  // be included in the string output. The member name will be present, but the
  7117  // value will be replaced with "sensitive".
  7118  func (s UpdateLogPatternOutput) GoString() string {
  7119  	return s.String()
  7120  }
  7121  
  7122  // SetLogPattern sets the LogPattern field's value.
  7123  func (s *UpdateLogPatternOutput) SetLogPattern(v *LogPattern) *UpdateLogPatternOutput {
  7124  	s.LogPattern = v
  7125  	return s
  7126  }
  7127  
  7128  // SetResourceGroupName sets the ResourceGroupName field's value.
  7129  func (s *UpdateLogPatternOutput) SetResourceGroupName(v string) *UpdateLogPatternOutput {
  7130  	s.ResourceGroupName = &v
  7131  	return s
  7132  }
  7133  
  7134  // The parameter is not valid.
  7135  type ValidationException struct {
  7136  	_            struct{}                  `type:"structure"`
  7137  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  7138  
  7139  	Message_ *string `locationName:"Message" type:"string"`
  7140  }
  7141  
  7142  // String returns the string representation.
  7143  //
  7144  // API parameter values that are decorated as "sensitive" in the API will not
  7145  // be included in the string output. The member name will be present, but the
  7146  // value will be replaced with "sensitive".
  7147  func (s ValidationException) String() string {
  7148  	return awsutil.Prettify(s)
  7149  }
  7150  
  7151  // GoString returns the string representation.
  7152  //
  7153  // API parameter values that are decorated as "sensitive" in the API will not
  7154  // be included in the string output. The member name will be present, but the
  7155  // value will be replaced with "sensitive".
  7156  func (s ValidationException) GoString() string {
  7157  	return s.String()
  7158  }
  7159  
  7160  func newErrorValidationException(v protocol.ResponseMetadata) error {
  7161  	return &ValidationException{
  7162  		RespMetadata: v,
  7163  	}
  7164  }
  7165  
  7166  // Code returns the exception type name.
  7167  func (s *ValidationException) Code() string {
  7168  	return "ValidationException"
  7169  }
  7170  
  7171  // Message returns the exception's message.
  7172  func (s *ValidationException) Message() string {
  7173  	if s.Message_ != nil {
  7174  		return *s.Message_
  7175  	}
  7176  	return ""
  7177  }
  7178  
  7179  // OrigErr always returns nil, satisfies awserr.Error interface.
  7180  func (s *ValidationException) OrigErr() error {
  7181  	return nil
  7182  }
  7183  
  7184  func (s *ValidationException) Error() string {
  7185  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  7186  }
  7187  
  7188  // Status code returns the HTTP status code for the request's response error.
  7189  func (s *ValidationException) StatusCode() int {
  7190  	return s.RespMetadata.StatusCode
  7191  }
  7192  
  7193  // RequestID returns the service's response RequestID for request.
  7194  func (s *ValidationException) RequestID() string {
  7195  	return s.RespMetadata.RequestID
  7196  }
  7197  
  7198  const (
  7199  	// CloudWatchEventSourceEc2 is a CloudWatchEventSource enum value
  7200  	CloudWatchEventSourceEc2 = "EC2"
  7201  
  7202  	// CloudWatchEventSourceCodeDeploy is a CloudWatchEventSource enum value
  7203  	CloudWatchEventSourceCodeDeploy = "CODE_DEPLOY"
  7204  
  7205  	// CloudWatchEventSourceHealth is a CloudWatchEventSource enum value
  7206  	CloudWatchEventSourceHealth = "HEALTH"
  7207  
  7208  	// CloudWatchEventSourceRds is a CloudWatchEventSource enum value
  7209  	CloudWatchEventSourceRds = "RDS"
  7210  )
  7211  
  7212  // CloudWatchEventSource_Values returns all elements of the CloudWatchEventSource enum
  7213  func CloudWatchEventSource_Values() []string {
  7214  	return []string{
  7215  		CloudWatchEventSourceEc2,
  7216  		CloudWatchEventSourceCodeDeploy,
  7217  		CloudWatchEventSourceHealth,
  7218  		CloudWatchEventSourceRds,
  7219  	}
  7220  }
  7221  
  7222  const (
  7223  	// ConfigurationEventResourceTypeCloudwatchAlarm is a ConfigurationEventResourceType enum value
  7224  	ConfigurationEventResourceTypeCloudwatchAlarm = "CLOUDWATCH_ALARM"
  7225  
  7226  	// ConfigurationEventResourceTypeCloudwatchLog is a ConfigurationEventResourceType enum value
  7227  	ConfigurationEventResourceTypeCloudwatchLog = "CLOUDWATCH_LOG"
  7228  
  7229  	// ConfigurationEventResourceTypeCloudformation is a ConfigurationEventResourceType enum value
  7230  	ConfigurationEventResourceTypeCloudformation = "CLOUDFORMATION"
  7231  
  7232  	// ConfigurationEventResourceTypeSsmAssociation is a ConfigurationEventResourceType enum value
  7233  	ConfigurationEventResourceTypeSsmAssociation = "SSM_ASSOCIATION"
  7234  )
  7235  
  7236  // ConfigurationEventResourceType_Values returns all elements of the ConfigurationEventResourceType enum
  7237  func ConfigurationEventResourceType_Values() []string {
  7238  	return []string{
  7239  		ConfigurationEventResourceTypeCloudwatchAlarm,
  7240  		ConfigurationEventResourceTypeCloudwatchLog,
  7241  		ConfigurationEventResourceTypeCloudformation,
  7242  		ConfigurationEventResourceTypeSsmAssociation,
  7243  	}
  7244  }
  7245  
  7246  const (
  7247  	// ConfigurationEventStatusInfo is a ConfigurationEventStatus enum value
  7248  	ConfigurationEventStatusInfo = "INFO"
  7249  
  7250  	// ConfigurationEventStatusWarn is a ConfigurationEventStatus enum value
  7251  	ConfigurationEventStatusWarn = "WARN"
  7252  
  7253  	// ConfigurationEventStatusError is a ConfigurationEventStatus enum value
  7254  	ConfigurationEventStatusError = "ERROR"
  7255  )
  7256  
  7257  // ConfigurationEventStatus_Values returns all elements of the ConfigurationEventStatus enum
  7258  func ConfigurationEventStatus_Values() []string {
  7259  	return []string{
  7260  		ConfigurationEventStatusInfo,
  7261  		ConfigurationEventStatusWarn,
  7262  		ConfigurationEventStatusError,
  7263  	}
  7264  }
  7265  
  7266  const (
  7267  	// FeedbackKeyInsightsFeedback is a FeedbackKey enum value
  7268  	FeedbackKeyInsightsFeedback = "INSIGHTS_FEEDBACK"
  7269  )
  7270  
  7271  // FeedbackKey_Values returns all elements of the FeedbackKey enum
  7272  func FeedbackKey_Values() []string {
  7273  	return []string{
  7274  		FeedbackKeyInsightsFeedback,
  7275  	}
  7276  }
  7277  
  7278  const (
  7279  	// FeedbackValueNotSpecified is a FeedbackValue enum value
  7280  	FeedbackValueNotSpecified = "NOT_SPECIFIED"
  7281  
  7282  	// FeedbackValueUseful is a FeedbackValue enum value
  7283  	FeedbackValueUseful = "USEFUL"
  7284  
  7285  	// FeedbackValueNotUseful is a FeedbackValue enum value
  7286  	FeedbackValueNotUseful = "NOT_USEFUL"
  7287  )
  7288  
  7289  // FeedbackValue_Values returns all elements of the FeedbackValue enum
  7290  func FeedbackValue_Values() []string {
  7291  	return []string{
  7292  		FeedbackValueNotSpecified,
  7293  		FeedbackValueUseful,
  7294  		FeedbackValueNotUseful,
  7295  	}
  7296  }
  7297  
  7298  const (
  7299  	// LogFilterError is a LogFilter enum value
  7300  	LogFilterError = "ERROR"
  7301  
  7302  	// LogFilterWarn is a LogFilter enum value
  7303  	LogFilterWarn = "WARN"
  7304  
  7305  	// LogFilterInfo is a LogFilter enum value
  7306  	LogFilterInfo = "INFO"
  7307  )
  7308  
  7309  // LogFilter_Values returns all elements of the LogFilter enum
  7310  func LogFilter_Values() []string {
  7311  	return []string{
  7312  		LogFilterError,
  7313  		LogFilterWarn,
  7314  		LogFilterInfo,
  7315  	}
  7316  }
  7317  
  7318  const (
  7319  	// OsTypeWindows is a OsType enum value
  7320  	OsTypeWindows = "WINDOWS"
  7321  
  7322  	// OsTypeLinux is a OsType enum value
  7323  	OsTypeLinux = "LINUX"
  7324  )
  7325  
  7326  // OsType_Values returns all elements of the OsType enum
  7327  func OsType_Values() []string {
  7328  	return []string{
  7329  		OsTypeWindows,
  7330  		OsTypeLinux,
  7331  	}
  7332  }
  7333  
  7334  const (
  7335  	// SeverityLevelLow is a SeverityLevel enum value
  7336  	SeverityLevelLow = "Low"
  7337  
  7338  	// SeverityLevelMedium is a SeverityLevel enum value
  7339  	SeverityLevelMedium = "Medium"
  7340  
  7341  	// SeverityLevelHigh is a SeverityLevel enum value
  7342  	SeverityLevelHigh = "High"
  7343  )
  7344  
  7345  // SeverityLevel_Values returns all elements of the SeverityLevel enum
  7346  func SeverityLevel_Values() []string {
  7347  	return []string{
  7348  		SeverityLevelLow,
  7349  		SeverityLevelMedium,
  7350  		SeverityLevelHigh,
  7351  	}
  7352  }
  7353  
  7354  const (
  7355  	// StatusIgnore is a Status enum value
  7356  	StatusIgnore = "IGNORE"
  7357  
  7358  	// StatusResolved is a Status enum value
  7359  	StatusResolved = "RESOLVED"
  7360  
  7361  	// StatusPending is a Status enum value
  7362  	StatusPending = "PENDING"
  7363  )
  7364  
  7365  // Status_Values returns all elements of the Status enum
  7366  func Status_Values() []string {
  7367  	return []string{
  7368  		StatusIgnore,
  7369  		StatusResolved,
  7370  		StatusPending,
  7371  	}
  7372  }
  7373  
  7374  const (
  7375  	// TierCustom is a Tier enum value
  7376  	TierCustom = "CUSTOM"
  7377  
  7378  	// TierDefault is a Tier enum value
  7379  	TierDefault = "DEFAULT"
  7380  
  7381  	// TierDotNetCore is a Tier enum value
  7382  	TierDotNetCore = "DOT_NET_CORE"
  7383  
  7384  	// TierDotNetWorker is a Tier enum value
  7385  	TierDotNetWorker = "DOT_NET_WORKER"
  7386  
  7387  	// TierDotNetWebTier is a Tier enum value
  7388  	TierDotNetWebTier = "DOT_NET_WEB_TIER"
  7389  
  7390  	// TierDotNetWeb is a Tier enum value
  7391  	TierDotNetWeb = "DOT_NET_WEB"
  7392  
  7393  	// TierSqlServer is a Tier enum value
  7394  	TierSqlServer = "SQL_SERVER"
  7395  
  7396  	// TierSqlServerAlwaysonAvailabilityGroup is a Tier enum value
  7397  	TierSqlServerAlwaysonAvailabilityGroup = "SQL_SERVER_ALWAYSON_AVAILABILITY_GROUP"
  7398  
  7399  	// TierMysql is a Tier enum value
  7400  	TierMysql = "MYSQL"
  7401  
  7402  	// TierPostgresql is a Tier enum value
  7403  	TierPostgresql = "POSTGRESQL"
  7404  
  7405  	// TierJavaJmx is a Tier enum value
  7406  	TierJavaJmx = "JAVA_JMX"
  7407  
  7408  	// TierOracle is a Tier enum value
  7409  	TierOracle = "ORACLE"
  7410  )
  7411  
  7412  // Tier_Values returns all elements of the Tier enum
  7413  func Tier_Values() []string {
  7414  	return []string{
  7415  		TierCustom,
  7416  		TierDefault,
  7417  		TierDotNetCore,
  7418  		TierDotNetWorker,
  7419  		TierDotNetWebTier,
  7420  		TierDotNetWeb,
  7421  		TierSqlServer,
  7422  		TierSqlServerAlwaysonAvailabilityGroup,
  7423  		TierMysql,
  7424  		TierPostgresql,
  7425  		TierJavaJmx,
  7426  		TierOracle,
  7427  	}
  7428  }