google-cloud-storage-control-v2 1.10.1 → 1.11.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.
@@ -1019,6 +1019,644 @@ module Google
1019
1019
  include ::Google::Protobuf::MessageExts
1020
1020
  extend ::Google::Protobuf::MessageExts::ClassMethods
1021
1021
  end
1022
+
1023
+ # The `IntelligenceFinding` resource that represents a security, performance,
1024
+ # or cost-related finding about a project or bucket.
1025
+ # @!attribute [rw] name
1026
+ # @return [::String]
1027
+ # Identifier. The resource name of `IntelligenceFinding`.
1028
+ # Format:
1029
+ # `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}`
1030
+ # @!attribute [r] description
1031
+ # @return [::String]
1032
+ # Output only. A short description about the finding.
1033
+ # @!attribute [r] type
1034
+ # @return [::Google::Cloud::Storage::Control::V2::FindingType]
1035
+ # Output only. Type of this finding.
1036
+ # @!attribute [r] category
1037
+ # @return [::Google::Cloud::Storage::Control::V2::FindingCategory]
1038
+ # Output only. Category of this finding.
1039
+ # @!attribute [r] severity
1040
+ # @return [::Google::Cloud::Storage::Control::V2::FindingSeverity]
1041
+ # Output only. Severity of the finding.
1042
+ # @!attribute [r] create_time
1043
+ # @return [::Google::Protobuf::Timestamp]
1044
+ # Output only. The time at which the finding was created.
1045
+ # @!attribute [r] update_time
1046
+ # @return [::Google::Protobuf::Timestamp]
1047
+ # Output only. The time at which the finding was last updated.
1048
+ # @!attribute [r] target_resource
1049
+ # @return [::String]
1050
+ # Output only. The fully qualified resource name of the resource that this
1051
+ # `IntelligenceFinding` applies to. eg:
1052
+ # - `storage.googleapis.com/projects/_/buckets/b1`
1053
+ # - `cloudresourecemanager.googleapis.com/projects/p1`
1054
+ # @!attribute [r] associated_resources
1055
+ # @return [::Array<::String>]
1056
+ # Output only. Contains GCP resource names that are
1057
+ # relevant to this `IntelligenceFinding`. The `target_resource` is also added
1058
+ # as part of `associated_resources`. eg:
1059
+ # - `storage.googleapis.com/projects/_/buckets/b1`
1060
+ # - `cloudresourecemanager.googleapis.com/projects/p1`
1061
+ # @!attribute [r] observation_period
1062
+ # @return [::Google::Type::Interval]
1063
+ # Output only. The time interval during which the underlying data was used to
1064
+ # generate this `IntelligenceFinding`.
1065
+ # @!attribute [r] coldline_and_archival_storage_operations_spike
1066
+ # @return [::Google::Cloud::Storage::Control::V2::IntelligenceFinding::ColdlineAndArchivalStorageOperationsSpike]
1067
+ # Output only. `IntelligenceFinding` about a spike in Class A/B operations
1068
+ # on Coldline or Archive Cloud Storage objects.
1069
+ #
1070
+ # Note: The following fields are mutually exclusive: `coldline_and_archival_storage_operations_spike`, `throttled_requests_spike`, `cross_region_egress_spike`, `storage_growth_above_trend`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1071
+ # @!attribute [r] throttled_requests_spike
1072
+ # @return [::Google::Cloud::Storage::Control::V2::IntelligenceFinding::ThrottledRequestSpike]
1073
+ # Output only. `IntelligenceFinding` about a spike in throttled requests
1074
+ # (429 errors) within a project.
1075
+ #
1076
+ # Note: The following fields are mutually exclusive: `throttled_requests_spike`, `coldline_and_archival_storage_operations_spike`, `cross_region_egress_spike`, `storage_growth_above_trend`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1077
+ # @!attribute [r] cross_region_egress_spike
1078
+ # @return [::Google::Cloud::Storage::Control::V2::IntelligenceFinding::CrossRegionEgressSpike]
1079
+ # Output only. `IntelligenceFinding` about a spike in cross-region egress.
1080
+ #
1081
+ # Note: The following fields are mutually exclusive: `cross_region_egress_spike`, `coldline_and_archival_storage_operations_spike`, `throttled_requests_spike`, `storage_growth_above_trend`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1082
+ # @!attribute [r] storage_growth_above_trend
1083
+ # @return [::Google::Cloud::Storage::Control::V2::IntelligenceFinding::StorageGrowthAboveTrend]
1084
+ # Output only. `IntelligenceFinding` about growth in storage above the
1085
+ # expected trend.
1086
+ #
1087
+ # Note: The following fields are mutually exclusive: `storage_growth_above_trend`, `coldline_and_archival_storage_operations_spike`, `throttled_requests_spike`, `cross_region_egress_spike`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1088
+ class IntelligenceFinding
1089
+ include ::Google::Protobuf::MessageExts
1090
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1091
+
1092
+ # Represents a finding about a spike in Class A/B operations on Coldline
1093
+ # or Archive Cloud Storage objects.
1094
+ # This corresponds to the `COLD_AND_ARCHIVAL_STORAGE_OPERATIONS_SPIKE`
1095
+ # finding type.
1096
+ # @!attribute [r] percentage_increase
1097
+ # @return [::Float]
1098
+ # Output only. The percentage increase in operations across the project.
1099
+ # @!attribute [r] total_operations_count
1100
+ # @return [::Integer]
1101
+ # Output only. The total count of operations across the project.
1102
+ # @!attribute [r] top_buckets
1103
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::IntelligenceFinding::ColdlineAndArchivalStorageOperationsSpike::BucketContribution>]
1104
+ # Output only. A list of the top buckets driving the increase in
1105
+ # operations.
1106
+ class ColdlineAndArchivalStorageOperationsSpike
1107
+ include ::Google::Protobuf::MessageExts
1108
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1109
+
1110
+ # Represents the operation spike details for a bucket.
1111
+ # @!attribute [r] bucket
1112
+ # @return [::String]
1113
+ # Output only. The name of the bucket.
1114
+ # @!attribute [r] percentage_increase
1115
+ # @return [::Float]
1116
+ # Output only. The percentage increase in operations for the bucket.
1117
+ # @!attribute [r] total_operations_count
1118
+ # @return [::Integer]
1119
+ # Output only. The total count of operations for the bucket.
1120
+ # @!attribute [r] contribution
1121
+ # @return [::Google::Cloud::Storage::Control::V2::IntelligenceFinding::ColdlineAndArchivalStorageOperationsSpike::BucketContribution::Contribution]
1122
+ # Output only. The details about the contribution of the bucket.
1123
+ #
1124
+ # Note: The following fields are mutually exclusive: `contribution`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1125
+ # @!attribute [r] error
1126
+ # @return [::Google::Rpc::Status]
1127
+ # Output only. The error related to accessing the details about the
1128
+ # contribution of the bucket.
1129
+ #
1130
+ # Note: The following fields are mutually exclusive: `error`, `contribution`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1131
+ class BucketContribution
1132
+ include ::Google::Protobuf::MessageExts
1133
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1134
+
1135
+ # Represents the contribution of the bucket towards the
1136
+ # `IntelligenceFinding`.
1137
+ # @!attribute [r] top_prefixes
1138
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::IntelligenceFinding::ColdlineAndArchivalStorageOperationsSpike::BucketContribution::Contribution::PrefixContribution>]
1139
+ # Output only. A list of the top object prefixes driving the increase
1140
+ # in operations.
1141
+ class Contribution
1142
+ include ::Google::Protobuf::MessageExts
1143
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1144
+
1145
+ # Represents the operation spike details for an object prefix.
1146
+ # @!attribute [r] prefix
1147
+ # @return [::String]
1148
+ # Output only. The object prefix.
1149
+ # Format: `a/b/c`, 'a/b/d', etc.
1150
+ # @!attribute [r] percentage_increase
1151
+ # @return [::Float]
1152
+ # Output only. The percentage increase in operations for the object
1153
+ # prefix.
1154
+ # @!attribute [r] total_operations_count
1155
+ # @return [::Integer]
1156
+ # Output only. The total count of operations for the object prefix.
1157
+ class PrefixContribution
1158
+ include ::Google::Protobuf::MessageExts
1159
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1160
+ end
1161
+ end
1162
+ end
1163
+ end
1164
+
1165
+ # Represents a finding about a spike in cross-region egress from Cloud
1166
+ # Storage.
1167
+ # This corresponds to the `CROSS_REGION_EGRESS_SPIKE` finding type.
1168
+ # @!attribute [r] total_egress_bytes
1169
+ # @return [::Integer]
1170
+ # Output only. The total cross-region egress volume in bytes across the
1171
+ # project.
1172
+ # @!attribute [r] percentage_increase
1173
+ # @return [::Float]
1174
+ # Output only. The percentage increase in cross-region egress across the
1175
+ # project.
1176
+ # @!attribute [r] top_buckets
1177
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::IntelligenceFinding::CrossRegionEgressSpike::BucketContribution>]
1178
+ # Output only. A list of top buckets driving the increase in cross-region
1179
+ # egress.
1180
+ class CrossRegionEgressSpike
1181
+ include ::Google::Protobuf::MessageExts
1182
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1183
+
1184
+ # Represents the cross-region egress spike details for a bucket.
1185
+ # @!attribute [r] bucket
1186
+ # @return [::String]
1187
+ # Output only. The name of the bucket.
1188
+ # @!attribute [r] total_egress_bytes
1189
+ # @return [::Integer]
1190
+ # Output only. The total cross-region egress volume in bytes for the
1191
+ # bucket.
1192
+ # @!attribute [r] percentage_increase
1193
+ # @return [::Float]
1194
+ # Output only. The percentage increase in cross-region egress for the
1195
+ # bucket.
1196
+ # @!attribute [r] contribution
1197
+ # @return [::Google::Cloud::Storage::Control::V2::IntelligenceFinding::CrossRegionEgressSpike::BucketContribution::Contribution]
1198
+ # Output only. The details about the contribution of the bucket.
1199
+ #
1200
+ # Note: The following fields are mutually exclusive: `contribution`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1201
+ # @!attribute [r] error
1202
+ # @return [::Google::Rpc::Status]
1203
+ # Output only. The error related to accessing the details about the
1204
+ # contribution of the bucket.
1205
+ #
1206
+ # Note: The following fields are mutually exclusive: `error`, `contribution`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1207
+ class BucketContribution
1208
+ include ::Google::Protobuf::MessageExts
1209
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1210
+
1211
+ # Represents the contribution of the bucket towards the
1212
+ # `IntelligenceFinding`.
1213
+ # @!attribute [r] top_prefixes
1214
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::IntelligenceFinding::CrossRegionEgressSpike::BucketContribution::Contribution::PrefixContribution>]
1215
+ # Output only. A list of the top object prefixes driving the increase
1216
+ # in cross-region egress.
1217
+ class Contribution
1218
+ include ::Google::Protobuf::MessageExts
1219
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1220
+
1221
+ # Represents the cross-region egress spike details for an object
1222
+ # prefix.
1223
+ # @!attribute [r] prefix
1224
+ # @return [::String]
1225
+ # Output only. The object prefix.
1226
+ # Format: `a/b/c`, 'a/b/d', etc.
1227
+ # @!attribute [r] total_egress_bytes
1228
+ # @return [::Integer]
1229
+ # Output only. The total cross-region egress volume in bytes from the
1230
+ # object prefix.
1231
+ # @!attribute [r] percentage_increase
1232
+ # @return [::Float]
1233
+ # Output only. The percentage increase in cross-region egress for the
1234
+ # object prefix.
1235
+ class PrefixContribution
1236
+ include ::Google::Protobuf::MessageExts
1237
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1238
+ end
1239
+ end
1240
+ end
1241
+ end
1242
+
1243
+ # Represents a finding about a spike in throttled requests (429 errors)
1244
+ # within a project.
1245
+ # This corresponds to the `THROTTLED_REQUEST_SPIKE` finding type.
1246
+ # @!attribute [r] throttled_requests
1247
+ # @return [::Integer]
1248
+ # Output only. The count of throttled requests across the project.
1249
+ # @!attribute [r] percentage_increase
1250
+ # @return [::Float]
1251
+ # Output only. The percentage increase in throttled requests across the
1252
+ # project.
1253
+ # @!attribute [r] top_buckets
1254
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::IntelligenceFinding::ThrottledRequestSpike::BucketContribution>]
1255
+ # Output only. A list of top buckets driving the increase in throttled
1256
+ # requests.
1257
+ class ThrottledRequestSpike
1258
+ include ::Google::Protobuf::MessageExts
1259
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1260
+
1261
+ # Represents the throttled requests details for a bucket.
1262
+ # @!attribute [r] bucket
1263
+ # @return [::String]
1264
+ # Output only. The name of the bucket.
1265
+ # @!attribute [r] throttled_requests
1266
+ # @return [::Integer]
1267
+ # Output only. The count of throttled requests for the bucket.
1268
+ # @!attribute [r] percentage_increase
1269
+ # @return [::Float]
1270
+ # Output only. The percentage increase in throttled requests for the
1271
+ # bucket.
1272
+ # @!attribute [r] contribution
1273
+ # @return [::Google::Cloud::Storage::Control::V2::IntelligenceFinding::ThrottledRequestSpike::BucketContribution::Contribution]
1274
+ # Output only. The details about the contribution of the bucket.
1275
+ #
1276
+ # Note: The following fields are mutually exclusive: `contribution`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1277
+ # @!attribute [r] error
1278
+ # @return [::Google::Rpc::Status]
1279
+ # Output only. The error related to accessing the details about the
1280
+ # contribution of the bucket.
1281
+ #
1282
+ # Note: The following fields are mutually exclusive: `error`, `contribution`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1283
+ class BucketContribution
1284
+ include ::Google::Protobuf::MessageExts
1285
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1286
+
1287
+ # Represents the contribution of the bucket towards the
1288
+ # `IntelligenceFinding`.
1289
+ # @!attribute [r] top_prefixes
1290
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::IntelligenceFinding::ThrottledRequestSpike::BucketContribution::Contribution::PrefixContribution>]
1291
+ # Output only. A list of top object prefixes driving the increase in
1292
+ # throttled requests.
1293
+ class Contribution
1294
+ include ::Google::Protobuf::MessageExts
1295
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1296
+
1297
+ # Represents throttled requests details for an object prefix.
1298
+ # @!attribute [r] prefix
1299
+ # @return [::String]
1300
+ # Output only. The object prefix.
1301
+ # Format: `a/b/c`, 'a/b/d', etc.
1302
+ # @!attribute [r] throttled_requests
1303
+ # @return [::Integer]
1304
+ # Output only. The count of throttled requests for the object prefix.
1305
+ # @!attribute [r] percentage_increase
1306
+ # @return [::Float]
1307
+ # Output only. The percentage increase in throttled requests for the
1308
+ # object prefix.
1309
+ class PrefixContribution
1310
+ include ::Google::Protobuf::MessageExts
1311
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1312
+ end
1313
+ end
1314
+ end
1315
+ end
1316
+
1317
+ # Represents a finding about a storage growth above the expected trend.
1318
+ # This corresponds to the `STORAGE_GROWTH_ABOVE_TREND` finding type.
1319
+ # @!attribute [r] total_storage_growth_bytes
1320
+ # @return [::Integer]
1321
+ # Output only. The total storage growth in bytes.
1322
+ # @!attribute [r] percentage_increase
1323
+ # @return [::Float]
1324
+ # Output only. The percentage increase in storage growth.
1325
+ # @!attribute [r] top_buckets
1326
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::IntelligenceFinding::StorageGrowthAboveTrend::BucketContribution>]
1327
+ # Output only. A list of top buckets driving the increase in storage
1328
+ # growth.
1329
+ class StorageGrowthAboveTrend
1330
+ include ::Google::Protobuf::MessageExts
1331
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1332
+
1333
+ # Represents the storage growth details for a bucket.
1334
+ # @!attribute [r] bucket
1335
+ # @return [::String]
1336
+ # Output only. The name of the bucket.
1337
+ # @!attribute [r] total_storage_growth_bytes
1338
+ # @return [::Integer]
1339
+ # Output only. The total storage growth in bytes for the bucket.
1340
+ # @!attribute [r] percentage_increase
1341
+ # @return [::Float]
1342
+ # Output only. The percentage increase in storage growth for the bucket.
1343
+ # @!attribute [r] error
1344
+ # @return [::Google::Rpc::Status]
1345
+ # Output only. The error related to accessing the details about the
1346
+ # contribution of the bucket.
1347
+ class BucketContribution
1348
+ include ::Google::Protobuf::MessageExts
1349
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1350
+ end
1351
+ end
1352
+ end
1353
+
1354
+ # An `IntelligenceFindingRevision` represents a specific revision of an
1355
+ # `IntelligenceFinding` resource.
1356
+ # @!attribute [rw] name
1357
+ # @return [::String]
1358
+ # Identifier. The resource name of `IntelligenceFindingRevision`.
1359
+ # Format:
1360
+ # `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}`
1361
+ # @!attribute [r] snapshot
1362
+ # @return [::Google::Cloud::Storage::Control::V2::IntelligenceFinding]
1363
+ # Output only. The snapshot of the `IntelligenceFinding` at the time the
1364
+ # revision was created. This field contains the full finding details as they
1365
+ # existed for the revision.
1366
+ # @!attribute [r] create_time
1367
+ # @return [::Google::Protobuf::Timestamp]
1368
+ # Output only. The timestamp when the revision was created.
1369
+ class IntelligenceFindingRevision
1370
+ include ::Google::Protobuf::MessageExts
1371
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1372
+ end
1373
+
1374
+ # Request message to get the `IntelligenceFinding` resource associated with a
1375
+ # project.
1376
+ # @!attribute [rw] name
1377
+ # @return [::String]
1378
+ # Required. The name of the `IntelligenceFinding` resource.
1379
+ #
1380
+ # Format:
1381
+ # `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}`
1382
+ class GetIntelligenceFindingRequest
1383
+ include ::Google::Protobuf::MessageExts
1384
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1385
+ end
1386
+
1387
+ # Request message to list `IntelligenceFinding` resources associated with
1388
+ # a project.
1389
+ # @!attribute [rw] parent
1390
+ # @return [::String]
1391
+ # Required. The parent of the `IntelligenceFinding` resource.
1392
+ #
1393
+ # Format: `projects/{project}/locations/{location}`
1394
+ # @!attribute [rw] filter
1395
+ # @return [::String]
1396
+ # Optional. The filter expression to be applied.
1397
+ # Supports filtering by `type` and `associated_resources`.
1398
+ # @!attribute [rw] page_size
1399
+ # @return [::Integer]
1400
+ # Optional. The maximum number of `IntelligenceFinding` resources to return.
1401
+ #
1402
+ # The maximum value is `100`; values above `100` will be coerced to `100`.
1403
+ # The default value is `100`.
1404
+ # @!attribute [rw] page_token
1405
+ # @return [::String]
1406
+ # Optional. A page token, received from a previous `ListIntelligenceFindings`
1407
+ # call. Provide this to retrieve the subsequent page.
1408
+ #
1409
+ # When paginating, all other parameters provided to
1410
+ # `ListIntelligenceFindings` must match the call that provided the page
1411
+ # token.
1412
+ class ListIntelligenceFindingsRequest
1413
+ include ::Google::Protobuf::MessageExts
1414
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1415
+ end
1416
+
1417
+ # Response message to list the `IntelligenceFinding` resources associated with
1418
+ # a project.
1419
+ # @!attribute [rw] intelligence_findings
1420
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::IntelligenceFinding>]
1421
+ # The `IntelligenceFinding` resources from the specified project.
1422
+ # @!attribute [rw] next_page_token
1423
+ # @return [::String]
1424
+ # A token to retrieve the next page of results.
1425
+ # Pass this value in the `page_token` field in the subsequent call.
1426
+ class ListIntelligenceFindingsResponse
1427
+ include ::Google::Protobuf::MessageExts
1428
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1429
+ end
1430
+
1431
+ # Request message to summarize the intelligence findings for the specified
1432
+ # scope(org, folder or project).
1433
+ # @!attribute [rw] parent
1434
+ # @return [::String]
1435
+ # Required. The scope to summarize the findings for.
1436
+ # Format:
1437
+ # - `organizations/{organization}/locations/{location}`
1438
+ # - `folders/{folder}/locations/{location}`
1439
+ # - `projects/{project}/locations/{location}`
1440
+ # @!attribute [rw] resource_scope
1441
+ # @return [::Google::Cloud::Storage::Control::V2::SummarizeIntelligenceFindingsRequest::ResourceScope]
1442
+ # Optional. Determines the granularity of the findings
1443
+ # when the `parent` is an organization or folder.
1444
+ #
1445
+ # - `PARENT` (or not set): A single summary is
1446
+ # returned for each insight type, aggregated across the entire `parent`
1447
+ # scope.
1448
+ # - `PROJECT`: A separate summary is returned for each
1449
+ # insight type for every project within the `parent` scope.
1450
+ #
1451
+ # The only supported values are `PARENT` and `PROJECT`.
1452
+ # If no value is specified, the API behaviour defaults to the `PARENT`.
1453
+ # @!attribute [rw] filter
1454
+ # @return [::String]
1455
+ # Optional. The filter expression, following AIP-160.
1456
+ # Supports filtering by FindingType.
1457
+ # @!attribute [rw] page_size
1458
+ # @return [::Integer]
1459
+ # Optional. The maximum number of findings to return.
1460
+ #
1461
+ # The maximum value is `100`; values above `100` will be coerced to `100`.
1462
+ # The default value is `100`.
1463
+ # @!attribute [rw] page_token
1464
+ # @return [::String]
1465
+ # Optional. A page token, received from a previous
1466
+ # `SummarizeIntelligenceFindings` call. Provide this to retrieve the
1467
+ # subsequent page.
1468
+ #
1469
+ # When paginating, all other parameters provided to
1470
+ # `SummarizeIntelligenceFindings` must match the call that provided the page
1471
+ # token.
1472
+ class SummarizeIntelligenceFindingsRequest
1473
+ include ::Google::Protobuf::MessageExts
1474
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1475
+
1476
+ # The list of resource scopes.
1477
+ module ResourceScope
1478
+ # The default behavior. Falls back to PARENT behaviour
1479
+ RESOURCE_SCOPE_UNSPECIFIED = 0
1480
+
1481
+ # Summaries are aggregated at the level of the `parent` resource.
1482
+ PARENT = 1
1483
+
1484
+ # Summaries are broken down by each project within the `parent` scope.
1485
+ PROJECT = 2
1486
+ end
1487
+ end
1488
+
1489
+ # Response message to summarize the intelligence findings for a specified
1490
+ # scope(org, folder or project).
1491
+ # @!attribute [rw] finding_summaries
1492
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::FindingSummary>]
1493
+ # The list of `FindingSummary` summaries.
1494
+ # @!attribute [rw] next_page_token
1495
+ # @return [::String]
1496
+ # A token to retrieve the next page of results.
1497
+ # Pass this value in the `page_token` field in the subsequent call to
1498
+ # `SummarizeIntelligenceFindings` to retrieve the next page of results.
1499
+ class SummarizeIntelligenceFindingsResponse
1500
+ include ::Google::Protobuf::MessageExts
1501
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1502
+ end
1503
+
1504
+ # Request message to get the `IntelligenceFindingRevision` resource associated
1505
+ # with a project.
1506
+ # @!attribute [rw] name
1507
+ # @return [::String]
1508
+ # Required. The name of the `IntelligenceFindingRevision` resource.
1509
+ # ## Format:
1510
+ #
1511
+ # `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}`
1512
+ class GetIntelligenceFindingRevisionRequest
1513
+ include ::Google::Protobuf::MessageExts
1514
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1515
+ end
1516
+
1517
+ # Request message to list `IntelligenceFindingRevision` resources associated
1518
+ # with a project.
1519
+ # @!attribute [rw] parent
1520
+ # @return [::String]
1521
+ # Required. The parent of the `IntelligenceFindingRevision` resource.
1522
+ # ## Format:
1523
+ #
1524
+ # `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}`
1525
+ # @!attribute [rw] page_size
1526
+ # @return [::Integer]
1527
+ # Optional. The maximum number of `IntelligenceFindingRevision` resources to
1528
+ # return.
1529
+ #
1530
+ # The maximum value is `100`; values above `100` will be coerced to `100`.
1531
+ # The default value is `100`.
1532
+ # @!attribute [rw] page_token
1533
+ # @return [::String]
1534
+ # Optional. A page token, received from a previous
1535
+ # `ListIntelligenceFindingRevisions` call. Provide this to retrieve the
1536
+ # subsequent page.
1537
+ class ListIntelligenceFindingRevisionsRequest
1538
+ include ::Google::Protobuf::MessageExts
1539
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1540
+ end
1541
+
1542
+ # Response message to list `IntelligenceFindingRevision` resources associated
1543
+ # with a project.
1544
+ # @!attribute [rw] intelligence_finding_revisions
1545
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::IntelligenceFindingRevision>]
1546
+ # The `IntelligenceFindingRevision` resources from the specified project.
1547
+ # @!attribute [rw] next_page_token
1548
+ # @return [::String]
1549
+ # A token that can be sent as `page_token` to retrieve the next page.
1550
+ class ListIntelligenceFindingRevisionsResponse
1551
+ include ::Google::Protobuf::MessageExts
1552
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1553
+ end
1554
+
1555
+ # A summary of findings generated for an organization, a folder, or a project.
1556
+ # @!attribute [r] type
1557
+ # @return [::Google::Cloud::Storage::Control::V2::FindingType]
1558
+ # Output only. The type of the finding.
1559
+ # @!attribute [r] category
1560
+ # @return [::Google::Cloud::Storage::Control::V2::FindingCategory]
1561
+ # Output only. The category of finding.
1562
+ # @!attribute [r] target_resource
1563
+ # @return [::String]
1564
+ # Output only. The fully qualified Cloud resource name for which this
1565
+ # summary was generated.
1566
+ # eg: `//cloudresourcemanager.googleapis.com/projects/p1`
1567
+ # @!attribute [r] create_time
1568
+ # @return [::Google::Protobuf::Timestamp]
1569
+ # Output only. The creation time of the earliest finding that this summary is
1570
+ # based on.
1571
+ # @!attribute [r] update_time
1572
+ # @return [::Google::Protobuf::Timestamp]
1573
+ # Output only. The time of the most recent update among all the findings that
1574
+ # this summary is based on.
1575
+ # @!attribute [r] severity
1576
+ # @return [::Google::Cloud::Storage::Control::V2::FindingSeverity]
1577
+ # Severity of the finding.
1578
+ # @!attribute [r] summary_details
1579
+ # @return [::Array<::Google::Cloud::Storage::Control::V2::FindingSummary::SummaryDetails>]
1580
+ # Output only. List of `SummaryDetails`.
1581
+ class FindingSummary
1582
+ include ::Google::Protobuf::MessageExts
1583
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1584
+
1585
+ # Details about the `FindingSummary` resource.
1586
+ # @!attribute [rw] count
1587
+ # @return [::Integer]
1588
+ # The count of impacted resources.
1589
+ #
1590
+ # Note: The following fields are mutually exclusive: `count`, `percentage`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1591
+ # @!attribute [rw] percentage
1592
+ # @return [::Float]
1593
+ # The percentage of impacted resources.
1594
+ #
1595
+ # Note: The following fields are mutually exclusive: `percentage`, `count`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1596
+ # @!attribute [r] resource_type
1597
+ # @return [::Google::Cloud::Storage::Control::V2::FindingSummary::SummaryDetails::ResourceType]
1598
+ # Output only. The type of Cloud resource this summary detail applies to.
1599
+ # @!attribute [r] description
1600
+ # @return [::String]
1601
+ # Output only. A short description about the FindingSummary
1602
+ class SummaryDetails
1603
+ include ::Google::Protobuf::MessageExts
1604
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1605
+
1606
+ # The list of resource types.
1607
+ module ResourceType
1608
+ # Resource type is unspecified.
1609
+ RESOURCE_TYPE_UNSPECIFIED = 0
1610
+
1611
+ # Resource type is project.
1612
+ PROJECT = 1
1613
+
1614
+ # Resource type is bucket.
1615
+ BUCKET = 2
1616
+ end
1617
+ end
1618
+ end
1619
+
1620
+ # List the finding types.
1621
+ module FindingType
1622
+ # Finding type is unspecified.
1623
+ FINDING_TYPE_UNSPECIFIED = 0
1624
+
1625
+ # Finding is about a spike in Class A/B operations on Coldline or Archive
1626
+ # Cloud Storage objects.
1627
+ FINDING_TYPE_COLDLINE_AND_ARCHIVAL_STORAGE_OPERATIONS_SPIKE = 1
1628
+
1629
+ # Finding is about a spike in throttled requests (429 errors) within a
1630
+ # project.
1631
+ FINDING_TYPE_THROTTLED_REQUEST_SPIKE = 2
1632
+
1633
+ # Finding is about a spike in cross region egress in Cloud Storage.
1634
+ FINDING_TYPE_CROSS_REGION_EGRESS_SPIKE = 3
1635
+
1636
+ # Finding is about growth in storage above the expected trend.
1637
+ FINDING_TYPE_STORAGE_GROWTH_ABOVE_TREND = 4
1638
+ end
1639
+
1640
+ # List of categories a finding falls under.
1641
+ module FindingCategory
1642
+ # Category is unspecified.
1643
+ FINDING_CATEGORY_UNSPECIFIED = 0
1644
+
1645
+ # Category is 'Data Management'.
1646
+ FINDING_CATEGORY_DATA_MANAGEMENT = 1
1647
+
1648
+ # Category is 'Performance'.
1649
+ FINDING_CATEGORY_PERFORMANCE = 2
1650
+ end
1651
+
1652
+ # Severity of the `IntelligenceFinding` resource.
1653
+ module FindingSeverity
1654
+ # Severity is unspecified.
1655
+ FINDING_SEVERITY_UNSPECIFIED = 0
1656
+
1657
+ # Severity is critical.
1658
+ FINDING_SEVERITY_CRITICAL = 1
1659
+ end
1022
1660
  end
1023
1661
  end
1024
1662
  end