aws-sdk-prometheusservice 1.48.0 → 1.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cb44ce424fc6710b47881ddeee8f9b065ae701280a3c6f0b76a284fca610ca82
4
- data.tar.gz: e885b0dd9387f6dcadce63d96fb9e243e1a23a9d7ef73ed4b36860ab788bf780
3
+ metadata.gz: 00202ab64e9c3d72d07115988c0f9ec44f30ae83b977282d687e212ac5875b69
4
+ data.tar.gz: 810aae43a33c18980edec13397184a6482f609856eec220cd12a0e5295122f21
5
5
  SHA512:
6
- metadata.gz: b00c4b09170d34f4303bbf0a2a645ed5941a5f282f822972afb4161d594614f54a4579e840d01850f1fa6c15127900e1ff6c6370c8ff0b8b603a9e275718dfab
7
- data.tar.gz: 4c656da6d5d671ffd9832afec57b8a5763e447b96a0847526280f2f19de3c0983d8bcfd2036e252eeff5f2446b6b2fd32545f2721c11b6978de9d09f6a499dd4
6
+ metadata.gz: db180a305d3e62b7dee73951f1d91d348b471ccaa598f539d5b4f3ed06c28280f9a91dc91b8cc7f667bd53b9043d3812c938fdaf75561fa8bb194afd2280b734
7
+ data.tar.gz: 22c0bdf3cf95d31b5b52153105cab4f7ce137b1d0026144a7dc3b64e40a651031c8a674a60d4f6272213c1b85d16398eb8f8ec907427ada2a67cb1dabc82e1da
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.49.0 (2025-04-17)
5
+ ------------------
6
+
7
+ * Feature - Add Workspace Configuration APIs for Amazon Prometheus
8
+
4
9
  1.48.0 (2025-02-18)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.48.0
1
+ 1.49.0
@@ -687,7 +687,8 @@ module Aws::PrometheusService
687
687
  # to.
688
688
  #
689
689
  # @option params [Types::RoleConfiguration] :role_configuration
690
- # The scraper role configuration for the workspace.
690
+ # Use this structure to enable cross-account access, so that you can use
691
+ # a target account to access Prometheus metrics from source accounts.
691
692
  #
692
693
  # @option params [required, Types::ScrapeConfiguration] :scrape_configuration
693
694
  # The configuration file to use in the new scraper. For more
@@ -1202,6 +1203,48 @@ module Aws::PrometheusService
1202
1203
  req.send_request(options)
1203
1204
  end
1204
1205
 
1206
+ # Use this operation to return information about the configuration of a
1207
+ # workspace. The configuration details returned include workspace
1208
+ # configuration status, label set limits, and retention period.
1209
+ #
1210
+ # @option params [required, String] :workspace_id
1211
+ # The ID of the workspace that you want to retrieve information for. To
1212
+ # find the IDs of your workspaces, use the [ListWorkspaces][1]
1213
+ # operation.
1214
+ #
1215
+ #
1216
+ #
1217
+ # [1]: https://docs.aws.amazon.com/prometheus/latest/APIReference/API_ListWorkspaces.htm
1218
+ #
1219
+ # @return [Types::DescribeWorkspaceConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1220
+ #
1221
+ # * {Types::DescribeWorkspaceConfigurationResponse#workspace_configuration #workspace_configuration} => Types::WorkspaceConfigurationDescription
1222
+ #
1223
+ # @example Request syntax with placeholder values
1224
+ #
1225
+ # resp = client.describe_workspace_configuration({
1226
+ # workspace_id: "WorkspaceId", # required
1227
+ # })
1228
+ #
1229
+ # @example Response structure
1230
+ #
1231
+ # resp.workspace_configuration.limits_per_label_set #=> Array
1232
+ # resp.workspace_configuration.limits_per_label_set[0].label_set #=> Hash
1233
+ # resp.workspace_configuration.limits_per_label_set[0].label_set["LabelName"] #=> String
1234
+ # resp.workspace_configuration.limits_per_label_set[0].limits.max_series #=> Integer
1235
+ # resp.workspace_configuration.retention_period_in_days #=> Integer
1236
+ # resp.workspace_configuration.status.status_code #=> String, one of "ACTIVE", "UPDATING", "UPDATE_FAILED"
1237
+ # resp.workspace_configuration.status.status_reason #=> String
1238
+ #
1239
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/DescribeWorkspaceConfiguration AWS API Documentation
1240
+ #
1241
+ # @overload describe_workspace_configuration(params = {})
1242
+ # @param [Hash] params ({})
1243
+ def describe_workspace_configuration(params = {}, options = {})
1244
+ req = build_request(:describe_workspace_configuration, params)
1245
+ req.send_request(options)
1246
+ end
1247
+
1205
1248
  # The `GetDefaultScraperConfiguration` operation returns the default
1206
1249
  # scraper configuration used when Amazon EKS creates a scraper for you.
1207
1250
  #
@@ -1710,7 +1753,8 @@ module Aws::PrometheusService
1710
1753
  # metrics to.
1711
1754
  #
1712
1755
  # @option params [Types::RoleConfiguration] :role_configuration
