diff --git a/clients/client-pi/src/commands/DescribeDimensionKeysCommand.ts b/clients/client-pi/src/commands/DescribeDimensionKeysCommand.ts index b6a2d37c7083..0142b0e5c63d 100644 --- a/clients/client-pi/src/commands/DescribeDimensionKeysCommand.ts +++ b/clients/client-pi/src/commands/DescribeDimensionKeysCommand.ts @@ -48,7 +48,7 @@ export interface DescribeDimensionKeysCommandOutput extends DescribeDimensionKey * PeriodInSeconds: Number("int"), * GroupBy: { // DimensionGroup * Group: "STRING_VALUE", // required - * Dimensions: [ // RequestStringList + * Dimensions: [ // SanitizedStringList * "STRING_VALUE", * ], * Limit: Number("int"), diff --git a/clients/client-pi/src/commands/GetResourceMetricsCommand.ts b/clients/client-pi/src/commands/GetResourceMetricsCommand.ts index 3cb928b83c43..fd15b2003753 100644 --- a/clients/client-pi/src/commands/GetResourceMetricsCommand.ts +++ b/clients/client-pi/src/commands/GetResourceMetricsCommand.ts @@ -48,7 +48,7 @@ export interface GetResourceMetricsCommandOutput extends GetResourceMetricsRespo * Metric: "STRING_VALUE", // required * GroupBy: { // DimensionGroup * Group: "STRING_VALUE", // required - * Dimensions: [ // RequestStringList + * Dimensions: [ // SanitizedStringList * "STRING_VALUE", * ], * Limit: Number("int"), diff --git a/clients/client-pi/src/commands/ListAvailableResourceDimensionsCommand.ts b/clients/client-pi/src/commands/ListAvailableResourceDimensionsCommand.ts index b9ba6cefb71f..135b4da515a8 100644 --- a/clients/client-pi/src/commands/ListAvailableResourceDimensionsCommand.ts +++ b/clients/client-pi/src/commands/ListAvailableResourceDimensionsCommand.ts @@ -47,6 +47,9 @@ export interface ListAvailableResourceDimensionsCommandOutput * ], * MaxResults: Number("int"), * NextToken: "STRING_VALUE", + * AuthorizedActions: [ // AuthorizedActionsList + * "DescribeDimensionKeys" || "GetDimensionKeyDetails" || "GetResourceMetrics", + * ], * }; * const command = new ListAvailableResourceDimensionsCommand(input); * const response = await client.send(command); diff --git a/clients/client-pi/src/models/models_0.ts b/clients/client-pi/src/models/models_0.ts index 0f6091c7ee3c..8154c3060d3a 100644 --- a/clients/client-pi/src/models/models_0.ts +++ b/clients/client-pi/src/models/models_0.ts @@ -208,6 +208,21 @@ export interface AnalysisReportSummary { Tags?: Tag[]; } +/** + * @public + * @enum + */ +export const FineGrainedAction = { + DESCRIBE_DIMENSION_KEYS: "DescribeDimensionKeys", + GET_DIMENSION_KEY_DETAILS: "GetDimensionKeyDetails", + GET_RESOURCE_METRICS: "GetResourceMetrics", +} as const; + +/** + * @public + */ +export type FineGrainedAction = (typeof FineGrainedAction)[keyof typeof FineGrainedAction]; + /** * @public */ @@ -1578,6 +1593,15 @@ export interface ListAvailableResourceDimensionsRequest { * @public */ NextToken?: string; + + /** + *
The actions to discover the dimensions you are authorized to access. If you specify multiple actions, then the response will + * contain the dimensions common for all the actions.
+ *When you don't specify this request parameter or provide an empty list, the response contains all the + * available dimensions for the target database engine whether or not you are authorized to access them.
+ * @public + */ + AuthorizedActions?: FineGrainedAction[]; } /** diff --git a/clients/client-pi/src/protocols/Aws_json1_1.ts b/clients/client-pi/src/protocols/Aws_json1_1.ts index de8b30bef6df..f512f01a7c47 100644 --- a/clients/client-pi/src/protocols/Aws_json1_1.ts +++ b/clients/client-pi/src/protocols/Aws_json1_1.ts @@ -74,6 +74,7 @@ import { DescribeDimensionKeysResponse, DimensionGroup, DimensionKeyDescription, + FineGrainedAction, GetDimensionKeyDetailsRequest, GetPerformanceAnalysisReportRequest, GetPerformanceAnalysisReportResponse, @@ -606,6 +607,8 @@ const de_NotAuthorizedExceptionRes = async ( // se_AdditionalMetricsList omitted. +// se_AuthorizedActionsList omitted. + /** * serializeAws_json1_1CreatePerformanceAnalysisReportRequest */ @@ -689,7 +692,7 @@ const se_GetResourceMetricsRequest = (input: GetResourceMetricsRequest, context: // se_RequestedDimensionList omitted. -// se_RequestStringList omitted. +// se_SanitizedStringList omitted. // se_Tag omitted. diff --git a/codegen/sdk-codegen/aws-models/pi.json b/codegen/sdk-codegen/aws-models/pi.json index 26f4fa20a566..de3a37059fae 100644 --- a/codegen/sdk-codegen/aws-models/pi.json +++ b/codegen/sdk-codegen/aws-models/pi.json @@ -43,7 +43,7 @@ "com.amazonaws.pi#AdditionalMetricsList": { "type": "list", "member": { - "target": "com.amazonaws.pi#RequestString" + "target": "com.amazonaws.pi#SanitizedString" }, "traits": { "smithy.api#length": { @@ -211,6 +211,18 @@ } } }, + "com.amazonaws.pi#AuthorizedActionsList": { + "type": "list", + "member": { + "target": "com.amazonaws.pi#FineGrainedAction" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 3 + } + } + }, "com.amazonaws.pi#Boolean": { "type": "boolean" }, @@ -644,14 +656,14 @@ "type": "structure", "members": { "Group": { - "target": "com.amazonaws.pi#RequestString", + "target": "com.amazonaws.pi#SanitizedString", "traits": { "smithy.api#documentation": "The name of the dimension group. Valid values are as follows:
\n\n db
- The name of the database to which the client is connected. The following values are permitted:
Aurora PostgreSQL
\nAmazon RDS PostgreSQL
\nAurora MySQL
\nAmazon RDS MySQL
\nAmazon RDS MariaDB
\nAmazon DocumentDB
\n\n db.application
- The name of the application that is connected to the database. The following values are\n permitted:
Aurora PostgreSQL
\nAmazon RDS PostgreSQL
\nAmazon DocumentDB
\n\n db.host
- The host name of the connected client (all engines).
\n db.query
- The query that is currently running (only Amazon DocumentDB).
\n db.query_tokenized
- The digest query (only Amazon DocumentDB).
\n db.session_type
- The type of the current session (only Aurora PostgreSQL and RDS PostgreSQL).
\n db.sql
- The text of the SQL statement that is currently running (all engines except Amazon DocumentDB).
\n db.sql_tokenized
- The SQL digest (all engines except Amazon DocumentDB).
\n db.user
- The user logged in to the database (all engines except Amazon DocumentDB).
\n db.wait_event
- The event for which the database backend is waiting (all engines except Amazon DocumentDB).
\n db.wait_event_type
- The type of event for which the database backend is waiting (all engines except Amazon DocumentDB).
\n db.wait_state
- The event for which the database backend is waiting (only Amazon DocumentDB).
A list of specific dimensions from a dimension group. If this parameter is not present,\n then it signifies that all of the dimensions in the group were requested, or are present in\n the response.
\nValid values for elements in the Dimensions
array are:
\n db.application.name
- The name of the application that is connected to the database. Valid values are as follows:
Aurora PostgreSQL
\nAmazon RDS PostgreSQL
\nAmazon DocumentDB
\n\n db.host.id
- The host ID of the connected client (all engines).
\n db.host.name
- The host name of the connected client (all engines).
\n db.name
- The name of the database to which the client is connected. Valid values are as follows:
Aurora PostgreSQL
\nAmazon RDS PostgreSQL
\nAurora MySQL
\nAmazon RDS MySQL
\nAmazon RDS MariaDB
\nAmazon DocumentDB
\n\n db.query.id
- The query ID generated by Performance Insights (only Amazon DocumentDB).
\n db.query.db_id
- The query ID generated by the database (only Amazon DocumentDB).
\n db.query.statement
- The text of the query that is being run (only Amazon DocumentDB).
\n db.query.tokenized_id
\n
\n db.query.tokenized.id
- The query digest ID generated by Performance Insights (only Amazon DocumentDB).
\n db.query.tokenized.db_id
- The query digest ID generated by Performance Insights (only Amazon DocumentDB).
\n db.query.tokenized.statement
- The text of the query digest (only Amazon DocumentDB).
\n db.session_type.name
- The type of the current session (only Amazon DocumentDB).
\n db.sql.id
- The hash of the full, non-tokenized SQL statement generated by Performance Insights (all engines except Amazon DocumentDB).
\n db.sql.db_id
- Either the SQL ID generated by the database engine, or a value generated by Performance Insights that begins with\n pi-
(all engines except Amazon DocumentDB).
\n db.sql.statement
- The full text of the SQL statement that is running, as in SELECT * FROM employees
\n (all engines except Amazon DocumentDB)
\n db.sql.tokenized_id
\n
\n db.sql_tokenized.id
- The hash of the SQL digest generated by Performance Insights (all engines except Amazon DocumentDB). In the console,\n db.sql_tokenized.id
is called the Support ID because Amazon Web Services Support can look at this data to help you troubleshoot\n database issues.
\n db.sql_tokenized.db_id
- Either the native database ID used to refer to the SQL statement, or a synthetic ID such as\n pi-2372568224
that Performance Insights generates if the native database ID isn't available (all engines except Amazon DocumentDB).
\n db.sql_tokenized.statement
- The text of the SQL digest, as in SELECT * FROM employees WHERE employee_id =\n ?
(all engines except Amazon DocumentDB)
\n db.user.id
- The ID of the user logged in to the database (all engines except Amazon DocumentDB).
\n db.user.name
- The name of the user logged in to the database (all engines except Amazon DocumentDB).
\n db.wait_event.name
- The event for which the backend is waiting (all engines except Amazon DocumentDB).
\n db.wait_event.type
- The type of event for which the backend is waiting (all engines except Amazon DocumentDB).
\n db.wait_event_type.name
- The name of the event type for which the backend is waiting (all engines except\n Amazon DocumentDB).
\n db.wait_state.name
- The event for which the backend is waiting (only Amazon DocumentDB).
An optional pagination token provided by a previous request. If this parameter is specified, \n the response includes only records beyond the token, up to the value specified by MaxRecords
.\n
The actions to discover the dimensions you are authorized to access. If you specify multiple actions, then the response will\n contain the dimensions common for all the actions.
\nWhen you don't specify this request parameter or provide an empty list, the response contains all the \n available dimensions for the target database engine whether or not you are authorized to access them.
" + } } }, "traits": { @@ -1740,7 +1781,7 @@ "type": "structure", "members": { "Metric": { - "target": "com.amazonaws.pi#RequestString", + "target": "com.amazonaws.pi#SanitizedString", "traits": { "smithy.api#documentation": "The name of a Performance Insights metric to be measured.
\nValid values for Metric
are:
\n db.load.avg
- A scaled representation of the number of active sessions for the \n database engine.
\n db.sampledload.avg
- The raw number of active sessions for the database engine.
The counter metrics listed in Performance Insights\n operating system counters in the Amazon Aurora User Guide.
\nThe counter metrics listed in Performance Insights\n operating system counters in the Amazon RDS User Guide.
\nIf the number of active sessions is less than an internal Performance Insights threshold, db.load.avg
and db.sampledload.avg
are the same\n value. If the number of active sessions is greater than the internal threshold, Performance Insights samples the active sessions, with db.load.avg
showing the\n scaled values, db.sampledload.avg
showing the raw values, and db.sampledload.avg
less than\n db.load.avg
. For most use cases, you can query db.load.avg
only.