diff --git a/CHANGELOG.md b/CHANGELOG.md index ae8de0b37cc..ea98265a6f2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +Release v1.51.25 (2024-04-19) +=== + +### Service Client Updates +* `service/glue`: Updates service API and documentation + * Adding RowFilter in the response for GetUnfilteredTableMetadata API +* `service/internetmonitor`: Updates service API, documentation, and paginators +* `service/personalize`: Updates service API and documentation + Release v1.51.24 (2024-04-18) === diff --git a/aws/version.go b/aws/version.go index d12a3c9fbbe..33568b2a322 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.51.24" +const SDKVersion = "1.51.25" diff --git a/models/apis/glue/2017-03-31/api-2.json b/models/apis/glue/2017-03-31/api-2.json index e4f9b1cd33e..e42c66fc2a0 100644 --- a/models/apis/glue/2017-03-31/api-2.json +++ b/models/apis/glue/2017-03-31/api-2.json @@ -8447,7 +8447,8 @@ "IsMultiDialectView":{"shape":"Boolean"}, "ResourceArn":{"shape":"ArnString"}, "IsProtected":{"shape":"Boolean"}, - "Permissions":{"shape":"PermissionList"} + "Permissions":{"shape":"PermissionList"}, + "RowFilter":{"shape":"PredicateString"} } }, "GetUserDefinedFunctionRequest":{ diff --git a/models/apis/glue/2017-03-31/docs-2.json b/models/apis/glue/2017-03-31/docs-2.json index c01491e80f7..f041d3a0d4c 100644 --- a/models/apis/glue/2017-03-31/docs-2.json +++ b/models/apis/glue/2017-03-31/docs-2.json @@ -6852,7 +6852,8 @@ "refs": { "ColumnRowFilter$RowFilterExpression": "

A string containing the row-level filter expression.

", "GetPartitionsRequest$Expression": "

An expression that filters the partitions to be returned.

The expression uses SQL syntax similar to the SQL WHERE filter clause. The SQL statement parser JSQLParser parses the expression.

Operators: The following are the operators that you can use in the Expression API call:

=

Checks whether the values of the two operands are equal; if yes, then the condition becomes true.

Example: Assume 'variable a' holds 10 and 'variable b' holds 20.

(a = b) is not true.

< >

Checks whether the values of two operands are equal; if the values are not equal, then the condition becomes true.

Example: (a < > b) is true.

>

Checks whether the value of the left operand is greater than the value of the right operand; if yes, then the condition becomes true.

Example: (a > b) is not true.

<

Checks whether the value of the left operand is less than the value of the right operand; if yes, then the condition becomes true.

Example: (a < b) is true.

>=

Checks whether the value of the left operand is greater than or equal to the value of the right operand; if yes, then the condition becomes true.

Example: (a >= b) is not true.

<=

Checks whether the value of the left operand is less than or equal to the value of the right operand; if yes, then the condition becomes true.

Example: (a <= b) is true.

AND, OR, IN, BETWEEN, LIKE, NOT, IS NULL

Logical operators.

Supported Partition Key Types: The following are the supported partition keys.

If an type is encountered that is not valid, an exception is thrown.

The following list shows the valid operators on each type. When you define a crawler, the partitionKey type is created as a STRING, to be compatible with the catalog partitions.

Sample API Call:

", - "GetUnfilteredPartitionsMetadataRequest$Expression": "

An expression that filters the partitions to be returned.

The expression uses SQL syntax similar to the SQL WHERE filter clause. The SQL statement parser JSQLParser parses the expression.

Operators: The following are the operators that you can use in the Expression API call:

=

Checks whether the values of the two operands are equal; if yes, then the condition becomes true.

Example: Assume 'variable a' holds 10 and 'variable b' holds 20.

(a = b) is not true.

< >

Checks whether the values of two operands are equal; if the values are not equal, then the condition becomes true.

Example: (a < > b) is true.

>

Checks whether the value of the left operand is greater than the value of the right operand; if yes, then the condition becomes true.

Example: (a > b) is not true.

<

Checks whether the value of the left operand is less than the value of the right operand; if yes, then the condition becomes true.

Example: (a < b) is true.

>=

Checks whether the value of the left operand is greater than or equal to the value of the right operand; if yes, then the condition becomes true.

Example: (a >= b) is not true.

<=

Checks whether the value of the left operand is less than or equal to the value of the right operand; if yes, then the condition becomes true.

Example: (a <= b) is true.

AND, OR, IN, BETWEEN, LIKE, NOT, IS NULL

Logical operators.

Supported Partition Key Types: The following are the supported partition keys.

If an type is encountered that is not valid, an exception is thrown.

" + "GetUnfilteredPartitionsMetadataRequest$Expression": "

An expression that filters the partitions to be returned.

The expression uses SQL syntax similar to the SQL WHERE filter clause. The SQL statement parser JSQLParser parses the expression.

Operators: The following are the operators that you can use in the Expression API call:

=

Checks whether the values of the two operands are equal; if yes, then the condition becomes true.

Example: Assume 'variable a' holds 10 and 'variable b' holds 20.

(a = b) is not true.

< >

Checks whether the values of two operands are equal; if the values are not equal, then the condition becomes true.

Example: (a < > b) is true.

>

Checks whether the value of the left operand is greater than the value of the right operand; if yes, then the condition becomes true.

Example: (a > b) is not true.

<

Checks whether the value of the left operand is less than the value of the right operand; if yes, then the condition becomes true.

Example: (a < b) is true.

>=

Checks whether the value of the left operand is greater than or equal to the value of the right operand; if yes, then the condition becomes true.

Example: (a >= b) is not true.

<=

Checks whether the value of the left operand is less than or equal to the value of the right operand; if yes, then the condition becomes true.

Example: (a <= b) is true.

AND, OR, IN, BETWEEN, LIKE, NOT, IS NULL

Logical operators.

Supported Partition Key Types: The following are the supported partition keys.

If an type is encountered that is not valid, an exception is thrown.

", + "GetUnfilteredTableMetadataResponse$RowFilter": "

The filter that applies to the table. For example when applying the filter in SQL, it would go in the WHERE clause and can be evaluated by using an AND operator with any other predicates applied by the user querying the table.