1713
- # The scraper role configuration for the workspace.
1756
+ # Use this structure to enable cross-account access, so that you can use
1757
+ # a target account to access Prometheus metrics from source accounts.
1714
1758
  #
1715
1759
  # @option params [Types::ScrapeConfiguration] :scrape_configuration
1716
1760
  # Contains the base-64 encoded YAML configuration for the scraper.
@@ -1809,6 +1853,73 @@ module Aws::PrometheusService
1809
1853
  req.send_request(options)
1810
1854
  end
1811
1855
 
1856
+ # Use this operation to create or update the label sets, label set
1857
+ # limits, and retention period of a workspace.
1858
+ #
1859
+ # You must specify at least one of `limitsPerLabelSet` or
1860
+ # `retentionPeriodInDays` for the request to be valid.
1861
+ #
1862
+ # @option params [String] :client_token
1863
+ # You can include a token in your operation to make it an idempotent
1864
+ # opeartion.
1865
+ #
1866
+ # **A suitable default value is auto-generated.** You should normally
1867
+ # not need to pass this option.**
1868
+ #
1869
+ # @option params [Array<Types::LimitsPerLabelSet>] :limits_per_label_set
1870
+ # This is an array of structures, where each structure defines a label
1871
+ # set for the workspace, and defines the ingestion limit for active time
1872
+ # series for each of those label sets. Each label name in a label set
1873
+ # must be unique.
1874
+ #
1875
+ # @option params [Integer] :retention_period_in_days
1876
+ # Specifies how many days that metrics will be retained in the
1877
+ # workspace.
1878
+ #
1879
+ # @option params [required, String] :workspace_id
1880
+ # The ID of the workspace that you want to update. To find the IDs of
1881
+ # your workspaces, use the [ListWorkspaces][1] operation.
1882
+ #
1883
+ #
1884
+ #
1885
+ # [1]: https://docs.aws.amazon.com/prometheus/latest/APIReference/API_ListWorkspaces.htm
1886
+ #
1887
+ # @return [Types::UpdateWorkspaceConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1888
+ #
1889
+ # * {Types::UpdateWorkspaceConfigurationResponse#status #status} => Types::WorkspaceConfigurationStatus
1890
+ #
1891
+ # @example Request syntax with placeholder values
1892
+ #
1893
+ # resp = client.update_workspace_configuration({
1894
+ # client_token: "IdempotencyToken",
1895
+ # limits_per_label_set: [
1896
+ # {
1897
+ # label_set: { # required
1898
+ # "LabelName" => "LabelValue",
1899
+ # },
1900
+ # limits: { # required
1901
+ # max_series: 1,
1902
+ # },
1903
+ # },
1904
+ # ],
1905
+ # retention_period_in_days: 1,
1906
+ # workspace_id: "WorkspaceId", # required
1907
+ # })
1908
+ #
1909
+ # @example Response structure
1910
+ #
1911
+ # resp.status.status_code #=> String, one of "ACTIVE", "UPDATING", "UPDATE_FAILED"
1912
+ # resp.status.status_reason #=> String
1913
+ #
1914
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/UpdateWorkspaceConfiguration AWS API Documentation
1915
+ #
1916
+ # @overload update_workspace_configuration(params = {})
1917
+ # @param [Hash] params ({})
1918
+ def update_workspace_configuration(params = {}, options = {})
1919
+ req = build_request(:update_workspace_configuration, params)
1920
+ req.send_request(options)
1921
+ end
1922
+
1812
1923
  # @!endgroup
1813
1924
 
1814
1925
  # @param params ({})
@@ -1827,7 +1938,7 @@ module Aws::PrometheusService
1827
1938
  tracer: tracer
1828
1939
  )
1829
1940
  context[:gem_name] = 'aws-sdk-prometheusservice'
1830
- context[:gem_version] = '1.48.0'
1941
+ context[:gem_version] = '1.49.0'
1831
1942
  Seahorse::Client::Request.new(handlers, context)
1832
1943
  end
1833
1944
 
@@ -47,6 +47,8 @@ module Aws::PrometheusService
47
47
  DescribeRuleGroupsNamespaceResponse = Shapes::StructureShape.new(name: 'DescribeRuleGroupsNamespaceResponse')
48
48
  DescribeScraperRequest = Shapes::StructureShape.new(name: 'DescribeScraperRequest')
49
49
  DescribeScraperResponse = Shapes::StructureShape.new(name: 'DescribeScraperResponse')
50
+ DescribeWorkspaceConfigurationRequest = Shapes::StructureShape.new(name: 'DescribeWorkspaceConfigurationRequest')
51
+ DescribeWorkspaceConfigurationResponse = Shapes::StructureShape.new(name: 'DescribeWorkspaceConfigurationResponse')
50
52
  DescribeWorkspaceRequest = Shapes::StructureShape.new(name: 'DescribeWorkspaceRequest')
51
53
  DescribeWorkspaceResponse = Shapes::StructureShape.new(name: 'DescribeWorkspaceResponse')
52
54
  Destination = Shapes::UnionShape.new(name: 'Destination')
@@ -61,6 +63,13 @@ module Aws::PrometheusService
61
63
  Integer = Shapes::IntegerShape.new(name: 'Integer')
62
64
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
63
65
  KmsKeyArn = Shapes::StringShape.new(name: 'KmsKeyArn')
66
+ LabelName = Shapes::StringShape.new(name: 'LabelName')
67
+ LabelSet = Shapes::MapShape.new(name: 'LabelSet')
68
+ LabelValue = Shapes::StringShape.new(name: 'LabelValue')
69
+ LimitsPerLabelSet = Shapes::StructureShape.new(name: 'LimitsPerLabelSet')
70
+ LimitsPerLabelSetEntry = Shapes::StructureShape.new(name: 'LimitsPerLabelSetEntry')
71
+ LimitsPerLabelSetEntryMaxSeriesLong = Shapes::IntegerShape.new(name: 'LimitsPerLabelSetEntryMaxSeriesLong')
72
+ LimitsPerLabelSetList = Shapes::ListShape.new(name: 'LimitsPerLabelSetList')
64
73
  ListRuleGroupsNamespacesRequest = Shapes::StructureShape.new(name: 'ListRuleGroupsNamespacesRequest')
65
74
  ListRuleGroupsNamespacesRequestMaxResultsInteger = Shapes::IntegerShape.new(name: 'ListRuleGroupsNamespacesRequestMaxResultsInteger')
66
75
  ListRuleGroupsNamespacesResponse = Shapes::StructureShape.new(name: 'ListRuleGroupsNamespacesResponse')
@@ -124,6 +133,9 @@ module Aws::PrometheusService
124
133
  UpdateScraperRequest = Shapes::StructureShape.new(name: 'UpdateScraperRequest')
125
134
  UpdateScraperResponse = Shapes::StructureShape.new(name: 'UpdateScraperResponse')
126
135
  UpdateWorkspaceAliasRequest = Shapes::StructureShape.new(name: 'UpdateWorkspaceAliasRequest')
136
+ UpdateWorkspaceConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateWorkspaceConfigurationRequest')
137
+ UpdateWorkspaceConfigurationRequestRetentionPeriodInDaysInteger = Shapes::IntegerShape.new(name: 'UpdateWorkspaceConfigurationRequestRetentionPeriodInDaysInteger')
138
+ UpdateWorkspaceConfigurationResponse = Shapes::StructureShape.new(name: 'UpdateWorkspaceConfigurationResponse')
127
139
  Uri = Shapes::StringShape.new(name: 'Uri')
128
140
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
129
141
  ValidationExceptionField = Shapes::StructureShape.new(name: 'ValidationExceptionField')
@@ -131,6 +143,10 @@ module Aws::PrometheusService
131
143
  ValidationExceptionReason = Shapes::StringShape.new(name: 'ValidationExceptionReason')
132
144
  WorkspaceAlias = Shapes::StringShape.new(name: 'WorkspaceAlias')
133
145
  WorkspaceArn = Shapes::StringShape.new(name: 'WorkspaceArn')
146
+ WorkspaceConfigurationDescription = Shapes::StructureShape.new(name: 'WorkspaceConfigurationDescription')
147
+ WorkspaceConfigurationDescriptionRetentionPeriodInDaysInteger = Shapes::IntegerShape.new(name: 'WorkspaceConfigurationDescriptionRetentionPeriodInDaysInteger')
148
+ WorkspaceConfigurationStatus = Shapes::StructureShape.new(name: 'WorkspaceConfigurationStatus')
149
+ WorkspaceConfigurationStatusCode = Shapes::StringShape.new(name: 'WorkspaceConfigurationStatusCode')
134
150
  WorkspaceDescription = Shapes::StructureShape.new(name: 'WorkspaceDescription')
135
151
  WorkspaceId = Shapes::StringShape.new(name: 'WorkspaceId')
136
152
  WorkspaceStatus = Shapes::StructureShape.new(name: 'WorkspaceStatus')
@@ -266,6 +282,12 @@ module Aws::PrometheusService
266
282
  DescribeScraperResponse.add_member(:scraper, Shapes::ShapeRef.new(shape: ScraperDescription, required: true, location_name: "scraper"))
267
283
  DescribeScraperResponse.struct_class = Types::DescribeScraperResponse
268
284
 
285
+ DescribeWorkspaceConfigurationRequest.add_member(:workspace_id, Shapes::ShapeRef.new(shape: WorkspaceId, required: true, location: "uri", location_name: "workspaceId"))
286
+ DescribeWorkspaceConfigurationRequest.struct_class = Types::DescribeWorkspaceConfigurationRequest
287
+
288
+ DescribeWorkspaceConfigurationResponse.add_member(:workspace_configuration, Shapes::ShapeRef.new(shape: WorkspaceConfigurationDescription, required: true, location_name: "workspaceConfiguration"))
289
+ DescribeWorkspaceConfigurationResponse.struct_class = Types::DescribeWorkspaceConfigurationResponse
290
+
269
291
  DescribeWorkspaceRequest.add_member(:workspace_id, Shapes::ShapeRef.new(shape: WorkspaceId, required: true, location: "uri", location_name: "workspaceId"))