" } }, "PrincipalPermissions": { diff --git a/models/apis/internetmonitor/2021-06-03/api-2.json b/models/apis/internetmonitor/2021-06-03/api-2.json index eb51f264037..39fc6ba8420 100644 --- a/models/apis/internetmonitor/2021-06-03/api-2.json +++ b/models/apis/internetmonitor/2021-06-03/api-2.json @@ -64,6 +64,22 @@ {"shape":"ValidationException"} ] }, + "GetInternetEvent":{ + "name":"GetInternetEvent", + "http":{ + "method":"GET", + "requestUri":"/v20210603/InternetEvents/{EventId}", + "responseCode":200 + }, + "input":{"shape":"GetInternetEventInput"}, + "output":{"shape":"GetInternetEventOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, "GetMonitor":{ "name":"GetMonitor", "http":{ @@ -130,6 +146,22 @@ {"shape":"ValidationException"} ] }, + "ListInternetEvents":{ + "name":"ListInternetEvents", + "http":{ + "method":"GET", + "requestUri":"/v20210603/InternetEvents", + "responseCode":200 + }, + "input":{"shape":"ListInternetEventsInput"}, + "output":{"shape":"ListInternetEventsOutput"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"} + ] + }, "ListMonitors":{ "name":"ListMonitors", "http":{ @@ -299,6 +331,27 @@ "type":"boolean", "box":true }, + "ClientLocation":{ + "type":"structure", + "required":[ + "ASName", + "ASNumber", + "Country", + "City", + "Latitude", + "Longitude" + ], + "members":{ + "ASName":{"shape":"String"}, + "ASNumber":{"shape":"Long"}, + "Country":{"shape":"String"}, + "Subdivision":{"shape":"String"}, + "Metro":{"shape":"String"}, + "City":{"shape":"String"}, + "Latitude":{"shape":"Double"}, + "Longitude":{"shape":"Double"} + } + }, "ConflictException":{ "type":"structure", "members":{ @@ -423,6 +476,37 @@ "HealthScoreThreshold":{"shape":"Percentage"} } }, + "GetInternetEventInput":{ + "type":"structure", + "required":["EventId"], + "members":{ + "EventId":{ + "shape":"InternetEventId", + "location":"uri", + "locationName":"EventId" + } + } + }, + "GetInternetEventOutput":{ + "type":"structure", + "required":[ + "EventId", + "EventArn", + "StartedAt", + "ClientLocation", + "EventType", + "EventStatus" + ], + "members":{ + "EventId":{"shape":"InternetEventId"}, + "EventArn":{"shape":"Arn"}, + "StartedAt":{"shape":"SyntheticTimestamp_date_time"}, + "EndedAt":{"shape":"SyntheticTimestamp_date_time"}, + "ClientLocation":{"shape":"ClientLocation"}, + "EventType":{"shape":"InternetEventType"}, + "EventStatus":{"shape":"InternetEventStatus"} + } + }, "GetMonitorInput":{ "type":"structure", "required":["MonitorName"], @@ -642,6 +726,56 @@ "fault":true, "retryable":{"throttling":false} }, + "InternetEventId":{ + "type":"string", + "max":255, + "min":1, + "pattern":"[a-zA-Z0-9-]+" + }, + "InternetEventMaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "InternetEventStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "RESOLVED" + ] + }, + "InternetEventSummary":{ + "type":"structure", + "required":[ + "EventId", + "EventArn", + "StartedAt", + "ClientLocation", + "EventType", + "EventStatus" + ], + "members":{ + "EventId":{"shape":"InternetEventId"}, + "EventArn":{"shape":"Arn"}, + "StartedAt":{"shape":"SyntheticTimestamp_date_time"}, + "EndedAt":{"shape":"SyntheticTimestamp_date_time"}, + "ClientLocation":{"shape":"ClientLocation"}, + "EventType":{"shape":"InternetEventType"}, + "EventStatus":{"shape":"InternetEventStatus"} + } + }, + "InternetEventType":{ + "type":"string", + "enum":[ + "AVAILABILITY", + "PERFORMANCE" + ] + }, + "InternetEventsList":{ + "type":"list", + "member":{"shape":"InternetEventSummary"} + }, "InternetHealth":{ "type":"structure", "members":{ @@ -719,6 +853,49 @@ "NextToken":{"shape":"String"} } }, + "ListInternetEventsInput":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"InternetEventMaxResults", + "location":"querystring", + "locationName":"InternetEventMaxResults" + }, + "StartTime":{ + "shape":"SyntheticTimestamp_date_time", + "location":"querystring", + "locationName":"StartTime" + }, + "EndTime":{ + "shape":"SyntheticTimestamp_date_time", + "location":"querystring", + "locationName":"EndTime" + }, + "EventStatus":{ + "shape":"String", + "location":"querystring", + "locationName":"EventStatus" + }, + "EventType":{ + "shape":"String", + "location":"querystring", + "locationName":"EventType" + } + } + }, + "ListInternetEventsOutput":{ + "type":"structure", + "required":["InternetEvents"], + "members":{ + "InternetEvents":{"shape":"InternetEventsList"}, + "NextToken":{"shape":"String"} + } + }, "ListMonitorsInput":{ "type":"structure", "members":{ diff --git a/models/apis/internetmonitor/2021-06-03/docs-2.json b/models/apis/internetmonitor/2021-06-03/docs-2.json index 7203b9330e2..7d5f060973e 100644 --- a/models/apis/internetmonitor/2021-06-03/docs-2.json +++ b/models/apis/internetmonitor/2021-06-03/docs-2.json @@ -4,11 +4,13 @@ "operations": { "CreateMonitor": "

Creates a monitor in Amazon CloudWatch Internet Monitor. A monitor is built based on information from the application resources that you add: VPCs, Network Load Balancers (NLBs), Amazon CloudFront distributions, and Amazon WorkSpaces directories. Internet Monitor then publishes internet measurements from Amazon Web Services that are specific to the city-networks. That is, the locations and ASNs (typically internet service providers or ISPs), where clients access your application. For more information, see Using Amazon CloudWatch Internet Monitor in the Amazon CloudWatch User Guide.

When you create a monitor, you choose the percentage of traffic that you want to monitor. You can also set a maximum limit for the number of city-networks where client traffic is monitored, that caps the total traffic that Internet Monitor monitors. A city-network maximum is the limit of city-networks, but you only pay for the number of city-networks that are actually monitored. You can update your monitor at any time to change the percentage of traffic to monitor or the city-networks maximum. For more information, see Choosing a city-network maximum value in the Amazon CloudWatch User Guide.

", "DeleteMonitor": "

Deletes a monitor in Amazon CloudWatch Internet Monitor.

", - "GetHealthEvent": "

Gets information the Amazon CloudWatch Internet Monitor has created and stored about a health event for a specified monitor. This information includes the impacted locations, and all the information related to the event, by location.

The information returned includes the impact on performance, availability, and round-trip time, information about the network providers (ASNs), the event type, and so on.

Information rolled up at the global traffic level is also returned, including the impact type and total traffic impact.

", + "GetHealthEvent": "

Gets information that Amazon CloudWatch Internet Monitor has created and stored about a health event for a specified monitor. This information includes the impacted locations, and all the information related to the event, by location.

The information returned includes the impact on performance, availability, and round-trip time, information about the network providers (ASNs), the event type, and so on.

Information rolled up at the global traffic level is also returned, including the impact type and total traffic impact.

", + "GetInternetEvent": "

Gets information that Amazon CloudWatch Internet Monitor has generated about an internet event. Internet Monitor displays information about recent global health events, called internet events, on a global outages map that is available to all Amazon Web Services customers.

The information returned here includes the impacted location, when the event started and (if the event is over) ended, the type of event (PERFORMANCE or AVAILABILITY), and the status (ACTIVE or RESOLVED).

", "GetMonitor": "

Gets information about a monitor in Amazon CloudWatch Internet Monitor based on a monitor name. The information returned includes the Amazon Resource Name (ARN), create time, modified time, resources included in the monitor, and status information.

", "GetQueryResults": "

Return the data for a query with the Amazon CloudWatch Internet Monitor query interface. Specify the query that you want to return results for by providing a QueryId and a monitor name.

For more information about using the query interface, including examples, see Using the Amazon CloudWatch Internet Monitor query interface in the Amazon CloudWatch Internet Monitor User Guide.

", "GetQueryStatus": "

Returns the current status of a query for the Amazon CloudWatch Internet Monitor query interface, for a specified query ID and monitor. When you run a query, check the status to make sure that the query has SUCCEEDED before you review the results.

", - "ListHealthEvents": "

Lists all health events for a monitor in Amazon CloudWatch Internet Monitor. Returns information for health events including the event start and end time and the status.

Health events that have start times during the time frame that is requested are not included in the list of health events.

", + "ListHealthEvents": "

Lists all health events for a monitor in Amazon CloudWatch Internet Monitor. Returns information for health events including the event start and end times, and the status.

Health events that have start times during the time frame that is requested are not included in the list of health events.

", + "ListInternetEvents": "

Lists internet events that cause performance or availability issues for client locations. Amazon CloudWatch Internet Monitor displays information about recent global health events, called internet events, on a global outages map that is available to all Amazon Web Services customers.

You can constrain the list of internet events returned by providing a start time and end time to define a total time frame for events you want to list. Both start time and end time specify the time when an event started. End time is optional. If you don't include it, the default end time is the current time.

You can also limit the events returned to a specific status (ACTIVE or RESOLVED) or type (PERFORMANCE or AVAILABILITY).

", "ListMonitors": "

Lists all of your monitors for Amazon CloudWatch Internet Monitor and their statuses, along with the Amazon Resource Name (ARN) and name of each monitor.

", "ListTagsForResource": "

Lists the tags for a resource. Tags are supported only for monitors in Amazon CloudWatch Internet Monitor.

", "StartQuery": "

Start a query to return data for a specific query type for the Amazon CloudWatch Internet Monitor query interface. Specify a time period for the data that you want returned by using StartTime and EndTime. You filter the query results to return by providing parameters that you specify with FilterParameters.

For more information about using the query interface, including examples, see Using the Amazon CloudWatch Internet Monitor query interface in the Amazon CloudWatch Internet Monitor User Guide.

", @@ -26,17 +28,19 @@ "AccountId": { "base": null, "refs": { - "GetHealthEventInput$LinkedAccountId": "

TBD

", - "GetMonitorInput$LinkedAccountId": "

TBD

", - "ListHealthEventsInput$LinkedAccountId": "

TBD

", - "StartQueryInput$LinkedAccountId": "

TBD

" + "GetHealthEventInput$LinkedAccountId": "

The account ID for an account that you've set up cross-account sharing for in Amazon CloudWatch Internet Monitor. You configure cross-account sharing by using Amazon CloudWatch Observability Access Manager. For more information, see Internet Monitor cross-account observability in the Amazon CloudWatch Internet Monitor User Guide.

", + "GetMonitorInput$LinkedAccountId": "

The account ID for an account that you've set up cross-account sharing for in Amazon CloudWatch Internet Monitor. You configure cross-account sharing by using Amazon CloudWatch Observability Access Manager. For more information, see Internet Monitor cross-account observability in the Amazon CloudWatch Internet Monitor User Guide.

", + "ListHealthEventsInput$LinkedAccountId": "

The account ID for an account that you've set up cross-account sharing for in Amazon CloudWatch Internet Monitor. You configure cross-account sharing by using Amazon CloudWatch Observability Access Manager. For more information, see Internet Monitor cross-account observability in the Amazon CloudWatch Internet Monitor User Guide.

", + "StartQueryInput$LinkedAccountId": "

The account ID for an account that you've set up cross-account sharing for in Amazon CloudWatch Internet Monitor. You configure cross-account sharing by using Amazon CloudWatch Observability Access Manager. For more information, see Internet Monitor cross-account observability in the Amazon CloudWatch Internet Monitor User Guide.

" } }, "Arn": { "base": null, "refs": { "GetHealthEventOutput$EventArn": "

The Amazon Resource Name (ARN) of the event.

", + "GetInternetEventOutput$EventArn": "

The Amazon Resource Name (ARN) of the internet event.

", "HealthEvent$EventArn": "

The Amazon Resource Name (ARN) of the event.

", + "InternetEventSummary$EventArn": "

The Amazon Resource Name (ARN) of the internet event.

", "SetOfARNs$member": null } }, @@ -54,7 +58,14 @@ "Boolean": { "base": null, "refs": { - "ListMonitorsInput$IncludeLinkedAccounts": "

TBD

" + "ListMonitorsInput$IncludeLinkedAccounts": "

A boolean option that you can set to TRUE to include monitors for linked accounts in a list of monitors, when you've set up cross-account sharing in Amazon CloudWatch Internet Monitor. You configure cross-account sharing by using Amazon CloudWatch Observability Access Manager. For more information, see Internet Monitor cross-account observability in the Amazon CloudWatch Internet Monitor User Guide.

" + } + }, + "ClientLocation": { + "base": "

The impacted location, such as a city, that Amazon Web Services clients access application resources from.

", + "refs": { + "GetInternetEventOutput$ClientLocation": "

The impacted location, such as a city, where clients access Amazon Web Services application resources.

", + "InternetEventSummary$ClientLocation": "

The impacted location, such as a city, that Amazon Web Services clients access application resources from.

" } }, "ConflictException": { @@ -88,6 +99,8 @@ "AvailabilityMeasurement$ExperienceScore": "

Experience scores, or health scores are calculated for different geographic and network provider combinations (that is, different granularities) and also summed into global scores. If you view performance or availability scores without filtering for any specific geography or service provider, Amazon CloudWatch Internet Monitor provides global health scores.

The Amazon CloudWatch Internet Monitor chapter in the CloudWatch User Guide includes detailed information about how Internet Monitor calculates health scores, including performance and availability scores, and when it creates and resolves health events. For more information, see How Amazon Web Services calculates performance and availability scores in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide.

", "AvailabilityMeasurement$PercentOfTotalTrafficImpacted": "

The impact on total traffic that a health event has, in increased latency or reduced availability. This is the percentage of how much latency has increased or availability has decreased during the event, compared to what is typical for traffic from this client location to the Amazon Web Services location using this client network.

For information about how Internet Monitor calculates impact, see How Internet Monitor works in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.

", "AvailabilityMeasurement$PercentOfClientLocationImpacted": "

The percentage of impact caused by a health event for client location traffic globally.

For information about how Internet Monitor calculates impact, see Inside Internet Monitor in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.

", + "ClientLocation$Latitude": "

The latitude where the internet event is located.

", + "ClientLocation$Longitude": "

The longitude where the internet event is located.

", "GetHealthEventOutput$PercentOfTotalTrafficImpacted": "

The impact on total traffic that a health event has, in increased latency or reduced availability. This is the percentage of how much latency has increased or availability has decreased during the event, compared to what is typical for traffic from this client location to the Amazon Web Services location using this client network.

", "HealthEvent$PercentOfTotalTrafficImpacted": "

The impact on total traffic that a health event has, in increased latency or reduced availability. This is the percentage of how much latency has increased or availability has decreased during the event, compared to what is typical for traffic from this client location to the Amazon Web Services location using this client network.

", "ImpactedLocation$Latitude": "

The latitude where the health event is located.

", @@ -128,6 +141,16 @@ "refs": { } }, + "GetInternetEventInput": { + "base": null, + "refs": { + } + }, + "GetInternetEventOutput": { + "base": null, + "refs": { + } + }, "GetMonitorInput": { "base": null, "refs": { @@ -189,7 +212,7 @@ "base": null, "refs": { "GetHealthEventOutput$Status": "

The status of a health event.

", - "HealthEvent$Status": "

Health event list member.

", + "HealthEvent$Status": "

The status of a health event.

", "ImpactedLocation$Status": "

The status of the health event at an impacted location.

", "ListHealthEventsInput$EventStatus": "

The status of a health event.

" } @@ -225,6 +248,46 @@ "refs": { } }, + "InternetEventId": { + "base": null, + "refs": { + "GetInternetEventInput$EventId": "

The EventId of the internet event to return information for.

", + "GetInternetEventOutput$EventId": "

The internally-generated identifier of an internet event.

", + "InternetEventSummary$EventId": "

The internally-generated identifier of an internet event.

" + } + }, + "InternetEventMaxResults": { + "base": null, + "refs": { + "ListInternetEventsInput$MaxResults": "

The number of query results that you want to return with this call.

" + } + }, + "InternetEventStatus": { + "base": null, + "refs": { + "GetInternetEventOutput$EventStatus": "

The status of the internet event.

", + "InternetEventSummary$EventStatus": "

The status of an internet event.

" + } + }, + "InternetEventSummary": { + "base": "

A summary of information about an internet event in Amazon CloudWatch Internet Monitor. Internet events are issues that cause performance degradation or availability problems for impacted Amazon Web Services client locations. Internet Monitor displays information about recent global health events, called internet events, on a global outages map that is available to all Amazon Web Services customers.

", + "refs": { + "InternetEventsList$member": null + } + }, + "InternetEventType": { + "base": null, + "refs": { + "GetInternetEventOutput$EventType": "

The type of network impairment.

", + "InternetEventSummary$EventType": "

The type of network impairment.

" + } + }, + "InternetEventsList": { + "base": null, + "refs": { + "ListInternetEventsOutput$InternetEvents": "

A set of internet events returned for the list operation.

" + } + }, "InternetHealth": { "base": "

Internet health includes measurements calculated by Amazon CloudWatch Internet Monitor about the performance and availability for your application on the internet. Amazon Web Services has substantial historical data about internet performance and availability between Amazon Web Services services and different network providers and geographies. By applying statistical analysis to the data, Internet Monitor can detect when the performance and availability for your application has dropped, compared to an estimated baseline that's already calculated. To make it easier to see those drops, Internet Monitor reports the information to you in the form of health scores: a performance score and an availability score.

", "refs": { @@ -260,6 +323,16 @@ "refs": { } }, + "ListInternetEventsInput": { + "base": null, + "refs": { + } + }, + "ListInternetEventsOutput": { + "base": null, + "refs": { + } + }, "ListMonitorsInput": { "base": null, "refs": { @@ -302,6 +375,7 @@ "Long": { "base": null, "refs": { + "ClientLocation$ASNumber": "

The Autonomous System Number (ASN) of the network at an impacted location.

", "ImpactedLocation$ASNumber": "

The Autonomous System Number (ASN) of the network at an impacted location.

", "Network$ASNumber": "

The Autonomous System Number (ASN) of the internet provider or network.

" } @@ -363,7 +437,7 @@ } }, "Network": { - "base": "

An internet service provider (ISP) or network in Amazon CloudWatch Internet Monitor.

", + "base": "

An internet service provider (ISP) or network (ASN) in Amazon CloudWatch Internet Monitor.

", "refs": { "NetworkList$member": null } @@ -525,6 +599,11 @@ "refs": { "AccessDeniedException$message": null, "BadRequestException$message": null, + "ClientLocation$ASName": "

The name of the internet service provider (ISP) or network (ASN).

", + "ClientLocation$Country": "

The name of the country where the internet event is located.

", + "ClientLocation$Subdivision": "

The subdivision location where the health event is located. The subdivision usually maps to states in most countries (including the United States). For United Kingdom, it maps to a country (England, Scotland, Wales) or province (Northern Ireland).

", + "ClientLocation$Metro": "

The metro area where the health event is located.

Metro indicates a metropolitan region in the United States, such as the region around New York City. In non-US countries, this is a second-level subdivision. For example, in the United Kingdom, it could be a county, a London borough, a unitary authority, council area, and so on.

", + "ClientLocation$City": "

The name of the city where the internet event is located.

", "ConflictException$message": null, "CreateMonitorInput$ClientToken": "

A unique, case-sensitive string of up to 64 ASCII characters that you specify to make an idempotent API request. Don't reuse the same client token for other API requests.

", "FilterList$member": null, @@ -534,7 +613,7 @@ "GetQueryResultsInput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "GetQueryResultsOutput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "GetQueryStatusInput$QueryId": "

The ID of the query that you want to return the status for. A QueryId is an internally-generated dentifier for a specific query.

", - "ImpactedLocation$ASName": "

The name of the network at an impacted location.

", + "ImpactedLocation$ASName": "

The name of the internet service provider (ISP) or network (ASN).

", "ImpactedLocation$Country": "

The name of the country where the health event is located.

", "ImpactedLocation$Subdivision": "

The subdivision location where the health event is located. The subdivision usually maps to states in most countries (including the United States). For United Kingdom, it maps to a country (England, Scotland, Wales) or province (Northern Ireland).

", "ImpactedLocation$Metro": "

The metro area where the health event is located.

Metro indicates a metropolitan region in the United States, such as the region around New York City. In non-US countries, this is a second-level subdivision. For example, in the United Kingdom, it could be a county, a London borough, a unitary authority, council area, and so on.

", @@ -548,10 +627,14 @@ "LimitExceededException$message": null, "ListHealthEventsInput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "ListHealthEventsOutput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", + "ListInternetEventsInput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", + "ListInternetEventsInput$EventStatus": "

The status of an internet event.

", + "ListInternetEventsInput$EventType": "

The type of network impairment.

", + "ListInternetEventsOutput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "ListMonitorsInput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", "ListMonitorsInput$MonitorStatus": "

The status of a monitor. This includes the status of the data processing for the monitor and the status of the monitor itself.

For information about the statuses for a monitor, see Monitor.

", "ListMonitorsOutput$NextToken": "

The token for the next set of results. You receive this token from a previous call.

", - "Network$ASName": "

The internet provider name or network name.

", + "Network$ASName": "

The name of the internet service provider (ISP) or network (ASN).

", "NotFoundException$message": null, "QueryField$Name": "

The name of a field to query your application's Amazon CloudWatch Internet Monitor data for, such as availability_score.

", "QueryField$Type": "

The data type for a query field, which must correspond to the field you're defining for QueryField. For example, if the query field name is availability_score, the data type is float.

", @@ -573,14 +656,20 @@ "GetHealthEventOutput$EndedAt": "

The time when a health event was resolved. If the health event is still active, the end time is not set.

", "GetHealthEventOutput$CreatedAt": "

The time when a health event was created.

", "GetHealthEventOutput$LastUpdatedAt": "

The time when a health event was last updated or recalculated.

", + "GetInternetEventOutput$StartedAt": "

The time when the internet event started.

", + "GetInternetEventOutput$EndedAt": "

The time when the internet event ended. If the event hasn't ended yet, this value is empty.

", "GetMonitorOutput$CreatedAt": "

The time when the monitor was created.

", "GetMonitorOutput$ModifiedAt": "

The last time that the monitor was modified.

", "HealthEvent$StartedAt": "

When a health event started.

", "HealthEvent$EndedAt": "

The time when a health event ended. If the health event is still active, then the end time is not set.

", "HealthEvent$CreatedAt": "

When the health event was created.

", "HealthEvent$LastUpdatedAt": "

When the health event was last updated.

", + "InternetEventSummary$StartedAt": "

The time when an internet event started.

", + "InternetEventSummary$EndedAt": "

The time when an internet event ended. If the event hasn't ended yet, this value is empty.

", "ListHealthEventsInput$StartTime": "

The time when a health event started.

", "ListHealthEventsInput$EndTime": "

The time when a health event ended. If the health event is still ongoing, then the end time is not set.

", + "ListInternetEventsInput$StartTime": "

The start time of the time window that you want to get a list of internet events for.

", + "ListInternetEventsInput$EndTime": "

The end time of the time window that you want to get a list of internet events for.

", "StartQueryInput$StartTime": "

The timestamp that is the beginning of the period that you want to retrieve data for with your query.

", "StartQueryInput$EndTime": "

The timestamp that is the end of the period that you want to retrieve data for with your query.

" } @@ -644,7 +733,7 @@ "TriangulationEventType": { "base": null, "refs": { - "NetworkImpairment$NetworkEventType": "

Type of network impairment.

" + "NetworkImpairment$NetworkEventType": "

The type of network impairment.

" } }, "UntagResourceInput": { diff --git a/models/apis/internetmonitor/2021-06-03/paginators-1.json b/models/apis/internetmonitor/2021-06-03/paginators-1.json index ee8d7cca425..2ea37802009 100644 --- a/models/apis/internetmonitor/2021-06-03/paginators-1.json +++ b/models/apis/internetmonitor/2021-06-03/paginators-1.json @@ -11,6 +11,12 @@ "limit_key": "MaxResults", "result_key": "HealthEvents" }, + "ListInternetEvents": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "InternetEvents" + }, "ListMonitors": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/apis/personalize/2018-05-22/api-2.json b/models/apis/personalize/2018-05-22/api-2.json index d4eff98be89..8c5f67ec1f6 100644 --- a/models/apis/personalize/2018-05-22/api-2.json +++ b/models/apis/personalize/2018-05-22/api-2.json @@ -1050,6 +1050,12 @@ "bestRecipeArn":{"shape":"Arn"} } }, + "AutoTrainingConfig":{ + "type":"structure", + "members":{ + "schedulingExpression":{"shape":"SchedulingExpression"} + } + }, "AvroSchema":{ "type":"string", "max":20000 @@ -1187,7 +1193,8 @@ "type":"structure", "members":{ "itemExplorationConfig":{"shape":"HyperParameters"}, - "enableMetadataWithRecommendations":{"shape":"Boolean"} + "enableMetadataWithRecommendations":{"shape":"Boolean"}, + "syncWithLatestSolutionVersion":{"shape":"Boolean"} } }, "CampaignSummary":{ @@ -1540,6 +1547,7 @@ "name":{"shape":"Name"}, "performHPO":{"shape":"Boolean"}, "performAutoML":{"shape":"PerformAutoML"}, + "performAutoTraining":{"shape":"PerformAutoTraining"}, "recipeArn":{"shape":"Arn"}, "datasetGroupArn":{"shape":"Arn"}, "eventType":{"shape":"EventType"}, @@ -2669,7 +2677,8 @@ }, "NextToken":{ "type":"string", - "max":1500 + "max":1500, + "pattern":"\\p{ASCII}{0,1500}" }, "NumBatchResults":{"type":"integer"}, "ObjectiveSensitivity":{ @@ -2697,6 +2706,10 @@ "max":1000 }, "PerformAutoML":{"type":"boolean"}, + "PerformAutoTraining":{ + "type":"boolean", + "box":true + }, "PerformHPO":{"type":"boolean"}, "Recipe":{ "type":"structure", @@ -2834,6 +2847,12 @@ "max":256, "pattern":"(s3|http|https)://.+" }, + "SchedulingExpression":{ + "type":"string", + "max":16, + "min":1, + "pattern":"rate\\(\\d+ days?\\)" + }, "Schemas":{ "type":"list", "member":{"shape":"DatasetSchemaSummary"}, @@ -2846,6 +2865,7 @@ "solutionArn":{"shape":"Arn"}, "performHPO":{"shape":"PerformHPO"}, "performAutoML":{"shape":"PerformAutoML"}, + "performAutoTraining":{"shape":"PerformAutoTraining"}, "recipeArn":{"shape":"Arn"}, "datasetGroupArn":{"shape":"Arn"}, "eventType":{"shape":"EventType"}, @@ -2866,7 +2886,8 @@ "featureTransformationParameters":{"shape":"FeatureTransformationParameters"}, "autoMLConfig":{"shape":"AutoMLConfig"}, "optimizationObjective":{"shape":"OptimizationObjective"}, - "trainingDataConfig":{"shape":"TrainingDataConfig"} + "trainingDataConfig":{"shape":"TrainingDataConfig"}, + "autoTrainingConfig":{"shape":"AutoTrainingConfig"} } }, "SolutionSummary":{ @@ -2898,7 +2919,8 @@ "status":{"shape":"Status"}, "failureReason":{"shape":"FailureReason"}, "creationDateTime":{"shape":"Date"}, - "lastUpdatedDateTime":{"shape":"Date"} + "lastUpdatedDateTime":{"shape":"Date"}, + "trainingType":{"shape":"TrainingType"} } }, "SolutionVersionSummary":{ @@ -2906,6 +2928,8 @@ "members":{ "solutionVersionArn":{"shape":"Arn"}, "status":{"shape":"Status"}, + "trainingMode":{"shape":"TrainingMode"}, + "trainingType":{"shape":"TrainingType"}, "creationDateTime":{"shape":"Date"}, "lastUpdatedDateTime":{"shape":"Date"}, "failureReason":{"shape":"FailureReason"} @@ -3052,7 +3076,15 @@ "type":"string", "enum":[ "FULL", - "UPDATE" + "UPDATE", + "AUTOTRAIN" + ] + }, + "TrainingType":{ + "type":"string", + "enum":[ + "AUTOMATIC", + "MANUAL" ] }, "TransactionsPerSecond":{ diff --git a/models/apis/personalize/2018-05-22/docs-2.json b/models/apis/personalize/2018-05-22/docs-2.json index 2d084869c2e..dd0b3a66ae3 100644 --- a/models/apis/personalize/2018-05-22/docs-2.json +++ b/models/apis/personalize/2018-05-22/docs-2.json @@ -4,7 +4,7 @@ "operations": { "CreateBatchInferenceJob": "

Generates batch recommendations based on a list of items or users stored in Amazon S3 and exports the recommendations to an Amazon S3 bucket.

To generate batch recommendations, specify the ARN of a solution version and an Amazon S3 URI for the input and output data. For user personalization, popular items, and personalized ranking solutions, the batch inference job generates a list of recommended items for each user ID in the input file. For related items solutions, the job generates a list of recommended items for each item ID in the input file.

For more information, see Creating a batch inference job .

If you use the Similar-Items recipe, Amazon Personalize can add descriptive themes to batch recommendations. To generate themes, set the job's mode to THEME_GENERATION and specify the name of the field that contains item names in the input data.

For more information about generating themes, see Batch recommendations with themes from Content Generator .

You can't get batch recommendations with the Trending-Now or Next-Best-Action recipes.

", "CreateBatchSegmentJob": "

Creates a batch segment job. The operation can handle up to 50 million records and the input file must be in JSON format. For more information, see Getting batch recommendations and user segments.

", - "CreateCampaign": "

Creates a campaign that deploys a solution version. When a client calls the GetRecommendations and GetPersonalizedRanking APIs, a campaign is specified in the request.

Minimum Provisioned TPS and Auto-Scaling

A high minProvisionedTPS will increase your cost. We recommend starting with 1 for minProvisionedTPS (the default). Track your usage using Amazon CloudWatch metrics, and increase the minProvisionedTPS as necessary.

When you create an Amazon Personalize campaign, you can specify the minimum provisioned transactions per second (minProvisionedTPS) for the campaign. This is the baseline transaction throughput for the campaign provisioned by Amazon Personalize. It sets the minimum billing charge for the campaign while it is active. A transaction is a single GetRecommendations or GetPersonalizedRanking request. The default minProvisionedTPS is 1.

If your TPS increases beyond the minProvisionedTPS, Amazon Personalize auto-scales the provisioned capacity up and down, but never below minProvisionedTPS. There's a short time delay while the capacity is increased that might cause loss of transactions. When your traffic reduces, capacity returns to the minProvisionedTPS.

You are charged for the the minimum provisioned TPS or, if your requests exceed the minProvisionedTPS, the actual TPS. The actual TPS is the total number of recommendation requests you make. We recommend starting with a low minProvisionedTPS, track your usage using Amazon CloudWatch metrics, and then increase the minProvisionedTPS as necessary.

For more information about campaign costs, see Amazon Personalize pricing.

Status

A campaign can be in one of the following states:

To get the campaign status, call DescribeCampaign.

Wait until the status of the campaign is ACTIVE before asking the campaign for recommendations.

Related APIs

", + "CreateCampaign": "

You incur campaign costs while it is active. To avoid unnecessary costs, make sure to delete the campaign when you are finished. For information about campaign costs, see Amazon Personalize pricing.

Creates a campaign that deploys a solution version. When a client calls the GetRecommendations and GetPersonalizedRanking APIs, a campaign is specified in the request.

Minimum Provisioned TPS and Auto-Scaling

A high minProvisionedTPS will increase your cost. We recommend starting with 1 for minProvisionedTPS (the default). Track your usage using Amazon CloudWatch metrics, and increase the minProvisionedTPS as necessary.

When you create an Amazon Personalize campaign, you can specify the minimum provisioned transactions per second (minProvisionedTPS) for the campaign. This is the baseline transaction throughput for the campaign provisioned by Amazon Personalize. It sets the minimum billing charge for the campaign while it is active. A transaction is a single GetRecommendations or GetPersonalizedRanking request. The default minProvisionedTPS is 1.

If your TPS increases beyond the minProvisionedTPS, Amazon Personalize auto-scales the provisioned capacity up and down, but never below minProvisionedTPS. There's a short time delay while the capacity is increased that might cause loss of transactions. When your traffic reduces, capacity returns to the minProvisionedTPS.

You are charged for the the minimum provisioned TPS or, if your requests exceed the minProvisionedTPS, the actual TPS. The actual TPS is the total number of recommendation requests you make. We recommend starting with a low minProvisionedTPS, track your usage using Amazon CloudWatch metrics, and then increase the minProvisionedTPS as necessary.

For more information about campaign costs, see Amazon Personalize pricing.

Status

A campaign can be in one of the following states:

To get the campaign status, call DescribeCampaign.

Wait until the status of the campaign is ACTIVE before asking the campaign for recommendations.

Related APIs

", "CreateDataset": "

Creates an empty dataset and adds it to the specified dataset group. Use CreateDatasetImportJob to import your training data to a dataset.

There are 5 types of datasets:

Each dataset type has an associated schema with required field types. Only the Item interactions dataset is required in order to train a model (also referred to as creating a solution).

A dataset can be in one of the following states:

To get the status of the dataset, call DescribeDataset.

Related APIs

", "CreateDatasetExportJob": "

Creates a job that exports data from your dataset to an Amazon S3 bucket. To allow Amazon Personalize to export the training data, you must specify an service-linked IAM role that gives Amazon Personalize PutObject permissions for your Amazon S3 bucket. For information, see Exporting a dataset in the Amazon Personalize developer guide.

Status

A dataset export job can be in one of the following states:

To get the status of the export job, call DescribeDatasetExportJob, and specify the Amazon Resource Name (ARN) of the dataset export job. The dataset export is complete when the status shows as ACTIVE. If the status shows as CREATE FAILED, the response includes a failureReason key, which describes why the job failed.

", "CreateDatasetGroup": "

Creates an empty dataset group. A dataset group is a container for Amazon Personalize resources. A dataset group can contain at most three datasets, one for each type of dataset:

A dataset group can be a Domain dataset group, where you specify a domain and use pre-configured resources like recommenders, or a Custom dataset group, where you use custom resources, such as a solution with a solution version, that you deploy with a campaign. If you start with a Domain dataset group, you can still add custom resources such as solutions and solution versions trained with recipes for custom use cases and deployed with campaigns.

A dataset group can be in one of the following states:

To get the status of the dataset group, call DescribeDatasetGroup. If the status shows as CREATE FAILED, the response includes a failureReason key, which describes why the creation failed.

You must wait until the status of the dataset group is ACTIVE before adding a dataset to the group.

You can specify an Key Management Service (KMS) key to encrypt the datasets in the group. If you specify a KMS key, you must also include an Identity and Access Management (IAM) role that has permission to access the key.

APIs that require a dataset group ARN in the request

Related APIs

", @@ -14,7 +14,7 @@ "CreateMetricAttribution": "

Creates a metric attribution. A metric attribution creates reports on the data that you import into Amazon Personalize. Depending on how you imported the data, you can view reports in Amazon CloudWatch or Amazon S3. For more information, see Measuring impact of recommendations.

", "CreateRecommender": "

Creates a recommender with the recipe (a Domain dataset group use case) you specify. You create recommenders for a Domain dataset group and specify the recommender's Amazon Resource Name (ARN) when you make a GetRecommendations request.

Minimum recommendation requests per second

A high minRecommendationRequestsPerSecond will increase your bill. We recommend starting with 1 for minRecommendationRequestsPerSecond (the default). Track your usage using Amazon CloudWatch metrics, and increase the minRecommendationRequestsPerSecond as necessary.

When you create a recommender, you can configure the recommender's minimum recommendation requests per second. The minimum recommendation requests per second (minRecommendationRequestsPerSecond) specifies the baseline recommendation request throughput provisioned by Amazon Personalize. The default minRecommendationRequestsPerSecond is 1. A recommendation request is a single GetRecommendations operation. Request throughput is measured in requests per second and Amazon Personalize uses your requests per second to derive your requests per hour and the price of your recommender usage.

If your requests per second increases beyond minRecommendationRequestsPerSecond, Amazon Personalize auto-scales the provisioned capacity up and down, but never below minRecommendationRequestsPerSecond. There's a short time delay while the capacity is increased that might cause loss of requests.

Your bill is the greater of either the minimum requests per hour (based on minRecommendationRequestsPerSecond) or the actual number of requests. The actual request throughput used is calculated as the average requests/second within a one-hour window. We recommend starting with the default minRecommendationRequestsPerSecond, track your usage using Amazon CloudWatch metrics, and then increase the minRecommendationRequestsPerSecond as necessary.

Status

A recommender can be in one of the following states:

To get the recommender status, call DescribeRecommender.

Wait until the status of the recommender is ACTIVE before asking the recommender for recommendations.

Related APIs

", "CreateSchema": "

Creates an Amazon Personalize schema from the specified schema string. The schema you create must be in Avro JSON format.

Amazon Personalize recognizes three schema variants. Each schema is associated with a dataset type and has a set of required field and keywords. If you are creating a schema for a dataset in a Domain dataset group, you provide the domain of the Domain dataset group. You specify a schema when you call CreateDataset.

Related APIs

", - "CreateSolution": "

Creates the configuration for training a model. A trained model is known as a solution version. After the configuration is created, you train the model (create a solution version) by calling the CreateSolutionVersion operation. Every time you call CreateSolutionVersion, a new version of the solution is created.

After creating a solution version, you check its accuracy by calling GetSolutionMetrics. When you are satisfied with the version, you deploy it using CreateCampaign. The campaign provides recommendations to a client through the GetRecommendations API.

To train a model, Amazon Personalize requires training data and a recipe. The training data comes from the dataset group that you provide in the request. A recipe specifies the training algorithm and a feature transformation. You can specify one of the predefined recipes provided by Amazon Personalize.

Amazon Personalize doesn't support configuring the hpoObjective for solution hyperparameter optimization at this time.

Status

A solution can be in one of the following states:

To get the status of the solution, call DescribeSolution. Wait until the status shows as ACTIVE before calling CreateSolutionVersion.

Related APIs

", + "CreateSolution": "

After you create a solution, you can’t change its configuration. By default, all new solutions use automatic training. With automatic training, you incur training costs while your solution is active. You can't stop automatic training for a solution. To avoid unnecessary costs, make sure to delete the solution when you are finished. For information about training costs, see Amazon Personalize pricing.

Creates the configuration for training a model (creating a solution version). This configuration includes the recipe to use for model training and optional training configuration, such as columns to use in training and feature transformation parameters. For more information about configuring a solution, see Creating and configuring a solution.

By default, new solutions use automatic training to create solution versions every 7 days. You can change the training frequency. Automatic solution version creation starts one hour after the solution is ACTIVE. If you manually create a solution version within the hour, the solution skips the first automatic training. For more information, see Configuring automatic training.

To turn off automatic training, set performAutoTraining to false. If you turn off automatic training, you must manually create a solution version by calling the CreateSolutionVersion operation.

After training starts, you can get the solution version's Amazon Resource Name (ARN) with the ListSolutionVersions API operation. To get its status, use the DescribeSolutionVersion.

After training completes you can evaluate model accuracy by calling GetSolutionMetrics. When you are satisfied with the solution version, you deploy it using CreateCampaign. The campaign provides recommendations to a client through the GetRecommendations API.

Amazon Personalize doesn't support configuring the hpoObjective for solution hyperparameter optimization at this time.

Status

A solution can be in one of the following states:

To get the status of the solution, call DescribeSolution. If you use manual training, the status must be ACTIVE before you call CreateSolutionVersion.

Related APIs

", "CreateSolutionVersion": "

Trains or retrains an active solution in a Custom dataset group. A solution is created using the CreateSolution operation and must be in the ACTIVE state before calling CreateSolutionVersion. A new version of the solution is created every time you call this operation.

Status

A solution version can be in one of the following states:

To get the status of the version, call DescribeSolutionVersion. Wait until the status shows as ACTIVE before calling CreateCampaign.

If the status shows as CREATE FAILED, the response includes a failureReason key, which describes why the job failed.

Related APIs

", "DeleteCampaign": "

Removes a campaign by deleting the solution deployment. The solution that the campaign is based on is not deleted and can be redeployed when needed. A deleted campaign can no longer be specified in a GetRecommendations request. For information on creating campaigns, see CreateCampaign.

", "DeleteDataset": "

Deletes a dataset. You can't delete a dataset if an associated DatasetImportJob or SolutionVersion is in the CREATE PENDING or IN PROGRESS state. For more information on datasets, see CreateDataset.

", @@ -58,14 +58,14 @@ "ListRecommenders": "

Returns a list of recommenders in a given Domain dataset group. When a Domain dataset group is not specified, all the recommenders associated with the account are listed. The response provides the properties for each recommender, including the Amazon Resource Name (ARN). For more information on recommenders, see CreateRecommender.

", "ListSchemas": "

Returns the list of schemas associated with the account. The response provides the properties for each schema, including the Amazon Resource Name (ARN). For more information on schemas, see CreateSchema.

", "ListSolutionVersions": "

Returns a list of solution versions for the given solution. When a solution is not specified, all the solution versions associated with the account are listed. The response provides the properties for each solution version, including the Amazon Resource Name (ARN).

", - "ListSolutions": "

Returns a list of solutions that use the given dataset group. When a dataset group is not specified, all the solutions associated with the account are listed. The response provides the properties for each solution, including the Amazon Resource Name (ARN). For more information on solutions, see CreateSolution.

", + "ListSolutions": "

Returns a list of solutions in a given dataset group. When a dataset group is not specified, all the solutions associated with the account are listed. The response provides the properties for each solution, including the Amazon Resource Name (ARN). For more information on solutions, see CreateSolution.

", "ListTagsForResource": "

Get a list of tags attached to a resource.

", "StartRecommender": "

Starts a recommender that is INACTIVE. Starting a recommender does not create any new models, but resumes billing and automatic retraining for the recommender.

", "StopRecommender": "

Stops a recommender that is ACTIVE. Stopping a recommender halts billing and automatic retraining for the recommender.

", "StopSolutionVersionCreation": "

Stops creating a solution version that is in a state of CREATE_PENDING or CREATE IN_PROGRESS.

Depending on the current state of the solution version, the solution version state changes as follows:

You are billed for all of the training completed up until you stop the solution version creation. You cannot resume creating a solution version once it has been stopped.

", "TagResource": "

Add a list of tags to a resource.

", - "UntagResource": "

Remove tags that are attached to a resource.

", - "UpdateCampaign": "

Updates a campaign to deploy a retrained solution version with an existing campaign, change your campaign's minProvisionedTPS, or modify your campaign's configuration, such as the exploration configuration.

To update a campaign, the campaign status must be ACTIVE or CREATE FAILED. Check the campaign status using the DescribeCampaign operation.

You can still get recommendations from a campaign while an update is in progress. The campaign will use the previous solution version and campaign configuration to generate recommendations until the latest campaign update status is Active.

For more information about updating a campaign, including code samples, see Updating a campaign. For more information about campaigns, see Creating a campaign.

", + "UntagResource": "

Removes the specified tags that are attached to a resource. For more information, see Removing tags from Amazon Personalize resources.

", + "UpdateCampaign": "

Updates a campaign to deploy a retrained solution version with an existing campaign, change your campaign's minProvisionedTPS, or modify your campaign's configuration. For example, you can set enableMetadataWithRecommendations to true for an existing campaign.

To update a campaign to start automatically using the latest solution version, specify the following:

To update a campaign, the campaign status must be ACTIVE or CREATE FAILED. Check the campaign status using the DescribeCampaign operation.

You can still get recommendations from a campaign while an update is in progress. The campaign will use the previous solution version and campaign configuration to generate recommendations until the latest campaign update status is Active.

For more information about updating a campaign, including code samples, see Updating a campaign. For more information about campaigns, see Creating a campaign.

", "UpdateDataset": "

Update a dataset to replace its schema with a new or existing one. For more information, see Replacing a dataset's schema.

", "UpdateMetricAttribution": "

Updates a metric attribution.

", "UpdateRecommender": "

Updates the recommender to modify the recommender configuration. If you update the recommender to modify the columns used in training, Amazon Personalize automatically starts a full retraining of the models backing your recommender. While the update completes, you can still get recommendations from the recommender. The recommender uses the previous configuration until the update completes. To track the status of this update, use the latestRecommenderUpdate returned in the DescribeRecommender operation.

" @@ -107,7 +107,7 @@ "BatchSegmentJobSummary$batchSegmentJobArn": "

The Amazon Resource Name (ARN) of the batch segment job.

", "BatchSegmentJobSummary$solutionVersionArn": "

The Amazon Resource Name (ARN) of the solution version used by the batch segment job to generate batch segments.

", "Campaign$campaignArn": "

The Amazon Resource Name (ARN) of the campaign.

", - "Campaign$solutionVersionArn": "

The Amazon Resource Name (ARN) of a specific version of the solution.

", + "Campaign$solutionVersionArn": "

The Amazon Resource Name (ARN) of the solution version the campaign uses.

", "CampaignSummary$campaignArn": "

The Amazon Resource Name (ARN) of the campaign.

", "CampaignUpdateSummary$solutionVersionArn": "

The Amazon Resource Name (ARN) of the deployed solution version.

", "CreateBatchInferenceJobRequest$solutionVersionArn": "

The Amazon Resource Name (ARN) of the solution version that will be used to generate the batch inference recommendations.

", @@ -116,7 +116,7 @@ "CreateBatchSegmentJobRequest$solutionVersionArn": "

The Amazon Resource Name (ARN) of the solution version you want the batch segment job to use to generate batch segments.

", "CreateBatchSegmentJobRequest$filterArn": "

The ARN of the filter to apply to the batch segment job. For more information on using filters, see Filtering batch recommendations.

", "CreateBatchSegmentJobResponse$batchSegmentJobArn": "

The ARN of the batch segment job.

", - "CreateCampaignRequest$solutionVersionArn": "

The Amazon Resource Name (ARN) of the solution version to deploy.

", + "CreateCampaignRequest$solutionVersionArn": "

The Amazon Resource Name (ARN) of the trained model to deploy with the campaign. To specify the latest solution version of your solution, specify the ARN of your solution in SolutionArn/$LATEST format. You must use this format if you set syncWithLatestSolutionVersion to True in the CampaignConfig.

To deploy a model that isn't the latest solution version of your solution, specify the ARN of the solution version.

For more information about automatic campaign updates, see Enabling automatic campaign updates.

", "CreateCampaignResponse$campaignArn": "

The Amazon Resource Name (ARN) of the campaign.

", "CreateDatasetExportJobRequest$datasetArn": "

The Amazon Resource Name (ARN) of the dataset that contains the data to export.

", "CreateDatasetExportJobResponse$datasetExportJobArn": "

The Amazon Resource Name (ARN) of the dataset export job.

", @@ -207,7 +207,7 @@ "ListRecommendersRequest$datasetGroupArn": "

The Amazon Resource Name (ARN) of the Domain dataset group to list the recommenders for. When a Domain dataset group is not specified, all the recommenders associated with the account are listed.

", "ListSolutionVersionsRequest$solutionArn": "

The Amazon Resource Name (ARN) of the solution.

", "ListSolutionsRequest$datasetGroupArn": "

The Amazon Resource Name (ARN) of the dataset group.

", - "ListTagsForResourceRequest$resourceArn": "

The resource's Amazon Resource Name.

", + "ListTagsForResourceRequest$resourceArn": "

The resource's Amazon Resource Name (ARN).

", "MetricAttribution$metricAttributionArn": "

The metric attribution's Amazon Resource Name (ARN).

", "MetricAttribution$datasetGroupArn": "

The metric attribution's dataset group Amazon Resource Name (ARN).

", "MetricAttributionSummary$metricAttributionArn": "

The metric attribution's Amazon Resource Name (ARN).

", @@ -239,7 +239,7 @@ "TagResourceRequest$resourceArn": "

The resource's Amazon Resource Name (ARN).

", "UntagResourceRequest$resourceArn": "

The resource's Amazon Resource Name (ARN).

", "UpdateCampaignRequest$campaignArn": "

The Amazon Resource Name (ARN) of the campaign.

", - "UpdateCampaignRequest$solutionVersionArn": "

The ARN of a new solution version to deploy.

", + "UpdateCampaignRequest$solutionVersionArn": "

The Amazon Resource Name (ARN) of a new model to deploy. To specify the latest solution version of your solution, specify the ARN of your solution in SolutionArn/$LATEST format. You must use this format if you set syncWithLatestSolutionVersion to True in the CampaignConfig.

To deploy a model that isn't the latest solution version of your solution, specify the ARN of the solution version.

For more information about automatic campaign updates, see Enabling automatic campaign updates.

", "UpdateCampaignResponse$campaignArn": "

The same campaign ARN as given in the request.

", "UpdateDatasetRequest$datasetArn": "

The Amazon Resource Name (ARN) of the dataset that you want to update.

", "UpdateDatasetRequest$schemaArn": "

The Amazon Resource Name (ARN) of the new schema you want use.

", @@ -268,6 +268,12 @@ "Solution$autoMLResult": "

When performAutoML is true, specifies the best recipe found.

" } }, + "AutoTrainingConfig": { + "base": "

The automatic training configuration to use when performAutoTraining is true.

", + "refs": { + "SolutionConfig$autoTrainingConfig": "

Specifies the automatic training configuration to use.

" + } + }, "AvroSchema": { "base": null, "refs": { @@ -358,6 +364,7 @@ "base": null, "refs": { "CampaignConfig$enableMetadataWithRecommendations": "

Whether metadata with recommendations is enabled for the campaign. If enabled, you can specify the columns from your Items dataset in your request for recommendations. Amazon Personalize returns this data for each item in the recommendation response. For information about enabling metadata for a campaign, see Enabling metadata in recommendations for a campaign.

If you enable metadata in recommendations, you will incur additional costs. For more information, see Amazon Personalize pricing.

", + "CampaignConfig$syncWithLatestSolutionVersion": "

Whether the campaign automatically updates to use the latest solution version (trained model) of a solution. If you specify True, you must specify the ARN of your solution for the SolutionVersionArn parameter. It must be in SolutionArn/$LATEST format. The default is False and you must manually update the campaign to deploy the latest solution version.

For more information about automatic campaign updates, see Enabling automatic campaign updates.

", "CreateDatasetImportJobRequest$publishAttributionMetricsToS3": "

If you created a metric attribution, specify whether to publish metrics for this import job to Amazon S3

", "CreateSolutionRequest$performHPO": "

Whether to perform hyperparameter optimization (HPO) on the specified or selected recipe. The default is false.

When performing AutoML, this parameter is always true and you should not set it to false.

", "DatasetImportJob$publishAttributionMetricsToS3": "

Whether the job publishes metrics to Amazon S3 for a metric attribution.

", @@ -1121,7 +1128,7 @@ "ExcludedDatasetColumns": { "base": null, "refs": { - "TrainingDataConfig$excludedDatasetColumns": "

Specifies the columns to exclude from training. Each key is a dataset type, and each value is a list of columns. Exclude columns to control what data Amazon Personalize uses to generate recommendations. For example, you might have a column that you want to use only to filter recommendations. You can exclude this column from training and Amazon Personalize considers it only when filtering.

" + "TrainingDataConfig$excludedDatasetColumns": "

Specifies the columns to exclude from training. Each key is a dataset type, and each value is a list of columns. Exclude columns to control what data Amazon Personalize uses to generate recommendations.

For example, you might have a column that you want to use only to filter recommendations. You can exclude this column from training and Amazon Personalize considers it only when filtering.

" } }, "FailureReason": { @@ -1741,6 +1748,13 @@ "SolutionVersion$performAutoML": "

When true, Amazon Personalize searches for the most optimal recipe according to the solution configuration. When false (the default), Amazon Personalize uses recipeArn.

" } }, + "PerformAutoTraining": { + "base": null, + "refs": { + "CreateSolutionRequest$performAutoTraining": "

Whether the solution uses automatic training to create new solution versions (trained models). The default is True and the solution automatically creates new solution versions every 7 days. You can change the training frequency by specifying a schedulingExpression in the AutoTrainingConfig as part of solution configuration. For more information about automatic training, see Configuring automatic training.

Automatic solution version creation starts one hour after the solution is ACTIVE. If you manually create a solution version within the hour, the solution skips the first automatic training.

After training starts, you can get the solution version's Amazon Resource Name (ARN) with the ListSolutionVersions API operation. To get its status, use the DescribeSolutionVersion.

", + "Solution$performAutoTraining": "

Specifies whether the solution automatically creates solution versions. The default is True and the solution automatically creates new solution versions every 7 days.

For more information about auto training, see Creating and configuring a solution.

" + } + }, "PerformHPO": { "base": null, "refs": { @@ -1865,6 +1879,12 @@ "S3DataConfig$path": "

The file path of the Amazon S3 bucket.

" } }, + "SchedulingExpression": { + "base": null, + "refs": { + "AutoTrainingConfig$schedulingExpression": "

Specifies how often to automatically train new solution versions. Specify a rate expression in rate(value unit) format. For value, specify a number between 1 and 30. For unit, specify day or days. For example, to automatically create a new solution version every 5 days, specify rate(5 days). The default is every 7 days.

For more information about auto training, see Creating and configuring a solution.

" + } + }, "Schemas": { "base": null, "refs": { @@ -1872,7 +1892,7 @@ } }, "Solution": { - "base": "

An object that provides information about a solution. A solution is a trained model that can be deployed as a campaign.

", + "base": "

After you create a solution, you can’t change its configuration. By default, all new solutions use automatic training. With automatic training, you incur training costs while your solution is active. You can't stop automatic training for a solution. To avoid unnecessary costs, make sure to delete the solution when you are finished. For information about training costs, see Amazon Personalize pricing.

An object that provides information about a solution. A solution includes the custom recipe, customized parameters, and trained models (Solution Versions) that Amazon Personalize uses to generate recommendations.

After you create a solution, you can’t change its configuration. If you need to make changes, you can clone the solution with the Amazon Personalize console or create a new one.

", "refs": { "DescribeSolutionResponse$solution": "

An object that describes the solution.

" } @@ -1979,7 +1999,7 @@ } }, "Tag": { - "base": "

The optional metadata that you apply to resources to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define. For more information see Tagging Amazon Personalize recources.

", + "base": "

The optional metadata that you apply to resources to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define. For more information see Tagging Amazon Personalize resources.

", "refs": { "Tags$member": null } @@ -1994,7 +2014,7 @@ "TagKeys": { "base": null, "refs": { - "UntagResourceRequest$tagKeys": "

Keys to remove from the resource's tags.

" + "UntagResourceRequest$tagKeys": "

The keys of the tags to be removed.

" } }, "TagResourceRequest": { @@ -2029,7 +2049,7 @@ "CreateSolutionRequest$tags": "

A list of tags to apply to the solution.

", "CreateSolutionVersionRequest$tags": "

A list of tags to apply to the solution version.

", "ListTagsForResourceResponse$tags": "

The resource's tags.

", - "TagResourceRequest$tags": "

Tags to apply to the resource. For more information see Tagging Amazon Personalize recources.

" + "TagResourceRequest$tags": "

Tags to apply to the resource. For more information see Tagging Amazon Personalize resources.

" } }, "ThemeGenerationConfig": { @@ -2080,7 +2100,15 @@ "base": null, "refs": { "CreateSolutionVersionRequest$trainingMode": "

The scope of training to be performed when creating the solution version. The default is FULL. This creates a completely new model based on the entirety of the training data from the datasets in your dataset group.

If you use User-Personalization, you can specify a training mode of UPDATE. This updates the model to consider new items for recommendations. It is not a full retraining. You should still complete a full retraining weekly. If you specify UPDATE, Amazon Personalize will stop automatic updates for the solution version. To resume updates, create a new solution with training mode set to FULL and deploy it in a campaign. For more information about automatic updates, see Automatic updates.

The UPDATE option can only be used when you already have an active solution version created from the input solution using the FULL option and the input solution was trained with the User-Personalization recipe or the legacy HRNN-Coldstart recipe.

", - "SolutionVersion$trainingMode": "

The scope of training to be performed when creating the solution version. The FULL option trains the solution version based on the entirety of the input solution's training data, while the UPDATE option processes only the data that has changed in comparison to the input solution. Choose UPDATE when you want to incrementally update your solution version instead of creating an entirely new one.

The UPDATE option can only be used when you already have an active solution version created from the input solution using the FULL option and the input solution was trained with the User-Personalization recipe or the HRNN-Coldstart recipe.

" + "SolutionVersion$trainingMode": "

The scope of training to be performed when creating the solution version. A FULL training considers all of the data in your dataset group. An UPDATE processes only the data that has changed since the latest training. Only solution versions created with the User-Personalization recipe can use UPDATE.

", + "SolutionVersionSummary$trainingMode": "

The scope of training to be performed when creating the solution version. A FULL training considers all of the data in your dataset group. An UPDATE processes only the data that has changed since the latest training. Only solution versions created with the User-Personalization recipe can use UPDATE.

" + } + }, + "TrainingType": { + "base": null, + "refs": { + "SolutionVersion$trainingType": "

Whether the solution version was created automatically or manually.

", + "SolutionVersionSummary$trainingType": "

Whether the solution version was created automatically or manually.

" } }, "TransactionsPerSecond": { diff --git a/service/glue/api.go b/service/glue/api.go index 9b8fff15589..180530d6c8e 100644 --- a/service/glue/api.go +++ b/service/glue/api.go @@ -51569,6 +51569,11 @@ type GetUnfilteredTableMetadataOutput struct { // The resource ARN of the parent resource extracted from the request. ResourceArn *string `min:"20" type:"string"` + // The filter that applies to the table. For example when applying the filter + // in SQL, it would go in the WHERE clause and can be evaluated by using an + // AND operator with any other predicates applied by the user querying the table. + RowFilter *string `type:"string"` + // A Table object containing the table metadata. Table *TableData `type:"structure"` } @@ -51639,6 +51644,12 @@ func (s *GetUnfilteredTableMetadataOutput) SetResourceArn(v string) *GetUnfilter return s } +// SetRowFilter sets the RowFilter field's value. +func (s *GetUnfilteredTableMetadataOutput) SetRowFilter(v string) *GetUnfilteredTableMetadataOutput { + s.RowFilter = &v + return s +} + // SetTable sets the Table field's value. func (s *GetUnfilteredTableMetadataOutput) SetTable(v *TableData) *GetUnfilteredTableMetadataOutput { s.Table = v diff --git a/service/internetmonitor/api.go b/service/internetmonitor/api.go index 33839a193c2..0448954f738 100644 --- a/service/internetmonitor/api.go +++ b/service/internetmonitor/api.go @@ -257,9 +257,10 @@ func (c *InternetMonitor) GetHealthEventRequest(input *GetHealthEventInput) (req // GetHealthEvent API operation for Amazon CloudWatch Internet Monitor. // -// Gets information the Amazon CloudWatch Internet Monitor has created and stored -// about a health event for a specified monitor. This information includes the -// impacted locations, and all the information related to the event, by location. +// Gets information that Amazon CloudWatch Internet Monitor has created and +// stored about a health event for a specified monitor. This information includes +// the impacted locations, and all the information related to the event, by +// location. // // The information returned includes the impact on performance, availability, // and round-trip time, information about the network providers (ASNs), the @@ -311,6 +312,101 @@ func (c *InternetMonitor) GetHealthEventWithContext(ctx aws.Context, input *GetH return out, req.Send() } +const opGetInternetEvent = "GetInternetEvent" + +// GetInternetEventRequest generates a "aws/request.Request" representing the +// client's request for the GetInternetEvent operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetInternetEvent for more information on using the GetInternetEvent +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetInternetEventRequest method. +// req, resp := client.GetInternetEventRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/GetInternetEvent +func (c *InternetMonitor) GetInternetEventRequest(input *GetInternetEventInput) (req *request.Request, output *GetInternetEventOutput) { + op := &request.Operation{ + Name: opGetInternetEvent, + HTTPMethod: "GET", + HTTPPath: "/v20210603/InternetEvents/{EventId}", + } + + if input == nil { + input = &GetInternetEventInput{} + } + + output = &GetInternetEventOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetInternetEvent API operation for Amazon CloudWatch Internet Monitor. +// +// Gets information that Amazon CloudWatch Internet Monitor has generated about +// an internet event. Internet Monitor displays information about recent global +// health events, called internet events, on a global outages map that is available +// to all Amazon Web Services customers. +// +// The information returned here includes the impacted location, when the event +// started and (if the event is over) ended, the type of event (PERFORMANCE +// or AVAILABILITY), and the status (ACTIVE or RESOLVED). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Internet Monitor's +// API operation GetInternetEvent for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error occurred. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// Invalid request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/GetInternetEvent +func (c *InternetMonitor) GetInternetEvent(input *GetInternetEventInput) (*GetInternetEventOutput, error) { + req, out := c.GetInternetEventRequest(input) + return out, req.Send() +} + +// GetInternetEventWithContext is the same as GetInternetEvent with the addition of +// the ability to pass a context and additional request options. +// +// See GetInternetEvent for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *InternetMonitor) GetInternetEventWithContext(ctx aws.Context, input *GetInternetEventInput, opts ...request.Option) (*GetInternetEventOutput, error) { + req, out := c.GetInternetEventRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMonitor = "GetMonitor" // GetMonitorRequest generates a "aws/request.Request" representing the @@ -710,7 +806,7 @@ func (c *InternetMonitor) ListHealthEventsRequest(input *ListHealthEventsInput) // ListHealthEvents API operation for Amazon CloudWatch Internet Monitor. // // Lists all health events for a monitor in Amazon CloudWatch Internet Monitor. -// Returns information for health events including the event start and end time +// Returns information for health events including the event start and end times, // and the status. // // Health events that have start times during the time frame that is requested @@ -810,6 +906,163 @@ func (c *InternetMonitor) ListHealthEventsPagesWithContext(ctx aws.Context, inpu return p.Err() } +const opListInternetEvents = "ListInternetEvents" + +// ListInternetEventsRequest generates a "aws/request.Request" representing the +// client's request for the ListInternetEvents operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListInternetEvents for more information on using the ListInternetEvents +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListInternetEventsRequest method. +// req, resp := client.ListInternetEventsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/ListInternetEvents +func (c *InternetMonitor) ListInternetEventsRequest(input *ListInternetEventsInput) (req *request.Request, output *ListInternetEventsOutput) { + op := &request.Operation{ + Name: opListInternetEvents, + HTTPMethod: "GET", + HTTPPath: "/v20210603/InternetEvents", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListInternetEventsInput{} + } + + output = &ListInternetEventsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListInternetEvents API operation for Amazon CloudWatch Internet Monitor. +// +// Lists internet events that cause performance or availability issues for client +// locations. Amazon CloudWatch Internet Monitor displays information about +// recent global health events, called internet events, on a global outages +// map that is available to all Amazon Web Services customers. +// +// You can constrain the list of internet events returned by providing a start +// time and end time to define a total time frame for events you want to list. +// Both start time and end time specify the time when an event started. End +// time is optional. If you don't include it, the default end time is the current +// time. +// +// You can also limit the events returned to a specific status (ACTIVE or RESOLVED) +// or type (PERFORMANCE or AVAILABILITY). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon CloudWatch Internet Monitor's +// API operation ListInternetEvents for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// An internal error occurred. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// Invalid request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/internetmonitor-2021-06-03/ListInternetEvents +func (c *InternetMonitor) ListInternetEvents(input *ListInternetEventsInput) (*ListInternetEventsOutput, error) { + req, out := c.ListInternetEventsRequest(input) + return out, req.Send() +} + +// ListInternetEventsWithContext is the same as ListInternetEvents with the addition of +// the ability to pass a context and additional request options. +// +// See ListInternetEvents for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *InternetMonitor) ListInternetEventsWithContext(ctx aws.Context, input *ListInternetEventsInput, opts ...request.Option) (*ListInternetEventsOutput, error) { + req, out := c.ListInternetEventsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListInternetEventsPages iterates over the pages of a ListInternetEvents operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListInternetEvents method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListInternetEvents operation. +// pageNum := 0 +// err := client.ListInternetEventsPages(params, +// func(page *internetmonitor.ListInternetEventsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *InternetMonitor) ListInternetEventsPages(input *ListInternetEventsInput, fn func(*ListInternetEventsOutput, bool) bool) error { + return c.ListInternetEventsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListInternetEventsPagesWithContext same as ListInternetEventsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *InternetMonitor) ListInternetEventsPagesWithContext(ctx aws.Context, input *ListInternetEventsInput, fn func(*ListInternetEventsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListInternetEventsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListInternetEventsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListInternetEventsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListMonitors = "ListMonitors" // ListMonitorsRequest generates a "aws/request.Request" representing the @@ -1753,6 +2006,122 @@ func (s *BadRequestException) RequestID() string { return s.RespMetadata.RequestID } +// The impacted location, such as a city, that Amazon Web Services clients access +// application resources from. +type ClientLocation struct { + _ struct{} `type:"structure"` + + // The name of the internet service provider (ISP) or network (ASN). + // + // ASName is a required field + ASName *string `type:"string" required:"true"` + + // The Autonomous System Number (ASN) of the network at an impacted location. + // + // ASNumber is a required field + ASNumber *int64 `type:"long" required:"true"` + + // The name of the city where the internet event is located. + // + // City is a required field + City *string `type:"string" required:"true"` + + // The name of the country where the internet event is located. + // + // Country is a required field + Country *string `type:"string" required:"true"` + + // The latitude where the internet event is located. + // + // Latitude is a required field + Latitude *float64 `type:"double" required:"true"` + + // The longitude where the internet event is located. + // + // Longitude is a required field + Longitude *float64 `type:"double" required:"true"` + + // The metro area where the health event is located. + // + // Metro indicates a metropolitan region in the United States, such as the region + // around New York City. In non-US countries, this is a second-level subdivision. + // For example, in the United Kingdom, it could be a county, a London borough, + // a unitary authority, council area, and so on. + Metro *string `type:"string"` + + // The subdivision location where the health event is located. The subdivision + // usually maps to states in most countries (including the United States). For + // United Kingdom, it maps to a country (England, Scotland, Wales) or province + // (Northern Ireland). + Subdivision *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClientLocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ClientLocation) GoString() string { + return s.String() +} + +// SetASName sets the ASName field's value. +func (s *ClientLocation) SetASName(v string) *ClientLocation { + s.ASName = &v + return s +} + +// SetASNumber sets the ASNumber field's value. +func (s *ClientLocation) SetASNumber(v int64) *ClientLocation { + s.ASNumber = &v + return s +} + +// SetCity sets the City field's value. +func (s *ClientLocation) SetCity(v string) *ClientLocation { + s.City = &v + return s +} + +// SetCountry sets the Country field's value. +func (s *ClientLocation) SetCountry(v string) *ClientLocation { + s.Country = &v + return s +} + +// SetLatitude sets the Latitude field's value. +func (s *ClientLocation) SetLatitude(v float64) *ClientLocation { + s.Latitude = &v + return s +} + +// SetLongitude sets the Longitude field's value. +func (s *ClientLocation) SetLongitude(v float64) *ClientLocation { + s.Longitude = &v + return s +} + +// SetMetro sets the Metro field's value. +func (s *ClientLocation) SetMetro(v string) *ClientLocation { + s.Metro = &v + return s +} + +// SetSubdivision sets the Subdivision field's value. +func (s *ClientLocation) SetSubdivision(v string) *ClientLocation { + s.Subdivision = &v + return s +} + // The requested resource is in use. type ConflictException struct { _ struct{} `type:"structure"` @@ -2172,7 +2541,11 @@ type GetHealthEventInput struct { // EventId is a required field EventId *string `location:"uri" locationName:"EventId" min:"1" type:"string" required:"true"` - // TBD + // The account ID for an account that you've set up cross-account sharing for + // in Amazon CloudWatch Internet Monitor. You configure cross-account sharing + // by using Amazon CloudWatch Observability Access Manager. For more information, + // see Internet Monitor cross-account observability (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cwim-cross-account.html) + // in the Amazon CloudWatch Internet Monitor User Guide. LinkedAccountId *string `location:"querystring" locationName:"LinkedAccountId" min:"12" type:"string"` // The name of the monitor. @@ -2272,32 +2645,204 @@ type GetHealthEventOutput struct { // ImpactType is a required field ImpactType *string `type:"string" required:"true" enum:"HealthEventImpactType"` - // The locations affected by a health event. + // The locations affected by a health event. + // + // ImpactedLocations is a required field + ImpactedLocations []*ImpactedLocation `type:"list" required:"true"` + + // The time when a health event was last updated or recalculated. + // + // LastUpdatedAt is a required field + LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The impact on total traffic that a health event has, in increased latency + // or reduced availability. This is the percentage of how much latency has increased + // or availability has decreased during the event, compared to what is typical + // for traffic from this client location to the Amazon Web Services location + // using this client network. + PercentOfTotalTrafficImpacted *float64 `type:"double"` + + // The time when a health event started. + // + // StartedAt is a required field + StartedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // The status of a health event. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"HealthEventStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetHealthEventOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetHealthEventOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetHealthEventOutput) SetCreatedAt(v time.Time) *GetHealthEventOutput { + s.CreatedAt = &v + return s +} + +// SetEndedAt sets the EndedAt field's value. +func (s *GetHealthEventOutput) SetEndedAt(v time.Time) *GetHealthEventOutput { + s.EndedAt = &v + return s +} + +// SetEventArn sets the EventArn field's value. +func (s *GetHealthEventOutput) SetEventArn(v string) *GetHealthEventOutput { + s.EventArn = &v + return s +} + +// SetEventId sets the EventId field's value. +func (s *GetHealthEventOutput) SetEventId(v string) *GetHealthEventOutput { + s.EventId = &v + return s +} + +// SetHealthScoreThreshold sets the HealthScoreThreshold field's value. +func (s *GetHealthEventOutput) SetHealthScoreThreshold(v float64) *GetHealthEventOutput { + s.HealthScoreThreshold = &v + return s +} + +// SetImpactType sets the ImpactType field's value. +func (s *GetHealthEventOutput) SetImpactType(v string) *GetHealthEventOutput { + s.ImpactType = &v + return s +} + +// SetImpactedLocations sets the ImpactedLocations field's value. +func (s *GetHealthEventOutput) SetImpactedLocations(v []*ImpactedLocation) *GetHealthEventOutput { + s.ImpactedLocations = v + return s +} + +// SetLastUpdatedAt sets the LastUpdatedAt field's value. +func (s *GetHealthEventOutput) SetLastUpdatedAt(v time.Time) *GetHealthEventOutput { + s.LastUpdatedAt = &v + return s +} + +// SetPercentOfTotalTrafficImpacted sets the PercentOfTotalTrafficImpacted field's value. +func (s *GetHealthEventOutput) SetPercentOfTotalTrafficImpacted(v float64) *GetHealthEventOutput { + s.PercentOfTotalTrafficImpacted = &v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *GetHealthEventOutput) SetStartedAt(v time.Time) *GetHealthEventOutput { + s.StartedAt = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetHealthEventOutput) SetStatus(v string) *GetHealthEventOutput { + s.Status = &v + return s +} + +type GetInternetEventInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The EventId of the internet event to return information for. + // + // EventId is a required field + EventId *string `location:"uri" locationName:"EventId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetInternetEventInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetInternetEventInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetInternetEventInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetInternetEventInput"} + if s.EventId == nil { + invalidParams.Add(request.NewErrParamRequired("EventId")) + } + if s.EventId != nil && len(*s.EventId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EventId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEventId sets the EventId field's value. +func (s *GetInternetEventInput) SetEventId(v string) *GetInternetEventInput { + s.EventId = &v + return s +} + +type GetInternetEventOutput struct { + _ struct{} `type:"structure"` + + // The impacted location, such as a city, where clients access Amazon Web Services + // application resources. + // + // ClientLocation is a required field + ClientLocation *ClientLocation `type:"structure" required:"true"` + + // The time when the internet event ended. If the event hasn't ended yet, this + // value is empty. + EndedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon Resource Name (ARN) of the internet event. + // + // EventArn is a required field + EventArn *string `min:"20" type:"string" required:"true"` + + // The internally-generated identifier of an internet event. + // + // EventId is a required field + EventId *string `min:"1" type:"string" required:"true"` + + // The status of the internet event. // - // ImpactedLocations is a required field - ImpactedLocations []*ImpactedLocation `type:"list" required:"true"` + // EventStatus is a required field + EventStatus *string `type:"string" required:"true" enum:"InternetEventStatus"` - // The time when a health event was last updated or recalculated. + // The type of network impairment. // - // LastUpdatedAt is a required field - LastUpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` - - // The impact on total traffic that a health event has, in increased latency - // or reduced availability. This is the percentage of how much latency has increased - // or availability has decreased during the event, compared to what is typical - // for traffic from this client location to the Amazon Web Services location - // using this client network. - PercentOfTotalTrafficImpacted *float64 `type:"double"` + // EventType is a required field + EventType *string `type:"string" required:"true" enum:"InternetEventType"` - // The time when a health event started. + // The time when the internet event started. // // StartedAt is a required field StartedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` - - // The status of a health event. - // - // Status is a required field - Status *string `type:"string" required:"true" enum:"HealthEventStatus"` } // String returns the string representation. @@ -2305,7 +2850,7 @@ type GetHealthEventOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetHealthEventOutput) String() string { +func (s GetInternetEventOutput) String() string { return awsutil.Prettify(s) } @@ -2314,80 +2859,60 @@ func (s GetHealthEventOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetHealthEventOutput) GoString() string { +func (s GetInternetEventOutput) GoString() string { return s.String() } -// SetCreatedAt sets the CreatedAt field's value. -func (s *GetHealthEventOutput) SetCreatedAt(v time.Time) *GetHealthEventOutput { - s.CreatedAt = &v +// SetClientLocation sets the ClientLocation field's value. +func (s *GetInternetEventOutput) SetClientLocation(v *ClientLocation) *GetInternetEventOutput { + s.ClientLocation = v return s } // SetEndedAt sets the EndedAt field's value. -func (s *GetHealthEventOutput) SetEndedAt(v time.Time) *GetHealthEventOutput { +func (s *GetInternetEventOutput) SetEndedAt(v time.Time) *GetInternetEventOutput { s.EndedAt = &v return s } // SetEventArn sets the EventArn field's value. -func (s *GetHealthEventOutput) SetEventArn(v string) *GetHealthEventOutput { +func (s *GetInternetEventOutput) SetEventArn(v string) *GetInternetEventOutput { s.EventArn = &v return s } // SetEventId sets the EventId field's value. -func (s *GetHealthEventOutput) SetEventId(v string) *GetHealthEventOutput { +func (s *GetInternetEventOutput) SetEventId(v string) *GetInternetEventOutput { s.EventId = &v return s } -// SetHealthScoreThreshold sets the HealthScoreThreshold field's value. -func (s *GetHealthEventOutput) SetHealthScoreThreshold(v float64) *GetHealthEventOutput { - s.HealthScoreThreshold = &v - return s -} - -// SetImpactType sets the ImpactType field's value. -func (s *GetHealthEventOutput) SetImpactType(v string) *GetHealthEventOutput { - s.ImpactType = &v - return s -} - -// SetImpactedLocations sets the ImpactedLocations field's value. -func (s *GetHealthEventOutput) SetImpactedLocations(v []*ImpactedLocation) *GetHealthEventOutput { - s.ImpactedLocations = v - return s -} - -// SetLastUpdatedAt sets the LastUpdatedAt field's value. -func (s *GetHealthEventOutput) SetLastUpdatedAt(v time.Time) *GetHealthEventOutput { - s.LastUpdatedAt = &v +// SetEventStatus sets the EventStatus field's value. +func (s *GetInternetEventOutput) SetEventStatus(v string) *GetInternetEventOutput { + s.EventStatus = &v return s } -// SetPercentOfTotalTrafficImpacted sets the PercentOfTotalTrafficImpacted field's value. -func (s *GetHealthEventOutput) SetPercentOfTotalTrafficImpacted(v float64) *GetHealthEventOutput { - s.PercentOfTotalTrafficImpacted = &v +// SetEventType sets the EventType field's value. +func (s *GetInternetEventOutput) SetEventType(v string) *GetInternetEventOutput { + s.EventType = &v return s } // SetStartedAt sets the StartedAt field's value. -func (s *GetHealthEventOutput) SetStartedAt(v time.Time) *GetHealthEventOutput { +func (s *GetInternetEventOutput) SetStartedAt(v time.Time) *GetInternetEventOutput { s.StartedAt = &v return s } -// SetStatus sets the Status field's value. -func (s *GetHealthEventOutput) SetStatus(v string) *GetHealthEventOutput { - s.Status = &v - return s -} - type GetMonitorInput struct { _ struct{} `type:"structure" nopayload:"true"` - // TBD + // The account ID for an account that you've set up cross-account sharing for + // in Amazon CloudWatch Internet Monitor. You configure cross-account sharing + // by using Amazon CloudWatch Observability Access Manager. For more information, + // see Internet Monitor cross-account observability (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cwim-cross-account.html) + // in the Amazon CloudWatch Internet Monitor User Guide. LinkedAccountId *string `location:"querystring" locationName:"LinkedAccountId" min:"12" type:"string"` // The name of the monitor. @@ -2922,7 +3447,7 @@ type HealthEvent struct { // StartedAt is a required field StartedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` - // Health event list member. + // The status of a health event. // // Status is a required field Status *string `type:"string" required:"true" enum:"HealthEventStatus"` @@ -3104,7 +3629,7 @@ func (s *HealthEventsConfig) SetPerformanceScoreThreshold(v float64) *HealthEven type ImpactedLocation struct { _ struct{} `type:"structure"` - // The name of the network at an impacted location. + // The name of the internet service provider (ISP) or network (ASN). // // ASName is a required field ASName *string `type:"string" required:"true"` @@ -3408,6 +3933,111 @@ func (s *InternalServerException) RequestID() string { return s.RespMetadata.RequestID } +// A summary of information about an internet event in Amazon CloudWatch Internet +// Monitor. Internet events are issues that cause performance degradation or +// availability problems for impacted Amazon Web Services client locations. +// Internet Monitor displays information about recent global health events, +// called internet events, on a global outages map that is available to all +// Amazon Web Services customers. +type InternetEventSummary struct { + _ struct{} `type:"structure"` + + // The impacted location, such as a city, that Amazon Web Services clients access + // application resources from. + // + // ClientLocation is a required field + ClientLocation *ClientLocation `type:"structure" required:"true"` + + // The time when an internet event ended. If the event hasn't ended yet, this + // value is empty. + EndedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The Amazon Resource Name (ARN) of the internet event. + // + // EventArn is a required field + EventArn *string `min:"20" type:"string" required:"true"` + + // The internally-generated identifier of an internet event. + // + // EventId is a required field + EventId *string `min:"1" type:"string" required:"true"` + + // The status of an internet event. + // + // EventStatus is a required field + EventStatus *string `type:"string" required:"true" enum:"InternetEventStatus"` + + // The type of network impairment. + // + // EventType is a required field + EventType *string `type:"string" required:"true" enum:"InternetEventType"` + + // The time when an internet event started. + // + // StartedAt is a required field + StartedAt *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternetEventSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternetEventSummary) GoString() string { + return s.String() +} + +// SetClientLocation sets the ClientLocation field's value. +func (s *InternetEventSummary) SetClientLocation(v *ClientLocation) *InternetEventSummary { + s.ClientLocation = v + return s +} + +// SetEndedAt sets the EndedAt field's value. +func (s *InternetEventSummary) SetEndedAt(v time.Time) *InternetEventSummary { + s.EndedAt = &v + return s +} + +// SetEventArn sets the EventArn field's value. +func (s *InternetEventSummary) SetEventArn(v string) *InternetEventSummary { + s.EventArn = &v + return s +} + +// SetEventId sets the EventId field's value. +func (s *InternetEventSummary) SetEventId(v string) *InternetEventSummary { + s.EventId = &v + return s +} + +// SetEventStatus sets the EventStatus field's value. +func (s *InternetEventSummary) SetEventStatus(v string) *InternetEventSummary { + s.EventStatus = &v + return s +} + +// SetEventType sets the EventType field's value. +func (s *InternetEventSummary) SetEventType(v string) *InternetEventSummary { + s.EventType = &v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *InternetEventSummary) SetStartedAt(v time.Time) *InternetEventSummary { + s.StartedAt = &v + return s +} + // Internet health includes measurements calculated by Amazon CloudWatch Internet // Monitor about the performance and availability for your application on the // internet. Amazon Web Services has substantial historical data about internet @@ -3600,7 +4230,11 @@ type ListHealthEventsInput struct { // The status of a health event. EventStatus *string `location:"querystring" locationName:"EventStatus" type:"string" enum:"HealthEventStatus"` - // TBD + // The account ID for an account that you've set up cross-account sharing for + // in Amazon CloudWatch Internet Monitor. You configure cross-account sharing + // by using Amazon CloudWatch Observability Access Manager. For more information, + // see Internet Monitor cross-account observability (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cwim-cross-account.html) + // in the Amazon CloudWatch Internet Monitor User Guide. LinkedAccountId *string `location:"querystring" locationName:"LinkedAccountId" min:"12" type:"string"` // The number of health event objects that you want to return with this call. @@ -3744,10 +4378,150 @@ func (s *ListHealthEventsOutput) SetNextToken(v string) *ListHealthEventsOutput return s } +type ListInternetEventsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The end time of the time window that you want to get a list of internet events + // for. + EndTime *time.Time `location:"querystring" locationName:"EndTime" type:"timestamp" timestampFormat:"iso8601"` + + // The status of an internet event. + EventStatus *string `location:"querystring" locationName:"EventStatus" type:"string"` + + // The type of network impairment. + EventType *string `location:"querystring" locationName:"EventType" type:"string"` + + // The number of query results that you want to return with this call. + MaxResults *int64 `location:"querystring" locationName:"InternetEventMaxResults" min:"1" type:"integer"` + + // The token for the next set of results. You receive this token from a previous + // call. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // The start time of the time window that you want to get a list of internet + // events for. + StartTime *time.Time `location:"querystring" locationName:"StartTime" type:"timestamp" timestampFormat:"iso8601"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInternetEventsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInternetEventsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListInternetEventsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListInternetEventsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndTime sets the EndTime field's value. +func (s *ListInternetEventsInput) SetEndTime(v time.Time) *ListInternetEventsInput { + s.EndTime = &v + return s +} + +// SetEventStatus sets the EventStatus field's value. +func (s *ListInternetEventsInput) SetEventStatus(v string) *ListInternetEventsInput { + s.EventStatus = &v + return s +} + +// SetEventType sets the EventType field's value. +func (s *ListInternetEventsInput) SetEventType(v string) *ListInternetEventsInput { + s.EventType = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListInternetEventsInput) SetMaxResults(v int64) *ListInternetEventsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListInternetEventsInput) SetNextToken(v string) *ListInternetEventsInput { + s.NextToken = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *ListInternetEventsInput) SetStartTime(v time.Time) *ListInternetEventsInput { + s.StartTime = &v + return s +} + +type ListInternetEventsOutput struct { + _ struct{} `type:"structure"` + + // A set of internet events returned for the list operation. + // + // InternetEvents is a required field + InternetEvents []*InternetEventSummary `type:"list" required:"true"` + + // The token for the next set of results. You receive this token from a previous + // call. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInternetEventsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListInternetEventsOutput) GoString() string { + return s.String() +} + +// SetInternetEvents sets the InternetEvents field's value. +func (s *ListInternetEventsOutput) SetInternetEvents(v []*InternetEventSummary) *ListInternetEventsOutput { + s.InternetEvents = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListInternetEventsOutput) SetNextToken(v string) *ListInternetEventsOutput { + s.NextToken = &v + return s +} + type ListMonitorsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // TBD + // A boolean option that you can set to TRUE to include monitors for linked + // accounts in a list of monitors, when you've set up cross-account sharing + // in Amazon CloudWatch Internet Monitor. You configure cross-account sharing + // by using Amazon CloudWatch Observability Access Manager. For more information, + // see Internet Monitor cross-account observability (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cwim-cross-account.html) + // in the Amazon CloudWatch Internet Monitor User Guide. IncludeLinkedAccounts *bool `location:"querystring" locationName:"IncludeLinkedAccounts" type:"boolean"` // The number of monitor objects that you want to return with this call. @@ -4080,12 +4854,12 @@ func (s *Monitor) SetStatus(v string) *Monitor { return s } -// An internet service provider (ISP) or network in Amazon CloudWatch Internet -// Monitor. +// An internet service provider (ISP) or network (ASN) in Amazon CloudWatch +// Internet Monitor. type Network struct { _ struct{} `type:"structure"` - // The internet provider name or network name. + // The name of the internet service provider (ISP) or network (ASN). // // ASName is a required field ASName *string `type:"string" required:"true"` @@ -4137,7 +4911,7 @@ type NetworkImpairment struct { // AsPath is a required field AsPath []*Network `type:"list" required:"true"` - // Type of network impairment. + // The type of network impairment. // // NetworkEventType is a required field NetworkEventType *string `type:"string" required:"true" enum:"TriangulationEventType"` @@ -4611,7 +5385,11 @@ type StartQueryInput struct { // in the Amazon CloudWatch Internet Monitor User Guide. FilterParameters []*FilterParameter `type:"list"` - // TBD + // The account ID for an account that you've set up cross-account sharing for + // in Amazon CloudWatch Internet Monitor. You configure cross-account sharing + // by using Amazon CloudWatch Observability Access Manager. For more information, + // see Internet Monitor cross-account observability (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cwim-cross-account.html) + // in the Amazon CloudWatch Internet Monitor User Guide. LinkedAccountId *string `min:"12" type:"string"` // The name of the monitor to query. @@ -5465,6 +6243,38 @@ func HealthEventStatus_Values() []string { } } +const ( + // InternetEventStatusActive is a InternetEventStatus enum value + InternetEventStatusActive = "ACTIVE" + + // InternetEventStatusResolved is a InternetEventStatus enum value + InternetEventStatusResolved = "RESOLVED" +) + +// InternetEventStatus_Values returns all elements of the InternetEventStatus enum +func InternetEventStatus_Values() []string { + return []string{ + InternetEventStatusActive, + InternetEventStatusResolved, + } +} + +const ( + // InternetEventTypeAvailability is a InternetEventType enum value + InternetEventTypeAvailability = "AVAILABILITY" + + // InternetEventTypePerformance is a InternetEventType enum value + InternetEventTypePerformance = "PERFORMANCE" +) + +// InternetEventType_Values returns all elements of the InternetEventType enum +func InternetEventType_Values() []string { + return []string{ + InternetEventTypeAvailability, + InternetEventTypePerformance, + } +} + const ( // LocalHealthEventsConfigStatusEnabled is a LocalHealthEventsConfigStatus enum value LocalHealthEventsConfigStatusEnabled = "ENABLED" diff --git a/service/internetmonitor/internetmonitoriface/interface.go b/service/internetmonitor/internetmonitoriface/interface.go index d92b8203181..cf9bfa4f910 100644 --- a/service/internetmonitor/internetmonitoriface/interface.go +++ b/service/internetmonitor/internetmonitoriface/interface.go @@ -72,6 +72,10 @@ type InternetMonitorAPI interface { GetHealthEventWithContext(aws.Context, *internetmonitor.GetHealthEventInput, ...request.Option) (*internetmonitor.GetHealthEventOutput, error) GetHealthEventRequest(*internetmonitor.GetHealthEventInput) (*request.Request, *internetmonitor.GetHealthEventOutput) + GetInternetEvent(*internetmonitor.GetInternetEventInput) (*internetmonitor.GetInternetEventOutput, error) + GetInternetEventWithContext(aws.Context, *internetmonitor.GetInternetEventInput, ...request.Option) (*internetmonitor.GetInternetEventOutput, error) + GetInternetEventRequest(*internetmonitor.GetInternetEventInput) (*request.Request, *internetmonitor.GetInternetEventOutput) + GetMonitor(*internetmonitor.GetMonitorInput) (*internetmonitor.GetMonitorOutput, error) GetMonitorWithContext(aws.Context, *internetmonitor.GetMonitorInput, ...request.Option) (*internetmonitor.GetMonitorOutput, error) GetMonitorRequest(*internetmonitor.GetMonitorInput) (*request.Request, *internetmonitor.GetMonitorOutput) @@ -94,6 +98,13 @@ type InternetMonitorAPI interface { ListHealthEventsPages(*internetmonitor.ListHealthEventsInput, func(*internetmonitor.ListHealthEventsOutput, bool) bool) error ListHealthEventsPagesWithContext(aws.Context, *internetmonitor.ListHealthEventsInput, func(*internetmonitor.ListHealthEventsOutput, bool) bool, ...request.Option) error + ListInternetEvents(*internetmonitor.ListInternetEventsInput) (*internetmonitor.ListInternetEventsOutput, error) + ListInternetEventsWithContext(aws.Context, *internetmonitor.ListInternetEventsInput, ...request.Option) (*internetmonitor.ListInternetEventsOutput, error) + ListInternetEventsRequest(*internetmonitor.ListInternetEventsInput) (*request.Request, *internetmonitor.ListInternetEventsOutput) + + ListInternetEventsPages(*internetmonitor.ListInternetEventsInput, func(*internetmonitor.ListInternetEventsOutput, bool) bool) error + ListInternetEventsPagesWithContext(aws.Context, *internetmonitor.ListInternetEventsInput, func(*internetmonitor.ListInternetEventsOutput, bool) bool, ...request.Option) error + ListMonitors(*internetmonitor.ListMonitorsInput) (*internetmonitor.ListMonitorsOutput, error) ListMonitorsWithContext(aws.Context, *internetmonitor.ListMonitorsInput, ...request.Option) (*internetmonitor.ListMonitorsOutput, error) ListMonitorsRequest(*internetmonitor.ListMonitorsInput) (*request.Request, *internetmonitor.ListMonitorsOutput) diff --git a/service/personalize/api.go b/service/personalize/api.go index 8f6b1477b4e..8d7e7807d64 100644 --- a/service/personalize/api.go +++ b/service/personalize/api.go @@ -267,6 +267,10 @@ func (c *Personalize) CreateCampaignRequest(input *CreateCampaignInput) (req *re // CreateCampaign API operation for Amazon Personalize. // +// You incur campaign costs while it is active. To avoid unnecessary costs, +// make sure to delete the campaign when you are finished. For information about +// campaign costs, see Amazon Personalize pricing (https://aws.amazon.com/personalize/pricing/). +// // Creates a campaign that deploys a solution version. When a client calls the // GetRecommendations (https://docs.aws.amazon.com/personalize/latest/dg/API_RS_GetRecommendations.html) // and GetPersonalizedRanking (https://docs.aws.amazon.com/personalize/latest/dg/API_RS_GetPersonalizedRanking.html) @@ -1487,25 +1491,42 @@ func (c *Personalize) CreateSolutionRequest(input *CreateSolutionInput) (req *re // CreateSolution API operation for Amazon Personalize. // -// Creates the configuration for training a model. A trained model is known -// as a solution version. After the configuration is created, you train the -// model (create a solution version) by calling the CreateSolutionVersion (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateSolutionVersion.html) -// operation. Every time you call CreateSolutionVersion, a new version of the -// solution is created. +// After you create a solution, you can’t change its configuration. By default, +// all new solutions use automatic training. With automatic training, you incur +// training costs while your solution is active. You can't stop automatic training +// for a solution. To avoid unnecessary costs, make sure to delete the solution +// when you are finished. For information about training costs, see Amazon Personalize +// pricing (https://aws.amazon.com/personalize/pricing/). +// +// Creates the configuration for training a model (creating a solution version). +// This configuration includes the recipe to use for model training and optional +// training configuration, such as columns to use in training and feature transformation +// parameters. For more information about configuring a solution, see Creating +// and configuring a solution (https://docs.aws.amazon.com/personalize/latest/dg/customizing-solution-config.html). +// +// By default, new solutions use automatic training to create solution versions +// every 7 days. You can change the training frequency. Automatic solution version +// creation starts one hour after the solution is ACTIVE. If you manually create +// a solution version within the hour, the solution skips the first automatic +// training. For more information, see Configuring automatic training (https://docs.aws.amazon.com/personalize/latest/dg/solution-config-auto-training.html). +// +// To turn off automatic training, set performAutoTraining to false. If you +// turn off automatic training, you must manually create a solution version +// by calling the CreateSolutionVersion (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateSolutionVersion.html) +// operation. +// +// After training starts, you can get the solution version's Amazon Resource +// Name (ARN) with the ListSolutionVersions (https://docs.aws.amazon.com/personalize/latest/dg/API_ListSolutionVersions.html) +// API operation. To get its status, use the DescribeSolutionVersion (https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeSolutionVersion.html). // -// After creating a solution version, you check its accuracy by calling GetSolutionMetrics +// After training completes you can evaluate model accuracy by calling GetSolutionMetrics // (https://docs.aws.amazon.com/personalize/latest/dg/API_GetSolutionMetrics.html). -// When you are satisfied with the version, you deploy it using CreateCampaign +// When you are satisfied with the solution version, you deploy it using CreateCampaign // (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateCampaign.html). // The campaign provides recommendations to a client through the GetRecommendations // (https://docs.aws.amazon.com/personalize/latest/dg/API_RS_GetRecommendations.html) // API. // -// To train a model, Amazon Personalize requires training data and a recipe. -// The training data comes from the dataset group that you provide in the request. -// A recipe specifies the training algorithm and a feature transformation. You -// can specify one of the predefined recipes provided by Amazon Personalize. -// // Amazon Personalize doesn't support configuring the hpoObjective for solution // hyperparameter optimization at this time. // @@ -1518,7 +1539,7 @@ func (c *Personalize) CreateSolutionRequest(input *CreateSolutionInput) (req *re // - DELETE PENDING > DELETE IN_PROGRESS // // To get the status of the solution, call DescribeSolution (https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeSolution.html). -// Wait until the status shows as ACTIVE before calling CreateSolutionVersion. +// If you use manual training, the status must be ACTIVE before you call CreateSolutionVersion. // // Related APIs // @@ -6208,10 +6229,10 @@ func (c *Personalize) ListSolutionsRequest(input *ListSolutionsInput) (req *requ // ListSolutions API operation for Amazon Personalize. // -// Returns a list of solutions that use the given dataset group. When a dataset -// group is not specified, all the solutions associated with the account are -// listed. The response provides the properties for each solution, including -// the Amazon Resource Name (ARN). For more information on solutions, see CreateSolution +// Returns a list of solutions in a given dataset group. When a dataset group +// is not specified, all the solutions associated with the account are listed. +// The response provides the properties for each solution, including the Amazon +// Resource Name (ARN). For more information on solutions, see CreateSolution // (https://docs.aws.amazon.com/personalize/latest/dg/API_CreateSolution.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -6794,8 +6815,8 @@ func (c *Personalize) UntagResourceRequest(input *UntagResourceInput) (req *requ // UntagResource API operation for Amazon Personalize. // -// Remove tags (https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html) -// that are attached to a resource. +// Removes the specified tags that are attached to a resource. For more information, +// see Removing tags from Amazon Personalize resources (https://docs.aws.amazon.com/personalize/latest/dg/tags-remove.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6886,7 +6907,16 @@ func (c *Personalize) UpdateCampaignRequest(input *UpdateCampaignInput) (req *re // // Updates a campaign to deploy a retrained solution version with an existing // campaign, change your campaign's minProvisionedTPS, or modify your campaign's -// configuration, such as the exploration configuration. +// configuration. For example, you can set enableMetadataWithRecommendations +// to true for an existing campaign. +// +// To update a campaign to start automatically using the latest solution version, +// specify the following: +// +// - For the SolutionVersionArn parameter, specify the Amazon Resource Name +// (ARN) of your solution in SolutionArn/$LATEST format. +// +// - In the campaignConfig, set syncWithLatestSolutionVersion to true. // // To update a campaign, the campaign status must be ACTIVE or CREATE FAILED. // Check the campaign status using the DescribeCampaign (https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeCampaign.html) @@ -7443,6 +7473,58 @@ func (s *AutoMLResult) SetBestRecipeArn(v string) *AutoMLResult { return s } +// The automatic training configuration to use when performAutoTraining is true. +type AutoTrainingConfig struct { + _ struct{} `type:"structure"` + + // Specifies how often to automatically train new solution versions. Specify + // a rate expression in rate(value unit) format. For value, specify a number + // between 1 and 30. For unit, specify day or days. For example, to automatically + // create a new solution version every 5 days, specify rate(5 days). The default + // is every 7 days. + // + // For more information about auto training, see Creating and configuring a + // solution (https://docs.aws.amazon.com/personalize/latest/dg/customizing-solution-config.html). + SchedulingExpression *string `locationName:"schedulingExpression" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AutoTrainingConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AutoTrainingConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AutoTrainingConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AutoTrainingConfig"} + if s.SchedulingExpression != nil && len(*s.SchedulingExpression) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SchedulingExpression", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSchedulingExpression sets the SchedulingExpression field's value. +func (s *AutoTrainingConfig) SetSchedulingExpression(v string) *AutoTrainingConfig { + s.SchedulingExpression = &v + return s +} + // Contains information on a batch inference job. type BatchInferenceJob struct { _ struct{} `type:"structure"` @@ -8242,7 +8324,7 @@ type Campaign struct { // The name of the campaign. Name *string `locationName:"name" min:"1" type:"string"` - // The Amazon Resource Name (ARN) of a specific version of the solution. + // The Amazon Resource Name (ARN) of the solution version the campaign uses. SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"` // The status of the campaign. @@ -8354,6 +8436,16 @@ type CampaignConfig struct { // (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-new-item-USER_PERSONALIZATION.html) // recipe. ItemExplorationConfig map[string]*string `locationName:"itemExplorationConfig" type:"map"` + + // Whether the campaign automatically updates to use the latest solution version + // (trained model) of a solution. If you specify True, you must specify the + // ARN of your solution for the SolutionVersionArn parameter. It must be in + // SolutionArn/$LATEST format. The default is False and you must manually update + // the campaign to deploy the latest solution version. + // + // For more information about automatic campaign updates, see Enabling automatic + // campaign updates (https://docs.aws.amazon.com/personalize/latest/dg/campaigns.html#create-campaign-automatic-latest-sv-update). + SyncWithLatestSolutionVersion *bool `locationName:"syncWithLatestSolutionVersion" type:"boolean"` } // String returns the string representation. @@ -8386,6 +8478,12 @@ func (s *CampaignConfig) SetItemExplorationConfig(v map[string]*string) *Campaig return s } +// SetSyncWithLatestSolutionVersion sets the SyncWithLatestSolutionVersion field's value. +func (s *CampaignConfig) SetSyncWithLatestSolutionVersion(v bool) *CampaignConfig { + s.SyncWithLatestSolutionVersion = &v + return s +} + // Provides a summary of the properties of a campaign. For a complete listing, // call the DescribeCampaign (https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeCampaign.html) // API. @@ -9107,7 +9205,16 @@ type CreateCampaignInput struct { // Name is a required field Name *string `locationName:"name" min:"1" type:"string" required:"true"` - // The Amazon Resource Name (ARN) of the solution version to deploy. + // The Amazon Resource Name (ARN) of the trained model to deploy with the campaign. + // To specify the latest solution version of your solution, specify the ARN + // of your solution in SolutionArn/$LATEST format. You must use this format + // if you set syncWithLatestSolutionVersion to True in the CampaignConfig (https://docs.aws.amazon.com/personalize/latest/dg/API_CampaignConfig.html). + // + // To deploy a model that isn't the latest solution version of your solution, + // specify the ARN of the solution version. + // + // For more information about automatic campaign updates, see Enabling automatic + // campaign updates (https://docs.aws.amazon.com/personalize/latest/dg/campaigns.html#create-campaign-automatic-latest-sv-update). // // SolutionVersionArn is a required field SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string" required:"true"` @@ -10549,6 +10656,22 @@ type CreateSolutionInput struct { // the training process as compared to selecting a specific recipe. PerformAutoML *bool `locationName:"performAutoML" type:"boolean"` + // Whether the solution uses automatic training to create new solution versions + // (trained models). The default is True and the solution automatically creates + // new solution versions every 7 days. You can change the training frequency + // by specifying a schedulingExpression in the AutoTrainingConfig as part of + // solution configuration. For more information about automatic training, see + // Configuring automatic training (https://docs.aws.amazon.com/personalize/latest/dg/solution-config-auto-training.html). + // + // Automatic solution version creation starts one hour after the solution is + // ACTIVE. If you manually create a solution version within the hour, the solution + // skips the first automatic training. + // + // After training starts, you can get the solution version's Amazon Resource + // Name (ARN) with the ListSolutionVersions (https://docs.aws.amazon.com/personalize/latest/dg/API_ListSolutionVersions.html) + // API operation. To get its status, use the DescribeSolutionVersion (https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeSolutionVersion.html). + PerformAutoTraining *bool `locationName:"performAutoTraining" type:"boolean"` + // Whether to perform hyperparameter optimization (HPO) on the specified or // selected recipe. The default is false. // @@ -10649,6 +10772,12 @@ func (s *CreateSolutionInput) SetPerformAutoML(v bool) *CreateSolutionInput { return s } +// SetPerformAutoTraining sets the PerformAutoTraining field's value. +func (s *CreateSolutionInput) SetPerformAutoTraining(v bool) *CreateSolutionInput { + s.PerformAutoTraining = &v + return s +} + // SetPerformHPO sets the PerformHPO field's value. func (s *CreateSolutionInput) SetPerformHPO(v bool) *CreateSolutionInput { s.PerformHPO = &v @@ -16935,7 +17064,7 @@ func (s *ListSolutionsOutput) SetSolutions(v []*SolutionSummary) *ListSolutionsO type ListTagsForResourceInput struct { _ struct{} `type:"structure"` - // The resource's Amazon Resource Name. + // The resource's Amazon Resource Name (ARN). // // ResourceArn is a required field ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` @@ -18237,8 +18366,20 @@ func (s *S3DataConfig) SetPath(v string) *S3DataConfig { return s } -// An object that provides information about a solution. A solution is a trained -// model that can be deployed as a campaign. +// After you create a solution, you can’t change its configuration. By default, +// all new solutions use automatic training. With automatic training, you incur +// training costs while your solution is active. You can't stop automatic training +// for a solution. To avoid unnecessary costs, make sure to delete the solution +// when you are finished. For information about training costs, see Amazon Personalize +// pricing (https://aws.amazon.com/personalize/pricing/). +// +// An object that provides information about a solution. A solution includes +// the custom recipe, customized parameters, and trained models (Solution Versions) +// that Amazon Personalize uses to generate recommendations. +// +// After you create a solution, you can’t change its configuration. If you +// need to make changes, you can clone the solution (https://docs.aws.amazon.com/personalize/latest/dg/cloning-solution.html) +// with the Amazon Personalize console or create a new one. type Solution struct { _ struct{} `type:"structure"` @@ -18278,6 +18419,14 @@ type Solution struct { // for training. PerformAutoML *bool `locationName:"performAutoML" type:"boolean"` + // Specifies whether the solution automatically creates solution versions. The + // default is True and the solution automatically creates new solution versions + // every 7 days. + // + // For more information about auto training, see Creating and configuring a + // solution (https://docs.aws.amazon.com/personalize/latest/dg/customizing-solution-config.html). + PerformAutoTraining *bool `locationName:"performAutoTraining" type:"boolean"` + // Whether to perform hyperparameter optimization (HPO) on the chosen recipe. // The default is false. PerformHPO *bool `locationName:"performHPO" type:"boolean"` @@ -18368,6 +18517,12 @@ func (s *Solution) SetPerformAutoML(v bool) *Solution { return s } +// SetPerformAutoTraining sets the PerformAutoTraining field's value. +func (s *Solution) SetPerformAutoTraining(v bool) *Solution { + s.PerformAutoTraining = &v + return s +} + // SetPerformHPO sets the PerformHPO field's value. func (s *Solution) SetPerformHPO(v bool) *Solution { s.PerformHPO = &v @@ -18409,6 +18564,9 @@ type SolutionConfig struct { // object containing a list of recipes to search when AutoML is performed. AutoMLConfig *AutoMLConfig `locationName:"autoMLConfig" type:"structure"` + // Specifies the automatic training configuration to use. + AutoTrainingConfig *AutoTrainingConfig `locationName:"autoTrainingConfig" type:"structure"` + // Only events with a value greater than or equal to this threshold are used // for training a model. EventValueThreshold *string `locationName:"eventValueThreshold" type:"string"` @@ -18450,6 +18608,11 @@ func (s SolutionConfig) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *SolutionConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SolutionConfig"} + if s.AutoTrainingConfig != nil { + if err := s.AutoTrainingConfig.Validate(); err != nil { + invalidParams.AddNested("AutoTrainingConfig", err.(request.ErrInvalidParams)) + } + } if s.HpoConfig != nil { if err := s.HpoConfig.Validate(); err != nil { invalidParams.AddNested("HpoConfig", err.(request.ErrInvalidParams)) @@ -18479,6 +18642,12 @@ func (s *SolutionConfig) SetAutoMLConfig(v *AutoMLConfig) *SolutionConfig { return s } +// SetAutoTrainingConfig sets the AutoTrainingConfig field's value. +func (s *SolutionConfig) SetAutoTrainingConfig(v *AutoTrainingConfig) *SolutionConfig { + s.AutoTrainingConfig = v + return s +} + // SetEventValueThreshold sets the EventValueThreshold field's value. func (s *SolutionConfig) SetEventValueThreshold(v string) *SolutionConfig { s.EventValueThreshold = &v @@ -18664,19 +18833,14 @@ type SolutionVersion struct { TrainingHours *float64 `locationName:"trainingHours" type:"double"` // The scope of training to be performed when creating the solution version. - // The FULL option trains the solution version based on the entirety of the - // input solution's training data, while the UPDATE option processes only the - // data that has changed in comparison to the input solution. Choose UPDATE - // when you want to incrementally update your solution version instead of creating - // an entirely new one. - // - // The UPDATE option can only be used when you already have an active solution - // version created from the input solution using the FULL option and the input - // solution was trained with the User-Personalization (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-new-item-USER_PERSONALIZATION.html) - // recipe or the HRNN-Coldstart (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-hrnn-coldstart.html) - // recipe. + // A FULL training considers all of the data in your dataset group. An UPDATE + // processes only the data that has changed since the latest training. Only + // solution versions created with the User-Personalization recipe can use UPDATE. TrainingMode *string `locationName:"trainingMode" type:"string" enum:"TrainingMode"` + // Whether the solution version was created automatically or manually. + TrainingType *string `locationName:"trainingType" type:"string" enum:"TrainingType"` + // If hyperparameter optimization was performed, contains the hyperparameter // values of the best performing model. TunedHPOParams *TunedHPOParams `locationName:"tunedHPOParams" type:"structure"` @@ -18790,6 +18954,12 @@ func (s *SolutionVersion) SetTrainingMode(v string) *SolutionVersion { return s } +// SetTrainingType sets the TrainingType field's value. +func (s *SolutionVersion) SetTrainingType(v string) *SolutionVersion { + s.TrainingType = &v + return s +} + // SetTunedHPOParams sets the TunedHPOParams field's value. func (s *SolutionVersion) SetTunedHPOParams(v *TunedHPOParams) *SolutionVersion { s.TunedHPOParams = v @@ -18820,6 +18990,15 @@ type SolutionVersionSummary struct { // // * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED Status *string `locationName:"status" type:"string"` + + // The scope of training to be performed when creating the solution version. + // A FULL training considers all of the data in your dataset group. An UPDATE + // processes only the data that has changed since the latest training. Only + // solution versions created with the User-Personalization recipe can use UPDATE. + TrainingMode *string `locationName:"trainingMode" type:"string" enum:"TrainingMode"` + + // Whether the solution version was created automatically or manually. + TrainingType *string `locationName:"trainingType" type:"string" enum:"TrainingType"` } // String returns the string representation. @@ -18870,6 +19049,18 @@ func (s *SolutionVersionSummary) SetStatus(v string) *SolutionVersionSummary { return s } +// SetTrainingMode sets the TrainingMode field's value. +func (s *SolutionVersionSummary) SetTrainingMode(v string) *SolutionVersionSummary { + s.TrainingMode = &v + return s +} + +// SetTrainingType sets the TrainingType field's value. +func (s *SolutionVersionSummary) SetTrainingType(v string) *SolutionVersionSummary { + s.TrainingType = &v + return s +} + type StartRecommenderInput struct { _ struct{} `type:"structure"` @@ -19095,7 +19286,7 @@ func (s StopSolutionVersionCreationOutput) GoString() string { // The optional metadata that you apply to resources to help you categorize // and organize them. Each tag consists of a key and an optional value, both // of which you define. For more information see Tagging Amazon Personalize -// recources (https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html). +// resources (https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html). type Tag struct { _ struct{} `type:"structure"` @@ -19170,7 +19361,7 @@ type TagResourceInput struct { ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` // Tags to apply to the resource. For more information see Tagging Amazon Personalize - // recources (https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html). + // resources (https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html). // // Tags is a required field Tags []*Tag `locationName:"tags" type:"list" required:"true"` @@ -19442,10 +19633,11 @@ type TrainingDataConfig struct { // Specifies the columns to exclude from training. Each key is a dataset type, // and each value is a list of columns. Exclude columns to control what data - // Amazon Personalize uses to generate recommendations. For example, you might - // have a column that you want to use only to filter recommendations. You can - // exclude this column from training and Amazon Personalize considers it only - // when filtering. + // Amazon Personalize uses to generate recommendations. + // + // For example, you might have a column that you want to use only to filter + // recommendations. You can exclude this column from training and Amazon Personalize + // considers it only when filtering. ExcludedDatasetColumns map[string][]*string `locationName:"excludedDatasetColumns" type:"map"` } @@ -19514,7 +19706,7 @@ type UntagResourceInput struct { // ResourceArn is a required field ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` - // Keys to remove from the resource's tags. + // The keys of the tags to be removed. // // TagKeys is a required field TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"` @@ -19606,7 +19798,16 @@ type UpdateCampaignInput struct { // the minProvisionedTPS as necessary. MinProvisionedTPS *int64 `locationName:"minProvisionedTPS" min:"1" type:"integer"` - // The ARN of a new solution version to deploy. + // The Amazon Resource Name (ARN) of a new model to deploy. To specify the latest + // solution version of your solution, specify the ARN of your solution in SolutionArn/$LATEST + // format. You must use this format if you set syncWithLatestSolutionVersion + // to True in the CampaignConfig (https://docs.aws.amazon.com/personalize/latest/dg/API_CampaignConfig.html). + // + // To deploy a model that isn't the latest solution version of your solution, + // specify the ARN of the solution version. + // + // For more information about automatic campaign updates, see Enabling automatic + // campaign updates (https://docs.aws.amazon.com/personalize/latest/dg/campaigns.html#create-campaign-automatic-latest-sv-update). SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"` } @@ -20110,6 +20311,9 @@ const ( // TrainingModeUpdate is a TrainingMode enum value TrainingModeUpdate = "UPDATE" + + // TrainingModeAutotrain is a TrainingMode enum value + TrainingModeAutotrain = "AUTOTRAIN" ) // TrainingMode_Values returns all elements of the TrainingMode enum @@ -20117,5 +20321,22 @@ func TrainingMode_Values() []string { return []string{ TrainingModeFull, TrainingModeUpdate, + TrainingModeAutotrain, + } +} + +const ( + // TrainingTypeAutomatic is a TrainingType enum value + TrainingTypeAutomatic = "AUTOMATIC" + + // TrainingTypeManual is a TrainingType enum value + TrainingTypeManual = "MANUAL" +) + +// TrainingType_Values returns all elements of the TrainingType enum +func TrainingType_Values() []string { + return []string{ + TrainingTypeAutomatic, + TrainingTypeManual, } }