270
292
  DescribeWorkspaceRequest.struct_class = Types::DescribeWorkspaceRequest
271
293
 
@@ -294,6 +316,18 @@ module Aws::PrometheusService
294
316
  InternalServerException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: Integer, location: "header", location_name: "Retry-After"))
295
317
  InternalServerException.struct_class = Types::InternalServerException
296
318
 
319
+ LabelSet.key = Shapes::ShapeRef.new(shape: LabelName)
320
+ LabelSet.value = Shapes::ShapeRef.new(shape: LabelValue)
321
+
322
+ LimitsPerLabelSet.add_member(:label_set, Shapes::ShapeRef.new(shape: LabelSet, required: true, location_name: "labelSet"))
323
+ LimitsPerLabelSet.add_member(:limits, Shapes::ShapeRef.new(shape: LimitsPerLabelSetEntry, required: true, location_name: "limits"))
324
+ LimitsPerLabelSet.struct_class = Types::LimitsPerLabelSet
325
+
326
+ LimitsPerLabelSetEntry.add_member(:max_series, Shapes::ShapeRef.new(shape: LimitsPerLabelSetEntryMaxSeriesLong, location_name: "maxSeries"))
327
+ LimitsPerLabelSetEntry.struct_class = Types::LimitsPerLabelSetEntry
328
+
329
+ LimitsPerLabelSetList.member = Shapes::ShapeRef.new(shape: LimitsPerLabelSet)
330
+
297
331
  ListRuleGroupsNamespacesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListRuleGroupsNamespacesRequestMaxResultsInteger, location: "querystring", location_name: "maxResults"))
298
332
  ListRuleGroupsNamespacesRequest.add_member(:name, Shapes::ShapeRef.new(shape: RuleGroupsNamespaceName, location: "querystring", location_name: "name"))
299
333
  ListRuleGroupsNamespacesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
@@ -501,6 +535,15 @@ module Aws::PrometheusService
501
535
  UpdateWorkspaceAliasRequest.add_member(:workspace_id, Shapes::ShapeRef.new(shape: WorkspaceId, required: true, location: "uri", location_name: "workspaceId"))
502
536
  UpdateWorkspaceAliasRequest.struct_class = Types::UpdateWorkspaceAliasRequest
503
537
 
538
+ UpdateWorkspaceConfigurationRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
539
+ UpdateWorkspaceConfigurationRequest.add_member(:limits_per_label_set, Shapes::ShapeRef.new(shape: LimitsPerLabelSetList, location_name: "limitsPerLabelSet"))
540
+ UpdateWorkspaceConfigurationRequest.add_member(:retention_period_in_days, Shapes::ShapeRef.new(shape: UpdateWorkspaceConfigurationRequestRetentionPeriodInDaysInteger, location_name: "retentionPeriodInDays"))
541
+ UpdateWorkspaceConfigurationRequest.add_member(:workspace_id, Shapes::ShapeRef.new(shape: WorkspaceId, required: true, location: "uri", location_name: "workspaceId"))
542
+ UpdateWorkspaceConfigurationRequest.struct_class = Types::UpdateWorkspaceConfigurationRequest
543
+
544
+ UpdateWorkspaceConfigurationResponse.add_member(:status, Shapes::ShapeRef.new(shape: WorkspaceConfigurationStatus, required: true, location_name: "status"))
545
+ UpdateWorkspaceConfigurationResponse.struct_class = Types::UpdateWorkspaceConfigurationResponse
546
+
504
547
  ValidationException.add_member(:field_list, Shapes::ShapeRef.new(shape: ValidationExceptionFieldList, location_name: "fieldList"))
505
548
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
506
549
  ValidationException.add_member(:reason, Shapes::ShapeRef.new(shape: ValidationExceptionReason, required: true, location_name: "reason"))
@@ -512,6 +555,15 @@ module Aws::PrometheusService
512
555
 
513
556
  ValidationExceptionFieldList.member = Shapes::ShapeRef.new(shape: ValidationExceptionField)
514
557
 
558
+ WorkspaceConfigurationDescription.add_member(:limits_per_label_set, Shapes::ShapeRef.new(shape: LimitsPerLabelSetList, location_name: "limitsPerLabelSet"))
559
+ WorkspaceConfigurationDescription.add_member(:retention_period_in_days, Shapes::ShapeRef.new(shape: WorkspaceConfigurationDescriptionRetentionPeriodInDaysInteger, location_name: "retentionPeriodInDays"))
560
+ WorkspaceConfigurationDescription.add_member(:status, Shapes::ShapeRef.new(shape: WorkspaceConfigurationStatus, required: true, location_name: "status"))
561
+ WorkspaceConfigurationDescription.struct_class = Types::WorkspaceConfigurationDescription
562
+
563
+ WorkspaceConfigurationStatus.add_member(:status_code, Shapes::ShapeRef.new(shape: WorkspaceConfigurationStatusCode, required: true, location_name: "statusCode"))
564
+ WorkspaceConfigurationStatus.add_member(:status_reason, Shapes::ShapeRef.new(shape: String, location_name: "statusReason"))
565
+ WorkspaceConfigurationStatus.struct_class = Types::WorkspaceConfigurationStatus
566
+
515
567
  WorkspaceDescription.add_member(:alias, Shapes::ShapeRef.new(shape: WorkspaceAlias, location_name: "alias"))
516
568
  WorkspaceDescription.add_member(:arn, Shapes::ShapeRef.new(shape: WorkspaceArn, required: true, location_name: "arn"))
517
569
  WorkspaceDescription.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "createdAt"))
@@ -760,6 +812,19 @@ module Aws::PrometheusService
760
812
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
761
813
  end)
762
814
 
815
+ api.add_operation(:describe_workspace_configuration, Seahorse::Model::Operation.new.tap do |o|
816
+ o.name = "DescribeWorkspaceConfiguration"
817
+ o.http_method = "GET"
818
+ o.http_request_uri = "/workspaces/{workspaceId}/configuration"
819
+ o.input = Shapes::ShapeRef.new(shape: DescribeWorkspaceConfigurationRequest)
820
+ o.output = Shapes::ShapeRef.new(shape: DescribeWorkspaceConfigurationResponse)
821
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
822
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
823
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
824
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
825
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
826
+ end)
827
+
763
828
  api.add_operation(:get_default_scraper_configuration, Seahorse::Model::Operation.new.tap do |o|
764
829
  o.name = "GetDefaultScraperConfiguration"
765
830
  o.http_method = "GET"
@@ -937,6 +1002,21 @@ module Aws::PrometheusService
937
1002
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
938
1003
  o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
939
1004
  end)
1005
+
1006
+ api.add_operation(:update_workspace_configuration, Seahorse::Model::Operation.new.tap do |o|
1007
+ o.name = "UpdateWorkspaceConfiguration"
1008
+ o.http_method = "PATCH"
1009
+ o.http_request_uri = "/workspaces/{workspaceId}/configuration"
1010
+ o.input = Shapes::ShapeRef.new(shape: UpdateWorkspaceConfigurationRequest)
1011
+ o.output = Shapes::ShapeRef.new(shape: UpdateWorkspaceConfigurationResponse)
1012
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1013
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1014
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1015
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1016
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1017
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1018
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
1019
+ end)
940
1020
  end
941
1021
 
942
1022
  end
@@ -318,7 +318,9 @@ module Aws::PrometheusService
318
318
  # @return [Types::Destination]
319
319
  #
320
320
  # @!attribute [rw] role_configuration
321
- # The scraper role configuration for the workspace.
321
+ # Use this structure to enable cross-account access, so that you can
322
+ # use a target account to access Prometheus metrics from source
323
+ # accounts.
322
324
  # @return [Types::RoleConfiguration]
323
325
  #
324
326
  # @!attribute [rw] scrape_configuration
@@ -725,6 +727,37 @@ module Aws::PrometheusService
725
727
  include Aws::Structure
726
728
  end
727
729
 
730
+ # @!attribute [rw] workspace_id
731
+ # The ID of the workspace that you want to retrieve information for.
732
+ # To find the IDs of your workspaces, use the [ListWorkspaces][1]
733
+ # operation.
734
+ #
735
+ #
736
+ #
737
+ # [1]: https://docs.aws.amazon.com/prometheus/latest/APIReference/API_ListWorkspaces.htm
738
+ # @return [String]
739
+ #
740
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/DescribeWorkspaceConfigurationRequest AWS API Documentation
741
+ #
742
+ class DescribeWorkspaceConfigurationRequest < Struct.new(
743
+ :workspace_id)
744
+ SENSITIVE = []
745
+ include Aws::Structure
746
+ end
747
+
748
+ # @!attribute [rw] workspace_configuration
749
+ # This structure contains the information about the workspace
750
+ # configuration.
751
+ # @return [Types::WorkspaceConfigurationDescription]
752
+ #
753
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/DescribeWorkspaceConfigurationResponse AWS API Documentation
754
+ #
755
+ class DescribeWorkspaceConfigurationResponse < Struct.new(
756
+ :workspace_configuration)
757
+ SENSITIVE = []
758
+ include Aws::Structure
759
+ end
760
+
728
761
  # Represents the input of a `DescribeWorkspace` operation.
729
762
  #
730
763
  # @!attribute [rw] workspace_id
@@ -850,6 +883,58 @@ module Aws::PrometheusService
850
883
  include Aws::Structure
851
884
  end
852
885
 
886
+ # This structure defines one label set used to enforce ingestion limits
887
+ # for the workspace, and defines the limit for that label set.
888
+ #
889
+ # A label set is a unique combination of label-value pairs. Use them to
890
+ # control time series ingestion limits and to monitor usage by specific
891
+ # label groups. Example label sets might be `team:finance` or `env:prod`
892
+ #
893
+ # @!attribute [rw] label_set
894
+ # This defines one label set that will have an enforced ingestion
895
+ # limit.
896
+ #
897
+ # Label values accept ASCII characters and must contain at least one
898
+ # character that isn't whitespace. ASCII control characters are not
899
+ # accepted. If the label name is metric name label `__name__`, then
900
+ # the *metric* part of the name must conform to the following pattern:
901
+ # `[a-zA-Z_:][a-zA-Z0-9_:]*`
902
+ # @return [Hash<String,String>]
903
+ #
904
+ # @!attribute [rw] limits
905
+ # This structure contains the information about the limits that apply
906
+ # to time series that match this label set.
907
+ # @return [Types::LimitsPerLabelSetEntry]
908
+ #
909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/LimitsPerLabelSet AWS API Documentation
910
+ #
911
+ class LimitsPerLabelSet < Struct.new(
912
+ :label_set,
913
+ :limits)
914
+ SENSITIVE = []
915
+ include Aws::Structure
916
+ end
917
+
918
+ # This structure contains the information about the limits that apply to
919
+ # time series that match one label set.
920
+ #
921
+ # @!attribute [rw] max_series
922
+ # The maximum number of active series that can be ingested that match
923
+ # this label set.
924
+ #
925
+ # Setting this to 0 causes no label set limit to be enforced, but it
926
+ # does cause Amazon Managed Service for Prometheus to vend label set
927
+ # metrics to CloudWatch
928
+ # @return [Integer]
929
+ #
930
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/LimitsPerLabelSetEntry AWS API Documentation
931
+ #
932
+ class LimitsPerLabelSetEntry < Struct.new(
933
+ :max_series)
934
+ SENSITIVE = []
935
+ include Aws::Structure
936
+ end
937
+
853
938
  # Represents the input of a `ListRuleGroupsNamespaces` operation.
854
939
  #
855
940
  # @!attribute [rw] max_results
@@ -1264,15 +1349,27 @@ module Aws::PrometheusService
1264
1349
  include Aws::Structure
1265
1350
  end
1266
1351
 
1267
- # To configure roles that allows users to write to an Amazon Managed
1268
- # Service for Prometheus workspace in a different account.
1352
+ # Use this structure to enable cross-account access, so that you can use
1353
+ # a target account to access Prometheus metrics from source accounts.
1269
1354
  #
1270
1355
  # @!attribute [rw] source_role_arn
1271
- # A ARN identifying the source role configuration.
1356
+ # The Amazon Resource Name (ARN) of the role used in the source
1357
+ # account to enable cross-account scraping. For information about the
1358
+ # contents of this policy, see [Cross-account setup][1].
1359
+ #
1360
+ #
1361
+ #
1362
+ # [1]: https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-collector-how-to.html#cross-account-remote-write
1272
1363
  # @return [String]
1273
1364
  #
1274
1365
  # @!attribute [rw] target_role_arn
1275
- # A ARN identifying the target role configuration.
1366
+ # The Amazon Resource Name (ARN) of the role used in the target
1367
+ # account to enable cross-account scraping. For information about the
1368
+ # contents of this policy, see [Cross-account setup][1].
1369
+ #
1370
+ #
1371
+ #
1372
+ # [1]: https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-collector-how-to.html#cross-account-remote-write
1276
1373
  # @return [String]
1277
1374
  #
1278
1375
  # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/RoleConfiguration AWS API Documentation
@@ -1464,8 +1561,8 @@ module Aws::PrometheusService
1464
1561
  # @return [String]
1465
1562
  #
1466
1563
  # @!attribute [rw] role_configuration
1467
- # To configure roles that allows users to write to an Amazon Managed
1468
- # Service for Prometheus workspace in a different account.
1564
+ # This structure displays information about the IAM roles used for
1565
+ # cross-account scraping configuration.
1469
1566
  # @return [Types::RoleConfiguration]
1470
1567
  #
1471
1568
  # @!attribute [rw] scrape_configuration
@@ -1560,8 +1657,8 @@ module Aws::PrometheusService
1560
1657
  # @return [String]
1561
1658
  #
1562
1659
  # @!attribute [rw] role_configuration
1563
- # To configure roles that allows users to write to an Amazon Managed
1564
- # Service for Prometheus workspace in a different account.
1660
+ # This structure displays information about the IAM roles used for
1661
+ # cross-account scraping configuration.
1565
1662
  # @return [Types::RoleConfiguration]
1566
1663
  #
1567
1664
  # @!attribute [rw] scraper_id
@@ -1796,7 +1893,9 @@ module Aws::PrometheusService
1796
1893
  # @return [Types::Destination]
1797
1894
  #
1798
1895
  # @!attribute [rw] role_configuration
1799
- # The scraper role configuration for the workspace.
1896
+ # Use this structure to enable cross-account access, so that you can
1897
+ # use a target account to access Prometheus metrics from source
1898
+ # accounts.
1800
1899
  # @return [Types::RoleConfiguration]
1801
1900
  #
1802
1901
  # @!attribute [rw] scrape_configuration
@@ -1890,6 +1989,58 @@ module Aws::PrometheusService
1890
1989
  include Aws::Structure
1891
1990
  end
1892
1991
 
1992
+ # @!attribute [rw] client_token
1993
+ # You can include a token in your operation to make it an idempotent
1994
+ # opeartion.
1995
+ #
1996
+ # **A suitable default value is auto-generated.** You should normally
1997
+ # not need to pass this option.
1998
+ # @return [String]
1999
+ #
2000
+ # @!attribute [rw] limits_per_label_set
2001
+ # This is an array of structures, where each structure defines a label
2002
+ # set for the workspace, and defines the ingestion limit for active
2003
+ # time series for each of those label sets. Each label name in a label
2004
+ # set must be unique.
2005
+ # @return [Array<Types::LimitsPerLabelSet>]
2006
+ #
2007
+ # @!attribute [rw] retention_period_in_days
2008
+ # Specifies how many days that metrics will be retained in the
2009
+ # workspace.
2010
+ # @return [Integer]
2011
+ #
2012
+ # @!attribute [rw] workspace_id
2013
+ # The ID of the workspace that you want to update. To find the IDs of
2014
+ # your workspaces, use the [ListWorkspaces][1] operation.
2015
+ #
2016
+ #
2017
+ #
2018
+ # [1]: https://docs.aws.amazon.com/prometheus/latest/APIReference/API_ListWorkspaces.htm
2019
+ # @return [String]
2020
+ #
2021
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/UpdateWorkspaceConfigurationRequest AWS API Documentation
2022
+ #
2023
+ class UpdateWorkspaceConfigurationRequest < Struct.new(
2024
+ :client_token,
2025
+ :limits_per_label_set,
2026
+ :retention_period_in_days,
2027
+ :workspace_id)
2028
+ SENSITIVE = []
2029
+ include Aws::Structure
2030
+ end
2031
+
2032
+ # @!attribute [rw] status
2033
+ # The status of the workspace configuration.
2034
+ # @return [Types::WorkspaceConfigurationStatus]
2035
+ #
2036
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/UpdateWorkspaceConfigurationResponse AWS API Documentation
2037
+ #
2038
+ class UpdateWorkspaceConfigurationResponse < Struct.new(
2039
+ :status)
2040
+ SENSITIVE = []
2041
+ include Aws::Structure
2042
+ end
2043
+
1893
2044
  # The input fails to satisfy the constraints specified by an Amazon Web
1894
2045
  # Services service.
1895
2046
  #
@@ -1935,6 +2086,54 @@ module Aws::PrometheusService
1935
2086
  include Aws::Structure
1936
2087
  end
1937
2088
 
2089
+ # This structure contains the description of the workspace
2090
+ # configuration.
2091
+ #
2092
+ # @!attribute [rw] limits_per_label_set
2093
+ # This is an array of structures, where each structure displays one
2094
+ # label sets for the workspace and the limits for that label set.
2095
+ # @return [Array<Types::LimitsPerLabelSet>]
2096
+ #
2097
+ # @!attribute [rw] retention_period_in_days
2098
+ # This field displays how many days that metrics are retained in the
2099
+ # workspace.
2100
+ # @return [Integer]
2101
+ #
2102
+ # @!attribute [rw] status
2103
+ # This structure displays the current status of the workspace
2104
+ # configuration, and might also contain a reason for that status.
2105
+ # @return [Types::WorkspaceConfigurationStatus]
2106
+ #
2107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/WorkspaceConfigurationDescription AWS API Documentation
2108
+ #
2109
+ class WorkspaceConfigurationDescription < Struct.new(
2110
+ :limits_per_label_set,
2111
+ :retention_period_in_days,
2112
+ :status)
2113
+ SENSITIVE = []
2114
+ include Aws::Structure
2115
+ end
2116
+
2117
+ # This structure displays the current status of the workspace
2118
+ # configuration, and might also contain a reason for that status.
2119
+ #
2120
+ # @!attribute [rw] status_code
2121
+ # The current status of the workspace configuration.
2122
+ # @return [String]
2123
+ #
2124
+ # @!attribute [rw] status_reason
2125
+ # The reason for the current status, if a reason is available.
2126
+ # @return [String]
2127
+ #
2128
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amp-2020-08-01/WorkspaceConfigurationStatus AWS API Documentation
2129
+ #
2130
+ class WorkspaceConfigurationStatus < Struct.new(
2131
+ :status_code,
2132
+ :status_reason)
2133
+ SENSITIVE = []
2134
+ include Aws::Structure
2135
+ end
2136
+
1938
2137
  # The full details about one Amazon Managed Service for Prometheus
1939
2138
  # workspace in your account.
1940
2139
  #
@@ -55,7 +55,7 @@ module Aws::PrometheusService
55
55
  autoload :EndpointProvider, 'aws-sdk-prometheusservice/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-prometheusservice/endpoints'
57
57
 
58
- GEM_VERSION = '1.48.0'
58
+ GEM_VERSION = '1.49.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -261,6 +261,16 @@ module Aws
261
261
  ) -> _DescribeWorkspaceResponseSuccess
262
262
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeWorkspaceResponseSuccess
263
263
 
264
+ interface _DescribeWorkspaceConfigurationResponseSuccess
265
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeWorkspaceConfigurationResponse]
266
+ def workspace_configuration: () -> Types::WorkspaceConfigurationDescription
267
+ end
268
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/PrometheusService/Client.html#describe_workspace_configuration-instance_method
269
+ def describe_workspace_configuration: (
270
+ workspace_id: ::String
271
+ ) -> _DescribeWorkspaceConfigurationResponseSuccess
272
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeWorkspaceConfigurationResponseSuccess
273
+
264
274
  interface _GetDefaultScraperConfigurationResponseSuccess
265
275
  include ::Seahorse::Client::_ResponseSuccess[Types::GetDefaultScraperConfigurationResponse]
266
276
  def configuration: () -> ::String
@@ -415,6 +425,26 @@ module Aws
415
425
  ) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
416
426
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
417
427
 
428
+ interface _UpdateWorkspaceConfigurationResponseSuccess
429
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateWorkspaceConfigurationResponse]
430
+ def status: () -> Types::WorkspaceConfigurationStatus
431
+ end
432
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/PrometheusService/Client.html#update_workspace_configuration-instance_method
433
+ def update_workspace_configuration: (
434
+ ?client_token: ::String,
435
+ ?limits_per_label_set: Array[
436
+ {
437
+ label_set: Hash[::String, ::String],
438
+ limits: {
439
+ max_series: ::Integer?
440
+ }
441
+ },
442
+ ],
443
+ ?retention_period_in_days: ::Integer,
444
+ workspace_id: ::String
445
+ ) -> _UpdateWorkspaceConfigurationResponseSuccess
446
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateWorkspaceConfigurationResponseSuccess
447
+
418
448
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/PrometheusService/Client.html#wait_until-instance_method
419
449
  def wait_until: (:scraper_active waiter_name,
420
450
  scraper_id: ::String
data/sig/types.rbs CHANGED
@@ -194,6 +194,16 @@ module Aws::PrometheusService
194
194
  SENSITIVE: []
195
195
  end
196
196
 
197
+ class DescribeWorkspaceConfigurationRequest
198
+ attr_accessor workspace_id: ::String
199
+ SENSITIVE: []
200
+ end
201
+
202
+ class DescribeWorkspaceConfigurationResponse
203
+ attr_accessor workspace_configuration: Types::WorkspaceConfigurationDescription
204
+ SENSITIVE: []
205
+ end
206
+
197
207
  class DescribeWorkspaceRequest
198
208
  attr_accessor workspace_id: ::String
199
209
  SENSITIVE: []
@@ -236,6 +246,17 @@ module Aws::PrometheusService
236
246
  SENSITIVE: []
237
247
  end
238
248
 
249
+ class LimitsPerLabelSet
250
+ attr_accessor label_set: ::Hash[::String, ::String]
251
+ attr_accessor limits: Types::LimitsPerLabelSetEntry
252
+ SENSITIVE: []
253
+ end
254
+
255
+ class LimitsPerLabelSetEntry
256
+ attr_accessor max_series: ::Integer
257
+ SENSITIVE: []
258
+ end
259
+
239
260
  class ListRuleGroupsNamespacesRequest
240
261
  attr_accessor max_results: ::Integer
241
262
  attr_accessor name: ::String
@@ -501,6 +522,19 @@ module Aws::PrometheusService
501
522
  SENSITIVE: []
502
523
  end
503
524
 
525
+ class UpdateWorkspaceConfigurationRequest
526
+ attr_accessor client_token: ::String
527
+ attr_accessor limits_per_label_set: ::Array[Types::LimitsPerLabelSet]
528
+ attr_accessor retention_period_in_days: ::Integer
529
+ attr_accessor workspace_id: ::String
530
+ SENSITIVE: []
531
+ end
532
+
533
+ class UpdateWorkspaceConfigurationResponse
534
+ attr_accessor status: Types::WorkspaceConfigurationStatus
535
+ SENSITIVE: []
536
+ end
537
+
504
538
  class ValidationException
505
539
  attr_accessor field_list: ::Array[Types::ValidationExceptionField]
506
540
  attr_accessor message: ::String
@@ -514,6 +548,19 @@ module Aws::PrometheusService
514
548
  SENSITIVE: []
515
549
  end
516
550
 
551
+ class WorkspaceConfigurationDescription
552
+ attr_accessor limits_per_label_set: ::Array[Types::LimitsPerLabelSet]
553
+ attr_accessor retention_period_in_days: ::Integer
554
+ attr_accessor status: Types::WorkspaceConfigurationStatus
555
+ SENSITIVE: []
556
+ end
557
+
558
+ class WorkspaceConfigurationStatus
559
+ attr_accessor status_code: ("ACTIVE" | "UPDATING" | "UPDATE_FAILED")
560
+ attr_accessor status_reason: ::String
561
+ SENSITIVE: []
562
+ end
563
+
517
564
  class WorkspaceDescription
518
565
  attr_accessor alias: ::String
519
566
  attr_accessor arn: ::String
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-prometheusservice
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.48.0
4
+ version: 1.49.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-02-18 00:00:00.000000000 Z
11
+ date: 2025-04-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core