@l-v-yonsama/multi-platform-database-drivers 2.0.1 → 2.1.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.
Files changed (454) hide show
  1. package/README.md +1 -0
  2. package/built/schema/log-parse-config.schema.json +4 -4
  3. package/built/src/drivers/AwsDriver.d.ts +25 -1
  4. package/built/src/drivers/AwsDriver.js +189 -0
  5. package/built/src/drivers/AwsDriver.js.map +1 -1
  6. package/built/src/drivers/BaseDriver.js.map +1 -1
  7. package/built/src/drivers/DBDriverResolver.js.map +1 -1
  8. package/built/src/drivers/KeycloakDriver.js.map +1 -1
  9. package/built/src/drivers/MqttDriver.js.map +1 -1
  10. package/built/src/drivers/MySQLDriver.d.ts +10 -1
  11. package/built/src/drivers/MySQLDriver.js +130 -0
  12. package/built/src/drivers/MySQLDriver.js.map +1 -1
  13. package/built/src/drivers/OracleDriver.d.ts +14 -1
  14. package/built/src/drivers/OracleDriver.js +217 -2
  15. package/built/src/drivers/OracleDriver.js.map +1 -1
  16. package/built/src/drivers/PostgresDriver.d.ts +9 -1
  17. package/built/src/drivers/PostgresDriver.js +90 -2
  18. package/built/src/drivers/PostgresDriver.js.map +1 -1
  19. package/built/src/drivers/RDSBaseDriver.d.ts +26 -1
  20. package/built/src/drivers/RDSBaseDriver.js +601 -0
  21. package/built/src/drivers/RDSBaseDriver.js.map +1 -1
  22. package/built/src/drivers/RedisDriver.js.map +1 -1
  23. package/built/src/drivers/SQLServerDriver.d.ts +18 -1
  24. package/built/src/drivers/SQLServerDriver.js +282 -6
  25. package/built/src/drivers/SQLServerDriver.js.map +1 -1
  26. package/built/src/drivers/SQLiteDriver.d.ts +7 -1
  27. package/built/src/drivers/SQLiteDriver.js +33 -1
  28. package/built/src/drivers/SQLiteDriver.js.map +1 -1
  29. package/built/src/drivers/aws/AwsCloudFormationServiceClient.js.map +1 -1
  30. package/built/src/drivers/aws/AwsDynamoServiceClient.d.ts +61 -5
  31. package/built/src/drivers/aws/AwsDynamoServiceClient.js +404 -108
  32. package/built/src/drivers/aws/AwsDynamoServiceClient.js.map +1 -1
  33. package/built/src/drivers/aws/AwsS3ServiceClient.js +18 -6
  34. package/built/src/drivers/aws/AwsS3ServiceClient.js.map +1 -1
  35. package/built/src/drivers/aws/AwsSQSServiceClient.js.map +1 -1
  36. package/built/src/drivers/aws/AwsSecretsManagerServiceClient.js.map +1 -1
  37. package/built/src/drivers/aws/AwsServiceClient.js.map +1 -1
  38. package/built/src/drivers/aws/AwsSsmServiceClient.js.map +1 -1
  39. package/built/src/drivers/aws/dynamoDbRdhSummary.d.ts +16 -0
  40. package/built/src/drivers/aws/dynamoDbRdhSummary.js +81 -0
  41. package/built/src/drivers/aws/dynamoDbRdhSummary.js.map +1 -0
  42. package/built/src/drivers/aws/dynamoDbResultMetadata.d.ts +9 -0
  43. package/built/src/drivers/aws/dynamoDbResultMetadata.js +71 -0
  44. package/built/src/drivers/aws/dynamoDbResultMetadata.js.map +1 -0
  45. package/built/src/drivers/index.d.ts +1 -0
  46. package/built/src/drivers/index.js +1 -0
  47. package/built/src/drivers/index.js.map +1 -1
  48. package/built/src/drivers/keycloak/resourceTreeBuilder.js.map +1 -1
  49. package/built/src/drivers/keycloak/scanResultBuilder.js.map +1 -1
  50. package/built/src/drivers/memcache/helper.js.map +1 -1
  51. package/built/src/drivers/providers/index.d.ts +3 -0
  52. package/built/src/drivers/providers/index.js +7 -0
  53. package/built/src/drivers/providers/index.js.map +1 -0
  54. package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbMetricServiceAdapter.d.ts +8 -0
  55. package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbMetricServiceAdapter.js +421 -0
  56. package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbMetricServiceAdapter.js.map +1 -0
  57. package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbOverviewMetricServiceAdapter.d.ts +7 -0
  58. package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbOverviewMetricServiceAdapter.js +84 -0
  59. package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbOverviewMetricServiceAdapter.js.map +1 -0
  60. package/built/src/drivers/providers/metrics/adapters/dynamodb/index.d.ts +2 -0
  61. package/built/src/drivers/providers/metrics/adapters/dynamodb/index.js +6 -0
  62. package/built/src/drivers/providers/metrics/adapters/dynamodb/index.js.map +1 -0
  63. package/built/src/drivers/providers/metrics/adapters/index.d.ts +6 -0
  64. package/built/src/drivers/providers/metrics/adapters/index.js +10 -0
  65. package/built/src/drivers/providers/metrics/adapters/index.js.map +1 -0
  66. package/built/src/drivers/providers/metrics/adapters/logs/CloudWatchLogsMetricServiceAdapter.d.ts +7 -0
  67. package/built/src/drivers/providers/metrics/adapters/logs/CloudWatchLogsMetricServiceAdapter.js +132 -0
  68. package/built/src/drivers/providers/metrics/adapters/logs/CloudWatchLogsMetricServiceAdapter.js.map +1 -0
  69. package/built/src/drivers/providers/metrics/adapters/logs/index.d.ts +1 -0
  70. package/built/src/drivers/providers/metrics/adapters/logs/index.js +5 -0
  71. package/built/src/drivers/providers/metrics/adapters/logs/index.js.map +1 -0
  72. package/built/src/drivers/providers/metrics/adapters/overview/index.d.ts +1 -0
  73. package/built/src/drivers/providers/metrics/adapters/overview/index.js +5 -0
  74. package/built/src/drivers/providers/metrics/adapters/overview/index.js.map +1 -0
  75. package/built/src/drivers/providers/metrics/adapters/overview/overviewMetricAdapterUtils.d.ts +26 -0
  76. package/built/src/drivers/providers/metrics/adapters/overview/overviewMetricAdapterUtils.js +80 -0
  77. package/built/src/drivers/providers/metrics/adapters/overview/overviewMetricAdapterUtils.js.map +1 -0
  78. package/built/src/drivers/providers/metrics/adapters/s3/S3MetricServiceAdapter.d.ts +21 -0
  79. package/built/src/drivers/providers/metrics/adapters/s3/S3MetricServiceAdapter.js +478 -0
  80. package/built/src/drivers/providers/metrics/adapters/s3/S3MetricServiceAdapter.js.map +1 -0
  81. package/built/src/drivers/providers/metrics/adapters/s3/S3OverviewMetricServiceAdapter.d.ts +13 -0
  82. package/built/src/drivers/providers/metrics/adapters/s3/S3OverviewMetricServiceAdapter.js +172 -0
  83. package/built/src/drivers/providers/metrics/adapters/s3/S3OverviewMetricServiceAdapter.js.map +1 -0
  84. package/built/src/drivers/providers/metrics/adapters/s3/index.d.ts +2 -0
  85. package/built/src/drivers/providers/metrics/adapters/s3/index.js +6 -0
  86. package/built/src/drivers/providers/metrics/adapters/s3/index.js.map +1 -0
  87. package/built/src/drivers/providers/metrics/adapters/ses/SesMetricServiceAdapter.d.ts +13 -0
  88. package/built/src/drivers/providers/metrics/adapters/ses/SesMetricServiceAdapter.js +183 -0
  89. package/built/src/drivers/providers/metrics/adapters/ses/SesMetricServiceAdapter.js.map +1 -0
  90. package/built/src/drivers/providers/metrics/adapters/ses/index.d.ts +1 -0
  91. package/built/src/drivers/providers/metrics/adapters/ses/index.js +5 -0
  92. package/built/src/drivers/providers/metrics/adapters/ses/index.js.map +1 -0
  93. package/built/src/drivers/providers/metrics/adapters/sqs/SqsMetricServiceAdapter.d.ts +7 -0
  94. package/built/src/drivers/providers/metrics/adapters/sqs/SqsMetricServiceAdapter.js +174 -0
  95. package/built/src/drivers/providers/metrics/adapters/sqs/SqsMetricServiceAdapter.js.map +1 -0
  96. package/built/src/drivers/providers/metrics/adapters/sqs/SqsOverviewMetricServiceAdapter.d.ts +7 -0
  97. package/built/src/drivers/providers/metrics/adapters/sqs/SqsOverviewMetricServiceAdapter.js +81 -0
  98. package/built/src/drivers/providers/metrics/adapters/sqs/SqsOverviewMetricServiceAdapter.js.map +1 -0
  99. package/built/src/drivers/providers/metrics/adapters/sqs/index.d.ts +2 -0
  100. package/built/src/drivers/providers/metrics/adapters/sqs/index.js +6 -0
  101. package/built/src/drivers/providers/metrics/adapters/sqs/index.js.map +1 -0
  102. package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsAvailability.d.ts +23 -0
  103. package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsAvailability.js +69 -0
  104. package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsAvailability.js.map +1 -0
  105. package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsCollector.d.ts +24 -0
  106. package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsCollector.js +49 -0
  107. package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsCollector.js.map +1 -0
  108. package/built/src/drivers/providers/metrics/cloudwatch/alignSeriesByTimestamp.d.ts +2 -0
  109. package/built/src/drivers/providers/metrics/cloudwatch/alignSeriesByTimestamp.js +16 -0
  110. package/built/src/drivers/providers/metrics/cloudwatch/alignSeriesByTimestamp.js.map +1 -0
  111. package/built/src/drivers/providers/metrics/cloudwatch/cloudWatchMetricsTransport.d.ts +21 -0
  112. package/built/src/drivers/providers/metrics/cloudwatch/cloudWatchMetricsTransport.js +193 -0
  113. package/built/src/drivers/providers/metrics/cloudwatch/cloudWatchMetricsTransport.js.map +1 -0
  114. package/built/src/drivers/providers/metrics/cloudwatch/collectAcrossMetricEndpoints.d.ts +6 -0
  115. package/built/src/drivers/providers/metrics/cloudwatch/collectAcrossMetricEndpoints.js +99 -0
  116. package/built/src/drivers/providers/metrics/cloudwatch/collectAcrossMetricEndpoints.js.map +1 -0
  117. package/built/src/drivers/providers/metrics/cloudwatch/deriveMetricSeries.d.ts +2 -0
  118. package/built/src/drivers/providers/metrics/cloudwatch/deriveMetricSeries.js +100 -0
  119. package/built/src/drivers/providers/metrics/cloudwatch/deriveMetricSeries.js.map +1 -0
  120. package/built/src/drivers/providers/metrics/cloudwatch/index.d.ts +7 -0
  121. package/built/src/drivers/providers/metrics/cloudwatch/index.js +11 -0
  122. package/built/src/drivers/providers/metrics/cloudwatch/index.js.map +1 -0
  123. package/built/src/drivers/providers/metrics/cloudwatch/metricPeriod.d.ts +2 -0
  124. package/built/src/drivers/providers/metrics/cloudwatch/metricPeriod.js +16 -0
  125. package/built/src/drivers/providers/metrics/cloudwatch/metricPeriod.js.map +1 -0
  126. package/built/src/drivers/providers/metrics/index.d.ts +3 -0
  127. package/built/src/drivers/providers/metrics/index.js +7 -0
  128. package/built/src/drivers/providers/metrics/index.js.map +1 -0
  129. package/built/src/drivers/providers/metrics/metricServiceAdapterRegistry.d.ts +8 -0
  130. package/built/src/drivers/providers/metrics/metricServiceAdapterRegistry.js +27 -0
  131. package/built/src/drivers/providers/metrics/metricServiceAdapterRegistry.js.map +1 -0
  132. package/built/src/drivers/providers/performance/DynamoDbPerformanceTuningProvider.d.ts +60 -0
  133. package/built/src/drivers/providers/performance/DynamoDbPerformanceTuningProvider.js +751 -0
  134. package/built/src/drivers/providers/performance/DynamoDbPerformanceTuningProvider.js.map +1 -0
  135. package/built/src/drivers/providers/performance/MySQLPerformanceTuningProvider.d.ts +29 -0
  136. package/built/src/drivers/providers/performance/MySQLPerformanceTuningProvider.js +350 -0
  137. package/built/src/drivers/providers/performance/MySQLPerformanceTuningProvider.js.map +1 -0
  138. package/built/src/drivers/providers/performance/OraclePerformanceTuningProvider.d.ts +37 -0
  139. package/built/src/drivers/providers/performance/OraclePerformanceTuningProvider.js +393 -0
  140. package/built/src/drivers/providers/performance/OraclePerformanceTuningProvider.js.map +1 -0
  141. package/built/src/drivers/providers/performance/PerformanceTuningContextProvider.d.ts +57 -0
  142. package/built/src/drivers/providers/performance/PerformanceTuningContextProvider.js +3 -0
  143. package/built/src/drivers/providers/performance/PerformanceTuningContextProvider.js.map +1 -0
  144. package/built/src/drivers/providers/performance/PostgresPerformanceTuningProvider.d.ts +24 -0
  145. package/built/src/drivers/providers/performance/PostgresPerformanceTuningProvider.js +328 -0
  146. package/built/src/drivers/providers/performance/PostgresPerformanceTuningProvider.js.map +1 -0
  147. package/built/src/drivers/providers/performance/SQLServerPerformanceTuningProvider.d.ts +29 -0
  148. package/built/src/drivers/providers/performance/SQLServerPerformanceTuningProvider.js +420 -0
  149. package/built/src/drivers/providers/performance/SQLServerPerformanceTuningProvider.js.map +1 -0
  150. package/built/src/drivers/providers/performance/dynamoDbCapacity.d.ts +38 -0
  151. package/built/src/drivers/providers/performance/dynamoDbCapacity.js +111 -0
  152. package/built/src/drivers/providers/performance/dynamoDbCapacity.js.map +1 -0
  153. package/built/src/drivers/providers/performance/dynamoDbCloudWatchMetrics.d.ts +20 -0
  154. package/built/src/drivers/providers/performance/dynamoDbCloudWatchMetrics.js +221 -0
  155. package/built/src/drivers/providers/performance/dynamoDbCloudWatchMetrics.js.map +1 -0
  156. package/built/src/drivers/providers/performance/dynamoPartiqlAccessPattern.d.ts +18 -0
  157. package/built/src/drivers/providers/performance/dynamoPartiqlAccessPattern.js +736 -0
  158. package/built/src/drivers/providers/performance/dynamoPartiqlAccessPattern.js.map +1 -0
  159. package/built/src/drivers/providers/performance/index.d.ts +23 -0
  160. package/built/src/drivers/providers/performance/index.js +27 -0
  161. package/built/src/drivers/providers/performance/index.js.map +1 -0
  162. package/built/src/drivers/providers/performance/mysqlActualPlanTextParser.d.ts +26 -0
  163. package/built/src/drivers/providers/performance/mysqlActualPlanTextParser.js +181 -0
  164. package/built/src/drivers/providers/performance/mysqlActualPlanTextParser.js.map +1 -0
  165. package/built/src/drivers/providers/performance/mysqlCatalogMapper.d.ts +11 -0
  166. package/built/src/drivers/providers/performance/mysqlCatalogMapper.js +218 -0
  167. package/built/src/drivers/providers/performance/mysqlCatalogMapper.js.map +1 -0
  168. package/built/src/drivers/providers/performance/mysqlPlanParser.d.ts +11 -0
  169. package/built/src/drivers/providers/performance/mysqlPlanParser.js +209 -0
  170. package/built/src/drivers/providers/performance/mysqlPlanParser.js.map +1 -0
  171. package/built/src/drivers/providers/performance/oracleActualPlanTextParser.d.ts +10 -0
  172. package/built/src/drivers/providers/performance/oracleActualPlanTextParser.js +245 -0
  173. package/built/src/drivers/providers/performance/oracleActualPlanTextParser.js.map +1 -0
  174. package/built/src/drivers/providers/performance/oracleCatalogMapper.d.ts +11 -0
  175. package/built/src/drivers/providers/performance/oracleCatalogMapper.js +226 -0
  176. package/built/src/drivers/providers/performance/oracleCatalogMapper.js.map +1 -0
  177. package/built/src/drivers/providers/performance/oraclePlanParser.d.ts +18 -0
  178. package/built/src/drivers/providers/performance/oraclePlanParser.js +223 -0
  179. package/built/src/drivers/providers/performance/oraclePlanParser.js.map +1 -0
  180. package/built/src/drivers/providers/performance/performanceTuningDiagnosticHelpers.d.ts +2 -0
  181. package/built/src/drivers/providers/performance/performanceTuningDiagnosticHelpers.js +13 -0
  182. package/built/src/drivers/providers/performance/performanceTuningDiagnosticHelpers.js.map +1 -0
  183. package/built/src/drivers/providers/performance/planNodeMath.d.ts +20 -0
  184. package/built/src/drivers/providers/performance/planNodeMath.js +82 -0
  185. package/built/src/drivers/providers/performance/planNodeMath.js.map +1 -0
  186. package/built/src/drivers/providers/performance/postgresCatalogMapper.d.ts +20 -0
  187. package/built/src/drivers/providers/performance/postgresCatalogMapper.js +287 -0
  188. package/built/src/drivers/providers/performance/postgresCatalogMapper.js.map +1 -0
  189. package/built/src/drivers/providers/performance/postgresPlanParser.d.ts +13 -0
  190. package/built/src/drivers/providers/performance/postgresPlanParser.js +258 -0
  191. package/built/src/drivers/providers/performance/postgresPlanParser.js.map +1 -0
  192. package/built/src/drivers/providers/performance/sqlServerActualPlanXmlParser.d.ts +10 -0
  193. package/built/src/drivers/providers/performance/sqlServerActualPlanXmlParser.js +252 -0
  194. package/built/src/drivers/providers/performance/sqlServerActualPlanXmlParser.js.map +1 -0
  195. package/built/src/drivers/providers/performance/sqlServerCatalogMapper.d.ts +20 -0
  196. package/built/src/drivers/providers/performance/sqlServerCatalogMapper.js +254 -0
  197. package/built/src/drivers/providers/performance/sqlServerCatalogMapper.js.map +1 -0
  198. package/built/src/drivers/providers/performance/sqlServerPlanParser.d.ts +10 -0
  199. package/built/src/drivers/providers/performance/sqlServerPlanParser.js +199 -0
  200. package/built/src/drivers/providers/performance/sqlServerPlanParser.js.map +1 -0
  201. package/built/src/drivers/providers/performance/vendorRowCoercion.d.ts +6 -0
  202. package/built/src/drivers/providers/performance/vendorRowCoercion.js +42 -0
  203. package/built/src/drivers/providers/performance/vendorRowCoercion.js.map +1 -0
  204. package/built/src/drivers/providers/rdbDashboard/RdbDashboardProvider.d.ts +8 -0
  205. package/built/src/drivers/providers/rdbDashboard/RdbDashboardProvider.js +3 -0
  206. package/built/src/drivers/providers/rdbDashboard/RdbDashboardProvider.js.map +1 -0
  207. package/built/src/drivers/providers/rdbDashboard/RdbSampleAccumulator.d.ts +22 -0
  208. package/built/src/drivers/providers/rdbDashboard/RdbSampleAccumulator.js +331 -0
  209. package/built/src/drivers/providers/rdbDashboard/RdbSampleAccumulator.js.map +1 -0
  210. package/built/src/drivers/providers/rdbDashboard/index.d.ts +9 -0
  211. package/built/src/drivers/providers/rdbDashboard/index.js +13 -0
  212. package/built/src/drivers/providers/rdbDashboard/index.js.map +1 -0
  213. package/built/src/drivers/providers/rdbDashboard/rdbDashboardErrors.d.ts +3 -0
  214. package/built/src/drivers/providers/rdbDashboard/rdbDashboardErrors.js +10 -0
  215. package/built/src/drivers/providers/rdbDashboard/rdbDashboardErrors.js.map +1 -0
  216. package/built/src/drivers/providers/rdbDashboard/rdbDashboardValueUtils.d.ts +7 -0
  217. package/built/src/drivers/providers/rdbDashboard/rdbDashboardValueUtils.js +31 -0
  218. package/built/src/drivers/providers/rdbDashboard/rdbDashboardValueUtils.js.map +1 -0
  219. package/built/src/drivers/providers/rdbDashboard/validateRdbDashboard.d.ts +3 -0
  220. package/built/src/drivers/providers/rdbDashboard/validateRdbDashboard.js +73 -0
  221. package/built/src/drivers/providers/rdbDashboard/validateRdbDashboard.js.map +1 -0
  222. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/MySQLRdbDashboardProvider.d.ts +16 -0
  223. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/MySQLRdbDashboardProvider.js +247 -0
  224. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/MySQLRdbDashboardProvider.js.map +1 -0
  225. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/index.d.ts +3 -0
  226. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/index.js +7 -0
  227. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/index.js.map +1 -0
  228. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardCatalog.d.ts +4 -0
  229. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardCatalog.js +279 -0
  230. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardCatalog.js.map +1 -0
  231. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardQueries.d.ts +5 -0
  232. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardQueries.js +41 -0
  233. package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardQueries.js.map +1 -0
  234. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/OracleRdbDashboardProvider.d.ts +21 -0
  235. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/OracleRdbDashboardProvider.js +420 -0
  236. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/OracleRdbDashboardProvider.js.map +1 -0
  237. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/index.d.ts +3 -0
  238. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/index.js +7 -0
  239. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/index.js.map +1 -0
  240. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardCatalog.d.ts +12 -0
  241. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardCatalog.js +117 -0
  242. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardCatalog.js.map +1 -0
  243. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardQueries.d.ts +8 -0
  244. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardQueries.js +60 -0
  245. package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardQueries.js.map +1 -0
  246. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/PostgresRdbDashboardProvider.d.ts +13 -0
  247. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/PostgresRdbDashboardProvider.js +216 -0
  248. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/PostgresRdbDashboardProvider.js.map +1 -0
  249. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/index.d.ts +3 -0
  250. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/index.js +7 -0
  251. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/index.js.map +1 -0
  252. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardCatalog.d.ts +4 -0
  253. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardCatalog.js +218 -0
  254. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardCatalog.js.map +1 -0
  255. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardQueries.d.ts +3 -0
  256. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardQueries.js +70 -0
  257. package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardQueries.js.map +1 -0
  258. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/SQLiteRdbDashboardProvider.d.ts +20 -0
  259. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/SQLiteRdbDashboardProvider.js +259 -0
  260. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/SQLiteRdbDashboardProvider.js.map +1 -0
  261. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/index.d.ts +3 -0
  262. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/index.js +7 -0
  263. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/index.js.map +1 -0
  264. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardCatalog.d.ts +5 -0
  265. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardCatalog.js +135 -0
  266. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardCatalog.js.map +1 -0
  267. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardQueries.d.ts +4 -0
  268. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardQueries.js +14 -0
  269. package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardQueries.js.map +1 -0
  270. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/SQLServerRdbDashboardProvider.d.ts +16 -0
  271. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/SQLServerRdbDashboardProvider.js +301 -0
  272. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/SQLServerRdbDashboardProvider.js.map +1 -0
  273. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/index.d.ts +3 -0
  274. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/index.js +7 -0
  275. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/index.js.map +1 -0
  276. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.d.ts +4 -0
  277. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.js +130 -0
  278. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.js.map +1 -0
  279. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.d.ts +6 -0
  280. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.js +91 -0
  281. package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.js.map +1 -0
  282. package/built/src/helpers/ProposalHelper.js.map +1 -1
  283. package/built/src/helpers/SQLHelper.d.ts +1 -1
  284. package/built/src/helpers/SQLHelper.js +3 -1
  285. package/built/src/helpers/SQLHelper.js.map +1 -1
  286. package/built/src/helpers/dynamoDbBillingMode.d.ts +6 -0
  287. package/built/src/helpers/dynamoDbBillingMode.js +16 -0
  288. package/built/src/helpers/dynamoDbBillingMode.js.map +1 -0
  289. package/built/src/helpers/index.d.ts +1 -0
  290. package/built/src/helpers/index.js +1 -0
  291. package/built/src/helpers/index.js.map +1 -1
  292. package/built/src/helpers/prompts/Auth0PromptHelper.js.map +1 -1
  293. package/built/src/helpers/prompts/AwsPromptHelper.js.map +1 -1
  294. package/built/src/helpers/prompts/KeycloakPromptHelper.js.map +1 -1
  295. package/built/src/helpers/prompts/MemcachePromptHelper.js.map +1 -1
  296. package/built/src/helpers/prompts/MqttPromptHelper.js.map +1 -1
  297. package/built/src/helpers/prompts/RdsPromptHelper.js.map +1 -1
  298. package/built/src/helpers/prompts/RedisPromptHelper.js.map +1 -1
  299. package/built/src/helpers/prompts/SchemaPromptHelper.js.map +1 -1
  300. package/built/src/helpers/prompts/promptFormatUtils.js.map +1 -1
  301. package/built/src/helpers/sql/mutationQuery.js.map +1 -1
  302. package/built/src/helpers/sql/parameterNormalizer.js +2 -2
  303. package/built/src/helpers/sql/parameterNormalizer.js.map +1 -1
  304. package/built/src/helpers/sql/queryParser.js +272 -48
  305. package/built/src/helpers/sql/queryParser.js.map +1 -1
  306. package/built/src/helpers/sql/quote.d.ts +2 -0
  307. package/built/src/helpers/sql/quote.js +9 -2
  308. package/built/src/helpers/sql/quote.js.map +1 -1
  309. package/built/src/helpers/sql/selectQuery.js.map +1 -1
  310. package/built/src/resource/aws.d.ts +2 -1
  311. package/built/src/resource/aws.js +76 -2
  312. package/built/src/resource/aws.js.map +1 -1
  313. package/built/src/resource/base.d.ts +2 -1
  314. package/built/src/resource/base.js.map +1 -1
  315. package/built/src/resource/fromJson.js.map +1 -1
  316. package/built/src/resource/iam.js.map +1 -1
  317. package/built/src/resource/index.js.map +1 -1
  318. package/built/src/resource/keyValue.js.map +1 -1
  319. package/built/src/types/drivers/EstimatedBindParameter.d.ts +12 -0
  320. package/built/src/types/drivers/EstimatedBindParameter.js +3 -0
  321. package/built/src/types/drivers/EstimatedBindParameter.js.map +1 -0
  322. package/built/src/types/drivers/StatementStatistics.d.ts +13 -0
  323. package/built/src/types/drivers/StatementStatistics.js +10 -0
  324. package/built/src/types/drivers/StatementStatistics.js.map +1 -0
  325. package/built/src/types/drivers/index.d.ts +5 -0
  326. package/built/src/types/drivers/index.js +5 -0
  327. package/built/src/types/drivers/index.js.map +1 -1
  328. package/built/src/types/drivers/metrics/CloudWatchMetrics.d.ts +168 -0
  329. package/built/src/types/drivers/metrics/CloudWatchMetrics.js +3 -0
  330. package/built/src/types/drivers/metrics/CloudWatchMetrics.js.map +1 -0
  331. package/built/src/types/drivers/metrics/index.d.ts +1 -0
  332. package/built/src/types/drivers/metrics/index.js +5 -0
  333. package/built/src/types/drivers/metrics/index.js.map +1 -0
  334. package/built/src/types/drivers/performance/DynamoDbPerformanceTuningCapabilities.d.ts +12 -0
  335. package/built/src/types/drivers/performance/DynamoDbPerformanceTuningCapabilities.js +3 -0
  336. package/built/src/types/drivers/performance/DynamoDbPerformanceTuningCapabilities.js.map +1 -0
  337. package/built/src/types/drivers/performance/DynamoDbPerformanceTuningContext.d.ts +302 -0
  338. package/built/src/types/drivers/performance/DynamoDbPerformanceTuningContext.js +7 -0
  339. package/built/src/types/drivers/performance/DynamoDbPerformanceTuningContext.js.map +1 -0
  340. package/built/src/types/drivers/performance/DynamoDbPerformanceTuningDiagnostic.d.ts +13 -0
  341. package/built/src/types/drivers/performance/DynamoDbPerformanceTuningDiagnostic.js +3 -0
  342. package/built/src/types/drivers/performance/DynamoDbPerformanceTuningDiagnostic.js.map +1 -0
  343. package/built/src/types/drivers/performance/PerformanceTuningCapabilities.d.ts +17 -0
  344. package/built/src/types/drivers/performance/PerformanceTuningCapabilities.js +3 -0
  345. package/built/src/types/drivers/performance/PerformanceTuningCapabilities.js.map +1 -0
  346. package/built/src/types/drivers/performance/PerformanceTuningContext.d.ts +263 -0
  347. package/built/src/types/drivers/performance/PerformanceTuningContext.js +3 -0
  348. package/built/src/types/drivers/performance/PerformanceTuningContext.js.map +1 -0
  349. package/built/src/types/drivers/performance/PerformanceTuningDiagnostic.d.ts +28 -0
  350. package/built/src/types/drivers/performance/PerformanceTuningDiagnostic.js +3 -0
  351. package/built/src/types/drivers/performance/PerformanceTuningDiagnostic.js.map +1 -0
  352. package/built/src/types/drivers/performance/PlanNode.d.ts +37 -0
  353. package/built/src/types/drivers/performance/PlanNode.js +3 -0
  354. package/built/src/types/drivers/performance/PlanNode.js.map +1 -0
  355. package/built/src/types/drivers/performance/index.d.ts +7 -0
  356. package/built/src/types/drivers/performance/index.js +11 -0
  357. package/built/src/types/drivers/performance/index.js.map +1 -0
  358. package/built/src/types/drivers/rdbDashboard/RdbDashboardCapabilities.d.ts +30 -0
  359. package/built/src/types/drivers/rdbDashboard/RdbDashboardCapabilities.js +3 -0
  360. package/built/src/types/drivers/rdbDashboard/RdbDashboardCapabilities.js.map +1 -0
  361. package/built/src/types/drivers/rdbDashboard/RdbDashboardDefinition.d.ts +134 -0
  362. package/built/src/types/drivers/rdbDashboard/RdbDashboardDefinition.js +14 -0
  363. package/built/src/types/drivers/rdbDashboard/RdbDashboardDefinition.js.map +1 -0
  364. package/built/src/types/drivers/rdbDashboard/RdbDashboardSample.d.ts +69 -0
  365. package/built/src/types/drivers/rdbDashboard/RdbDashboardSample.js +3 -0
  366. package/built/src/types/drivers/rdbDashboard/RdbDashboardSample.js.map +1 -0
  367. package/built/src/types/drivers/rdbDashboard/index.d.ts +3 -0
  368. package/built/src/types/drivers/rdbDashboard/index.js +7 -0
  369. package/built/src/types/drivers/rdbDashboard/index.js.map +1 -0
  370. package/built/src/types/helpers/index.js.map +1 -1
  371. package/built/src/types/index.d.ts +1 -0
  372. package/built/src/types/index.js +1 -0
  373. package/built/src/types/index.js.map +1 -1
  374. package/built/src/types/observability/dashboardLaunchCapability.d.ts +11 -0
  375. package/built/src/types/observability/dashboardLaunchCapability.js +22 -0
  376. package/built/src/types/observability/dashboardLaunchCapability.js.map +1 -0
  377. package/built/src/types/observability/index.d.ts +1 -0
  378. package/built/src/types/observability/index.js +5 -0
  379. package/built/src/types/observability/index.js.map +1 -0
  380. package/built/src/types/resource/AwsCfnStackAttributes.js.map +1 -1
  381. package/built/src/types/resource/AwsDynamoTableAttributes.d.ts +13 -0
  382. package/built/src/types/resource/AwsServiceType.d.ts +1 -1
  383. package/built/src/types/resource/AwsSupplyCredentialType.js.map +1 -1
  384. package/built/src/types/resource/ConnectionSetting.js.map +1 -1
  385. package/built/src/types/resource/OracleColumnType.js.map +1 -1
  386. package/built/src/types/resource/RedisKeyType.d.ts +1 -1
  387. package/built/src/types/resource/ResourceType.js.map +1 -1
  388. package/built/src/types/resource/SQLServerColumnType.js.map +1 -1
  389. package/built/src/utils/bindParameterEstimator.d.ts +22 -0
  390. package/built/src/utils/bindParameterEstimator.js +400 -0
  391. package/built/src/utils/bindParameterEstimator.js.map +1 -0
  392. package/built/src/utils/cfn/applicationDiagram.js.map +1 -1
  393. package/built/src/utils/cfn/applicationRelations.js.map +1 -1
  394. package/built/src/utils/cfn/cfnDependencyGraphDiagram.js.map +1 -1
  395. package/built/src/utils/cfn/deploymentTopology.js.map +1 -1
  396. package/built/src/utils/cfn/diagramFileModel.js.map +1 -1
  397. package/built/src/utils/cfn/drawio/cfnDependencyGraphDiagram.js.map +1 -1
  398. package/built/src/utils/cfn/drawio/commonCells.js.map +1 -1
  399. package/built/src/utils/cfn/drawio/multiAzInfrastructureDiagram.js.map +1 -1
  400. package/built/src/utils/cfn/drawioApplicationDiagram.js.map +1 -1
  401. package/built/src/utils/cfn/drawioInfrastructureDiagrams.js.map +1 -1
  402. package/built/src/utils/cfn/drawioXml.js.map +1 -1
  403. package/built/src/utils/cfn/generateDiagram.js.map +1 -1
  404. package/built/src/utils/cfn/icons.js.map +1 -1
  405. package/built/src/utils/cfn/index.js.map +1 -1
  406. package/built/src/utils/cfn/intrinsics.js.map +1 -1
  407. package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtection.js.map +1 -1
  408. package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtectionDiagram.js.map +1 -1
  409. package/built/src/utils/cfn/naming.js.map +1 -1
  410. package/built/src/utils/cfn/resourceDependencies.js.map +1 -1
  411. package/built/src/utils/cfn/templateParsing.js.map +1 -1
  412. package/built/src/utils/cfn/viewpoints.js.map +1 -1
  413. package/built/src/utils/csv.js.map +1 -1
  414. package/built/src/utils/dbType.js.map +1 -1
  415. package/built/src/utils/diagramLayout/elkLayoutEngine.js.map +1 -1
  416. package/built/src/utils/diagramLayout/index.js.map +1 -1
  417. package/built/src/utils/diagramLayout/normalizeLayout.js.map +1 -1
  418. package/built/src/utils/drawio/drawioXml.js.map +1 -1
  419. package/built/src/utils/drawio/index.js.map +1 -1
  420. package/built/src/utils/dynamoDbPerformanceTuningContextValidator.d.ts +3 -0
  421. package/built/src/utils/dynamoDbPerformanceTuningContextValidator.js +440 -0
  422. package/built/src/utils/dynamoDbPerformanceTuningContextValidator.js.map +1 -0
  423. package/built/src/utils/er/erDiagramDrawioGenerator.js.map +1 -1
  424. package/built/src/utils/er/erDiagramDrawioGeneratorAuto.js.map +1 -1
  425. package/built/src/utils/er/erDiagramGenerator.js.map +1 -1
  426. package/built/src/utils/er/index.d.ts +1 -0
  427. package/built/src/utils/er/index.js +3 -1
  428. package/built/src/utils/er/index.js.map +1 -1
  429. package/built/src/utils/er/performanceQueryDiagram.d.ts +18 -0
  430. package/built/src/utils/er/performanceQueryDiagram.js +381 -0
  431. package/built/src/utils/er/performanceQueryDiagram.js.map +1 -0
  432. package/built/src/utils/index.d.ts +5 -0
  433. package/built/src/utils/index.js +5 -0
  434. package/built/src/utils/index.js.map +1 -1
  435. package/built/src/utils/log/buildSqlExecutions.js.map +1 -1
  436. package/built/src/utils/log/constant/base.js.map +1 -1
  437. package/built/src/utils/log/constant/logEventSplitPreset.js.map +1 -1
  438. package/built/src/utils/log/constant/sqlLogParsePreset.js.map +1 -1
  439. package/built/src/utils/log/detect/presetDetector.js.map +1 -1
  440. package/built/src/utils/log/extract/runExtractors.js.map +1 -1
  441. package/built/src/utils/log/logSummary.js.map +1 -1
  442. package/built/src/utils/log/rdh/convertExtractedSqlRdhResult.js.map +1 -1
  443. package/built/src/utils/log/sql/removeSqlComments.js.map +1 -1
  444. package/built/src/utils/log/validator.js.map +1 -1
  445. package/built/src/utils/performanceTuningContext.d.ts +45 -0
  446. package/built/src/utils/performanceTuningContext.js +149 -0
  447. package/built/src/utils/performanceTuningContext.js.map +1 -0
  448. package/built/src/utils/performanceTuningContextValidator.d.ts +3 -0
  449. package/built/src/utils/performanceTuningContextValidator.js +364 -0
  450. package/built/src/utils/performanceTuningContextValidator.js.map +1 -0
  451. package/built/src/utils/statementStatistics.d.ts +11 -0
  452. package/built/src/utils/statementStatistics.js +39 -0
  453. package/built/src/utils/statementStatistics.js.map +1 -0
  454. package/package.json +37 -31
@@ -0,0 +1,172 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.S3OverviewMetricServiceAdapter = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const types_1 = require("../../../../../types");
6
+ const overviewMetricAdapterUtils_1 = require("../overview/overviewMetricAdapterUtils");
7
+ const PROVIDER_ID = 'aws.s3.overview';
8
+ const NAMESPACE = 'AWS/S3';
9
+ const DISCOVERY_CONCURRENCY = 10;
10
+ function mapWithConcurrency(values, concurrency, task) {
11
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
12
+ const result = new Array(values.length);
13
+ let nextIndex = 0;
14
+ const worker = () => tslib_1.__awaiter(this, void 0, void 0, function* () {
15
+ for (;;) {
16
+ const index = nextIndex++;
17
+ if (index >= values.length)
18
+ return;
19
+ result[index] = yield task(values[index], index);
20
+ }
21
+ });
22
+ yield Promise.all(Array.from({ length: Math.min(concurrency, values.length) }, () => worker()));
23
+ return result;
24
+ });
25
+ }
26
+ function resourceRegion(resource, input) {
27
+ var _a;
28
+ if (input.endpoint)
29
+ return input.region;
30
+ const region = (_a = resource.attributes) === null || _a === void 0 ? void 0 : _a.region;
31
+ return typeof region === 'string' && region ? region : undefined;
32
+ }
33
+ class S3OverviewMetricServiceAdapter {
34
+ constructor(options) {
35
+ this.options = options;
36
+ this.providerId = PROVIDER_ID;
37
+ }
38
+ resolveTarget(input) {
39
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
40
+ const base = (0, overviewMetricAdapterUtils_1.resolveOverviewTarget)({
41
+ source: input,
42
+ providerId: this.providerId,
43
+ namespace: NAMESPACE,
44
+ resourceType: types_1.ResourceType.Bucket,
45
+ serviceLabel: 'S3',
46
+ });
47
+ const candidates = (0, overviewMetricAdapterUtils_1.overviewResources)(base);
48
+ const resolved = yield mapWithConcurrency(candidates, DISCOVERY_CONCURRENCY, (resource) => tslib_1.__awaiter(this, void 0, void 0, function* () {
49
+ var _a;
50
+ const region = resourceRegion(resource, input);
51
+ if (!region)
52
+ return undefined;
53
+ const endpoint = {
54
+ region,
55
+ endpoint: input.endpoint,
56
+ scope: 'regional',
57
+ };
58
+ try {
59
+ const storageTypes = yield this.options
60
+ .getAvailability(endpoint)
61
+ .discoverDimensionValues({
62
+ namespace: NAMESPACE,
63
+ metricName: 'BucketSizeBytes',
64
+ matchingDimensions: [
65
+ { Name: 'BucketName', Value: resource.displayName },
66
+ ],
67
+ dimensionName: 'StorageType',
68
+ signal: input.signal,
69
+ });
70
+ return storageTypes.length > 0
71
+ ? Object.assign(Object.assign({}, resource), { endpoint, storageTypes }) : undefined;
72
+ }
73
+ catch (error) {
74
+ if ((_a = input.signal) === null || _a === void 0 ? void 0 : _a.aborted)
75
+ throw error;
76
+ return undefined;
77
+ }
78
+ }));
79
+ const resources = resolved.filter((resource) => resource !== undefined);
80
+ return Object.assign(Object.assign({}, base), { identity: Object.assign(Object.assign({}, base.identity), { scopeLabel: 'S3 buckets across resolved bucket regions' }), attributes: Object.assign(Object.assign({}, base.attributes), { resources, evaluatedResourceCount: candidates.length, unavailableResourceCount: candidates.length - resources.length }) });
81
+ });
82
+ }
83
+ resolveDashboard(target, selection) {
84
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
85
+ var _a, _b, _c;
86
+ const resources = (0, overviewMetricAdapterUtils_1.overviewResources)(target);
87
+ const display = (0, overviewMetricAdapterUtils_1.resolveOverviewSeriesLimit)(selection, resources.length);
88
+ const queries = [];
89
+ const derive = [];
90
+ resources.forEach((resource, resourceIndex) => {
91
+ const inputSeriesIds = resource.storageTypes.map((storageType, storageTypeIndex) => {
92
+ const id = `bucket_${resourceIndex}_storage_${storageTypeIndex}`;
93
+ queries.push({
94
+ id,
95
+ namespace: NAMESPACE,
96
+ metricName: 'BucketSizeBytes',
97
+ statistic: 'Average',
98
+ label: `${resource.displayName} / ${storageType}`,
99
+ unit: 'bytes',
100
+ nativePeriodSeconds: 86400,
101
+ dimensions: [
102
+ { Name: 'BucketName', Value: resource.displayName },
103
+ { Name: 'StorageType', Value: storageType },
104
+ ],
105
+ endpoint: resource.endpoint,
106
+ visible: false,
107
+ });
108
+ return id;
109
+ });
110
+ derive.push({
111
+ id: `bucket_${resourceIndex}_total`,
112
+ label: resource.displayName,
113
+ unit: 'bytes',
114
+ operation: 'sum',
115
+ inputSeriesIds,
116
+ });
117
+ });
118
+ const unavailableCount = Number((_a = target.attributes.unavailableResourceCount) !== null && _a !== void 0 ? _a : 0);
119
+ const evaluatedCount = Number((_b = target.attributes.evaluatedResourceCount) !== null && _b !== void 0 ? _b : resources.length);
120
+ const totalCount = Number((_c = target.attributes.totalResourceCount) !== null && _c !== void 0 ? _c : evaluatedCount);
121
+ const capCaveat = totalCount > evaluatedCount
122
+ ? ` The first ${evaluatedCount} bucket names are evaluated out of ${totalCount}; narrow the connection resource filter for a different set.`
123
+ : '';
124
+ const discoveryCaveat = unavailableCount > 0
125
+ ? ` ${unavailableCount} bucket(s) were excluded because their region or recent BucketSizeBytes storage types could not be resolved.`
126
+ : '';
127
+ const panel = {
128
+ id: 'bucket-size-comparison',
129
+ title: 'Daily bucket size comparison',
130
+ purpose: 'capacity',
131
+ visualization: 'bar',
132
+ emission: 'default',
133
+ scope: { kind: 'dimension-group', label: 'S3 buckets' },
134
+ cost: {
135
+ publication: 'included',
136
+ read: 'get-metric-data',
137
+ note: `${queries.length} storage-class CloudWatch series are read for ${resources.length} evaluated buckets.`,
138
+ },
139
+ queries,
140
+ derive,
141
+ seriesDisplay: { limit: display.limit, orderBy: 'latest-desc' },
142
+ emptyHint: 'S3 publishes storage metrics once per day. New or empty buckets can have no recently discoverable BucketSizeBytes series.',
143
+ caveat: `Ranking is calculated after ${queries.length} CloudWatch series are queried for ${resources.length} buckets; the toolbar shows the actual per-refresh read count.${capCaveat} Each bucket total sums every BucketSizeBytes StorageType currently published for that bucket, including metadata overhead and staging storage; missing inputs remain gaps.${discoveryCaveat}`,
144
+ };
145
+ return {
146
+ providerId: this.providerId,
147
+ variant: target.variant,
148
+ target: target.identity,
149
+ tabs: [
150
+ {
151
+ id: 'overview',
152
+ title: 'Bucket comparison',
153
+ defaultRange: '30d',
154
+ autoRefreshAllowed: false,
155
+ selectors: [
156
+ (0, overviewMetricAdapterUtils_1.overviewSeriesLimitSelector)(display.value, resources.length, queries.length),
157
+ ],
158
+ panels: [panel],
159
+ },
160
+ ],
161
+ prerequisites: {},
162
+ };
163
+ });
164
+ }
165
+ probePrerequisites(_target, _panel) {
166
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
167
+ return { status: 'configured' };
168
+ });
169
+ }
170
+ }
171
+ exports.S3OverviewMetricServiceAdapter = S3OverviewMetricServiceAdapter;
172
+ //# sourceMappingURL=S3OverviewMetricServiceAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"S3OverviewMetricServiceAdapter.js","sourceRoot":"","sources":["../../../../../../../src/drivers/providers/metrics/adapters/s3/S3OverviewMetricServiceAdapter.ts"],"names":[],"mappings":";;;;AAAA,gDAY8B;AAE9B,uFAKgD;AAEhD,MAAM,WAAW,GAAG,iBAAiB,CAAC;AACtC,MAAM,SAAS,GAAG,QAAQ,CAAC;AAC3B,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAWjC,SAAe,kBAAkB,CAC/B,MAAoB,EACpB,WAAmB,EACnB,IAA6C;;QAE7C,MAAM,MAAM,GAAG,IAAI,KAAK,CAAI,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,MAAM,MAAM,GAAG,GAAwB,EAAE;YACvC,SAAS,CAAC;gBACR,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;gBAC1B,IAAI,KAAK,IAAI,MAAM,CAAC,MAAM;oBAAE,OAAO;gBACnC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YACnD,CAAC;QACH,CAAC,CAAA,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAChE,MAAM,EAAE,CACT,CACF,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;CAAA;AAED,SAAS,cAAc,CACrB,QAAgC,EAChC,KAA+B;;IAG/B,IAAI,KAAK,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IACxC,MAAM,MAAM,GAAG,MAAA,QAAQ,CAAC,UAAU,0CAAE,MAAM,CAAC;IAC3C,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC;AAED,MAAa,8BAA8B;IAGzC,YACmB,OAA8C;QAA9C,YAAO,GAAP,OAAO,CAAuC;QAHxD,eAAU,GAAG,WAAW,CAAC;IAI/B,CAAC;IAEE,aAAa,CACjB,KAA+B;;YAE/B,MAAM,IAAI,GAAG,IAAA,kDAAqB,EAAC;gBACjC,MAAM,EAAE,KAAK;gBACb,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,SAAS,EAAE,SAAS;gBACpB,YAAY,EAAE,oBAAY,CAAC,MAAM;gBACjC,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,IAAA,8CAAiB,EAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CACvC,UAAU,EACV,qBAAqB,EACrB,CAAO,QAAQ,EAA2C,EAAE;;gBAC1D,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBAC/C,IAAI,CAAC,MAAM;oBAAE,OAAO,SAAS,CAAC;gBAC9B,MAAM,QAAQ,GAAmB;oBAC/B,MAAM;oBACN,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,KAAK,EAAE,UAAU;iBAClB,CAAC;gBACF,IAAI,CAAC;oBACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO;yBACpC,eAAe,CAAC,QAAQ,CAAC;yBACzB,uBAAuB,CAAC;wBACvB,SAAS,EAAE,SAAS;wBACpB,UAAU,EAAE,iBAAiB;wBAC7B,kBAAkB,EAAE;4BAClB,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,CAAC,WAAW,EAAE;yBACpD;wBACD,aAAa,EAAE,aAAa;wBAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;qBACrB,CAAC,CAAC;oBACL,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC;wBAC5B,CAAC,iCAAM,QAAQ,KAAE,QAAQ,EAAE,YAAY,IACvC,CAAC,CAAC,SAAS,CAAC;gBAChB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,MAAA,KAAK,CAAC,MAAM,0CAAE,OAAO;wBAAE,MAAM,KAAK,CAAC;oBACvC,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC,CAAA,CACF,CAAC;YACF,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAC/B,CAAC,QAAQ,EAAkC,EAAE,CAAC,QAAQ,KAAK,SAAS,CACrE,CAAC;YACF,uCACK,IAAI,KACP,QAAQ,kCACH,IAAI,CAAC,QAAQ,KAChB,UAAU,EAAE,2CAA2C,KAEzD,UAAU,kCACL,IAAI,CAAC,UAAU,KAClB,SAAS,EACT,sBAAsB,EAAE,UAAU,CAAC,MAAM,EACzC,wBAAwB,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,OAEhE;QACJ,CAAC;KAAA;IAEK,gBAAgB,CACpB,MAA4B,EAC5B,SAA8B;;;YAE9B,MAAM,SAAS,GAAG,IAAA,8CAAiB,EACjC,MAAM,CAC0B,CAAC;YACnC,MAAM,OAAO,GAAG,IAAA,uDAA0B,EAAC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YACxE,MAAM,OAAO,GAA0B,EAAE,CAAC;YAC1C,MAAM,MAAM,GAA+C,EAAE,CAAC;YAC9D,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE;gBAC5C,MAAM,cAAc,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAC9C,CAAC,WAAW,EAAE,gBAAgB,EAAE,EAAE;oBAChC,MAAM,EAAE,GAAG,UAAU,aAAa,YAAY,gBAAgB,EAAE,CAAC;oBACjE,OAAO,CAAC,IAAI,CAAC;wBACX,EAAE;wBACF,SAAS,EAAE,SAAS;wBACpB,UAAU,EAAE,iBAAiB;wBAC7B,SAAS,EAAE,SAAS;wBACpB,KAAK,EAAE,GAAG,QAAQ,CAAC,WAAW,MAAM,WAAW,EAAE;wBACjD,IAAI,EAAE,OAAO;wBACb,mBAAmB,EAAE,KAAM;wBAC3B,UAAU,EAAE;4BACV,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,CAAC,WAAW,EAAE;4BACnD,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE;yBAC5C;wBACD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;wBAC3B,OAAO,EAAE,KAAK;qBACf,CAAC,CAAC;oBACH,OAAO,EAAE,CAAC;gBACZ,CAAC,CACF,CAAC;gBACF,MAAM,CAAC,IAAI,CAAC;oBACV,EAAE,EAAE,UAAU,aAAa,QAAQ;oBACnC,KAAK,EAAE,QAAQ,CAAC,WAAW;oBAC3B,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE,KAAK;oBAChB,cAAc;iBACf,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAM,CAC7B,MAAA,MAAM,CAAC,UAAU,CAAC,wBAAwB,mCAAI,CAAC,CAChD,CAAC;YACF,MAAM,cAAc,GAAG,MAAM,CAC3B,MAAA,MAAM,CAAC,UAAU,CAAC,sBAAsB,mCAAI,SAAS,CAAC,MAAM,CAC7D,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,CACvB,MAAA,MAAM,CAAC,UAAU,CAAC,kBAAkB,mCAAI,cAAc,CACvD,CAAC;YACF,MAAM,SAAS,GACb,UAAU,GAAG,cAAc;gBACzB,CAAC,CAAC,cAAc,cAAc,sCAAsC,UAAU,8DAA8D;gBAC5I,CAAC,CAAC,EAAE,CAAC;YACT,MAAM,eAAe,GACnB,gBAAgB,GAAG,CAAC;gBAClB,CAAC,CAAC,IAAI,gBAAgB,8GAA8G;gBACpI,CAAC,CAAC,EAAE,CAAC;YACT,MAAM,KAAK,GAAwB;gBACjC,EAAE,EAAE,wBAAwB;gBAC5B,KAAK,EAAE,8BAA8B;gBACrC,OAAO,EAAE,UAAU;gBACnB,aAAa,EAAE,KAAK;gBACpB,QAAQ,EAAE,SAAS;gBACnB,KAAK,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,EAAE;gBACvD,IAAI,EAAE;oBACJ,WAAW,EAAE,UAAU;oBACvB,IAAI,EAAE,iBAAiB;oBACvB,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,iDAAiD,SAAS,CAAC,MAAM,qBAAqB;iBAC9G;gBACD,OAAO;gBACP,MAAM;gBACN,aAAa,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE;gBAC/D,SAAS,EACP,2HAA2H;gBAC7H,MAAM,EAAE,+BAA+B,OAAO,CAAC,MAAM,sCAAsC,SAAS,CAAC,MAAM,iEAAiE,SAAS,8KAA8K,eAAe,EAAE;aACrX,CAAC;YACF,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,MAAM,CAAC,QAAQ;gBACvB,IAAI,EAAE;oBACJ;wBACE,EAAE,EAAE,UAAU;wBACd,KAAK,EAAE,mBAAmB;wBAC1B,YAAY,EAAE,KAAK;wBACnB,kBAAkB,EAAE,KAAK;wBACzB,SAAS,EAAE;4BACT,IAAA,wDAA2B,EACzB,OAAO,CAAC,KAAK,EACb,SAAS,CAAC,MAAM,EAChB,OAAO,CAAC,MAAM,CACf;yBACF;wBACD,MAAM,EAAE,CAAC,KAAK,CAAC;qBAChB;iBACF;gBACD,aAAa,EAAE,EAAE;aAClB,CAAC;QACJ,CAAC;KAAA;IAEK,kBAAkB,CACtB,OAA6B,EAC7B,MAA2B;;YAE3B,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QAClC,CAAC;KAAA;CACF;AA9KD,wEA8KC"}
@@ -0,0 +1,2 @@
1
+ export * from './S3MetricServiceAdapter';
2
+ export * from './S3OverviewMetricServiceAdapter';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./S3MetricServiceAdapter"), exports);
5
+ tslib_1.__exportStar(require("./S3OverviewMetricServiceAdapter"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/drivers/providers/metrics/adapters/s3/index.ts"],"names":[],"mappings":";;;AAAA,mEAAyC;AACzC,2EAAiD"}
@@ -0,0 +1,13 @@
1
+ import { MetricPrerequisiteResult, MetricServiceAdapter, MetricViewSelection, ResolveMetricTargetInput, ResolvedMetricDashboard, ResolvedMetricPanel, ResolvedMetricTarget } from '../../../../../types';
2
+ import { CloudWatchMetricsAvailability } from '../../cloudwatch';
3
+ export type SesMetricServiceAdapterOptions = {
4
+ getAvailability(endpoint: ResolvedMetricTarget['endpoint']): CloudWatchMetricsAvailability;
5
+ };
6
+ export declare class SesMetricServiceAdapter implements MetricServiceAdapter {
7
+ private readonly options;
8
+ readonly providerId = "aws.ses.account-region";
9
+ constructor(options: SesMetricServiceAdapterOptions);
10
+ resolveTarget(input: ResolveMetricTargetInput): Promise<ResolvedMetricTarget>;
11
+ resolveDashboard(target: ResolvedMetricTarget, _selection: MetricViewSelection): Promise<ResolvedMetricDashboard>;
12
+ probePrerequisites(_target: ResolvedMetricTarget, _panel: ResolvedMetricPanel): Promise<MetricPrerequisiteResult>;
13
+ }
@@ -0,0 +1,183 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SesMetricServiceAdapter = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const PROVIDER_ID = 'aws.ses.account-region';
6
+ const NAMESPACE = 'AWS/SES';
7
+ const OPTIONAL_EVENT_METRICS = [
8
+ 'Open',
9
+ 'Click',
10
+ 'Subscription',
11
+ 'RenderingFailure',
12
+ ];
13
+ const INCLUDED_COST = {
14
+ publication: 'included',
15
+ read: 'get-metric-data',
16
+ note: 'Account-level SES metric publication is included; CloudWatch API read charges are separate.',
17
+ };
18
+ const EVENT_COST = {
19
+ publication: 'service-option',
20
+ read: 'get-metric-data',
21
+ note: 'Fine-grained SES event publishing through a CloudWatch event destination can incur detailed monitoring charges.',
22
+ };
23
+ function query(id, metricName, statistic, label, unit) {
24
+ return {
25
+ id,
26
+ namespace: NAMESPACE,
27
+ metricName,
28
+ statistic,
29
+ label,
30
+ unit,
31
+ nativePeriodSeconds: 300,
32
+ dimensions: [],
33
+ };
34
+ }
35
+ function panels(scopeLabel, observedMetricNames) {
36
+ const scope = { kind: 'account-region', label: scopeLabel };
37
+ const result = [
38
+ {
39
+ id: 'sending-volume',
40
+ title: 'Sending and delivery',
41
+ purpose: 'workload',
42
+ visualization: 'line',
43
+ emission: 'activity-dependent',
44
+ scope,
45
+ cost: INCLUDED_COST,
46
+ queries: [
47
+ query('send', 'Send', 'Sum', 'Sent', 'count'),
48
+ query('delivery', 'Delivery', 'Sum', 'Delivered', 'count'),
49
+ ],
50
+ emptyHint: 'SES metrics can remain absent until the corresponding sending event occurs in this Region.',
51
+ caveat: 'These values cover the AWS account in the selected Region, not an individual SES identity.',
52
+ },
53
+ {
54
+ id: 'delivery-problems',
55
+ title: 'Delivery problems',
56
+ purpose: 'health',
57
+ visualization: 'line',
58
+ emission: 'activity-dependent',
59
+ scope,
60
+ cost: INCLUDED_COST,
61
+ queries: [
62
+ query('bounce', 'Bounce', 'Sum', 'Bounces', 'count'),
63
+ query('complaint', 'Complaint', 'Sum', 'Complaints', 'count'),
64
+ query('reject', 'Reject', 'Sum', 'Rejects', 'count'),
65
+ query('delivery_delay', 'DeliveryDelay', 'Sum', 'Delivery delays', 'count'),
66
+ ],
67
+ emptyHint: 'No datapoints means no matching SES event metric was published; it is not a measured zero.',
68
+ },
69
+ {
70
+ id: 'reputation',
71
+ title: 'Account reputation rates',
72
+ purpose: 'health',
73
+ visualization: 'line',
74
+ emission: 'activity-dependent',
75
+ scope,
76
+ cost: INCLUDED_COST,
77
+ queries: [
78
+ query('reputation_bounce_rate', 'Reputation.BounceRate', 'Average', 'Bounce rate', 'percent'),
79
+ query('reputation_complaint_rate', 'Reputation.ComplaintRate', 'Average', 'Complaint rate', 'percent'),
80
+ ],
81
+ thresholds: [
82
+ { value: 0.05, label: 'Bounce rate 5%', severity: 'warn' },
83
+ { value: 0.001, label: 'Complaint rate 0.1%', severity: 'warn' },
84
+ ],
85
+ emptyHint: 'Reputation metrics might not appear until SES has sending activity in this Region.',
86
+ caveat: 'These are the reputation rates published directly by SES. They are not calculated as events divided by sends for the selected time range.',
87
+ },
88
+ ];
89
+ const observed = new Set(observedMetricNames);
90
+ const optionalQueries = OPTIONAL_EVENT_METRICS.filter((metricName) => observed.has(metricName)).map((metricName) => query(`observed_${metricName.toLowerCase()}`, metricName, 'Sum', metricName === 'RenderingFailure' ? 'Rendering failures' : metricName, 'count'));
91
+ if (optionalQueries.length > 0) {
92
+ result.push({
93
+ id: 'observed-events',
94
+ title: 'Additional observed events',
95
+ purpose: 'workload',
96
+ visualization: 'line',
97
+ emission: 'opt-in',
98
+ scope,
99
+ cost: EVENT_COST,
100
+ queries: optionalQueries,
101
+ collapsedByDefault: true,
102
+ caveat: 'Only dimensionless SES event series recently visible to CloudWatch are shown. Message-tag drill-down is not included in this version.',
103
+ });
104
+ }
105
+ return result;
106
+ }
107
+ class SesMetricServiceAdapter {
108
+ constructor(options) {
109
+ this.options = options;
110
+ this.providerId = PROVIDER_ID;
111
+ }
112
+ resolveTarget(input) {
113
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
114
+ var _a;
115
+ if (!input.region) {
116
+ throw new Error('SES metric target region is unavailable.');
117
+ }
118
+ const endpoint = {
119
+ region: input.region,
120
+ endpoint: input.endpoint,
121
+ scope: 'regional',
122
+ };
123
+ let observedMetricNames = [];
124
+ try {
125
+ observedMetricNames = yield this.options
126
+ .getAvailability(endpoint)
127
+ .discoverMetricNames({
128
+ namespace: NAMESPACE,
129
+ matchingDimensions: [],
130
+ exactDimensions: true,
131
+ signal: input.signal,
132
+ });
133
+ }
134
+ catch (error) {
135
+ if ((_a = input.signal) === null || _a === void 0 ? void 0 : _a.aborted)
136
+ throw error;
137
+ }
138
+ const scopeLabel = `SES account in ${input.region}`;
139
+ return {
140
+ providerId: this.providerId,
141
+ variant: 'account-region',
142
+ endpoint,
143
+ defaultNamespace: NAMESPACE,
144
+ identity: {
145
+ resourceKey: input.resourceKey,
146
+ displayName: 'SES account',
147
+ scopeLabel,
148
+ },
149
+ attributes: { observedMetricNames, scopeLabel },
150
+ };
151
+ });
152
+ }
153
+ resolveDashboard(target, _selection) {
154
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
155
+ if (target.providerId !== this.providerId) {
156
+ throw new Error(`SES adapter cannot resolve providerId: ${target.providerId}`);
157
+ }
158
+ return {
159
+ providerId: this.providerId,
160
+ variant: target.variant,
161
+ target: target.identity,
162
+ tabs: [
163
+ {
164
+ id: 'overview',
165
+ title: 'Overview',
166
+ defaultRange: '3d',
167
+ autoRefreshAllowed: true,
168
+ selectors: [],
169
+ panels: panels(String(target.attributes.scopeLabel), target.attributes.observedMetricNames),
170
+ },
171
+ ],
172
+ prerequisites: {},
173
+ };
174
+ });
175
+ }
176
+ probePrerequisites(_target, _panel) {
177
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
178
+ return { status: 'configured' };
179
+ });
180
+ }
181
+ }
182
+ exports.SesMetricServiceAdapter = SesMetricServiceAdapter;
183
+ //# sourceMappingURL=SesMetricServiceAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SesMetricServiceAdapter.js","sourceRoot":"","sources":["../../../../../../../src/drivers/providers/metrics/adapters/ses/SesMetricServiceAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from './SesMetricServiceAdapter';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./SesMetricServiceAdapter"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/drivers/providers/metrics/adapters/ses/index.ts"],"names":[],"mappings":";;;AAAA,oEAA0C"}
@@ -0,0 +1,7 @@
1
+ import { MetricPrerequisiteResult, MetricServiceAdapter, MetricViewSelection, ResolveMetricTargetInput, ResolvedMetricDashboard, ResolvedMetricPanel, ResolvedMetricTarget } from '../../../../../types';
2
+ export declare class SqsMetricServiceAdapter implements MetricServiceAdapter {
3
+ readonly providerId = "aws.sqs.queue";
4
+ resolveTarget(input: ResolveMetricTargetInput): Promise<ResolvedMetricTarget>;
5
+ resolveDashboard(target: ResolvedMetricTarget, _selection: MetricViewSelection): Promise<ResolvedMetricDashboard>;
6
+ probePrerequisites(_target: ResolvedMetricTarget, _panel: ResolvedMetricPanel): Promise<MetricPrerequisiteResult>;
7
+ }
@@ -0,0 +1,174 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SqsMetricServiceAdapter = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const PROVIDER_ID = 'aws.sqs.queue';
6
+ const NAMESPACE = 'AWS/SQS';
7
+ const INCLUDED_COST = {
8
+ publication: 'included',
9
+ read: 'get-metric-data',
10
+ note: 'CloudWatch API read charges are separate from SQS metric publication.',
11
+ };
12
+ function query(id, metricName, statistic, label, unit, queueName) {
13
+ return {
14
+ id,
15
+ namespace: NAMESPACE,
16
+ metricName,
17
+ statistic,
18
+ label,
19
+ unit,
20
+ nativePeriodSeconds: 60,
21
+ dimensions: [{ Name: 'QueueName', Value: queueName }],
22
+ };
23
+ }
24
+ function standardPanels(queueName, isDlq) {
25
+ const backlog = {
26
+ id: 'backlog',
27
+ title: isDlq ? 'DLQ backlog' : 'Backlog',
28
+ purpose: 'health',
29
+ visualization: 'stacked-area',
30
+ emission: 'activity-dependent',
31
+ scope: { kind: 'resource', label: queueName },
32
+ cost: INCLUDED_COST,
33
+ queries: [
34
+ query('messages_visible', 'ApproximateNumberOfMessagesVisible', 'Maximum', 'Visible', 'count', queueName),
35
+ query('messages_in_flight', 'ApproximateNumberOfMessagesNotVisible', 'Maximum', 'In flight', 'count', queueName),
36
+ query('messages_delayed', 'ApproximateNumberOfMessagesDelayed', 'Maximum', 'Delayed', 'count', queueName),
37
+ ],
38
+ emptyHint: 'No datapoints does not prove the queue is empty. SQS can stop publishing metrics after prolonged inactivity.',
39
+ caveat: isDlq
40
+ ? 'Messages moved automatically by redrive are not counted in the DLQ NumberOfMessagesSent metric.'
41
+ : undefined,
42
+ };
43
+ return [
44
+ backlog,
45
+ {
46
+ id: 'oldest-message',
47
+ title: 'Oldest message age',
48
+ purpose: 'health',
49
+ visualization: 'line',
50
+ emission: 'activity-dependent',
51
+ scope: { kind: 'resource', label: queueName },
52
+ cost: INCLUDED_COST,
53
+ queries: [
54
+ query('oldest_message_age', 'ApproximateAgeOfOldestMessage', 'Maximum', 'Oldest message age', 'seconds', queueName),
55
+ ],
56
+ emptyHint: 'SQS metrics can be delayed after an inactive queue becomes active again.',
57
+ },
58
+ {
59
+ id: 'message-flow',
60
+ title: 'Message flow',
61
+ purpose: 'workload',
62
+ visualization: 'line',
63
+ emission: 'activity-dependent',
64
+ scope: { kind: 'resource', label: queueName },
65
+ cost: INCLUDED_COST,
66
+ queries: [
67
+ query('messages_sent', 'NumberOfMessagesSent', 'Sum', 'Sent', 'count', queueName),
68
+ query('messages_received', 'NumberOfMessagesReceived', 'Sum', 'Received', 'count', queueName),
69
+ query('messages_deleted', 'NumberOfMessagesDeleted', 'Sum', 'Deleted', 'count', queueName),
70
+ query('empty_receives', 'NumberOfEmptyReceives', 'Sum', 'Empty receives', 'count', queueName),
71
+ ],
72
+ caveat: 'Sent, received, and deleted counts describe activity; they do not prove one-to-one message delivery.',
73
+ },
74
+ {
75
+ id: 'message-size',
76
+ title: 'Message size',
77
+ purpose: 'capacity',
78
+ visualization: 'line',
79
+ emission: 'activity-dependent',
80
+ scope: { kind: 'resource', label: queueName },
81
+ cost: INCLUDED_COST,
82
+ queries: [
83
+ query('message_size_average', 'SentMessageSize', 'Average', 'Average size', 'bytes', queueName),
84
+ query('message_size_maximum', 'SentMessageSize', 'Maximum', 'Maximum size', 'bytes', queueName),
85
+ ],
86
+ thresholds: [
87
+ { value: 1048576, label: 'SQS message limit', severity: 'error' },
88
+ ],
89
+ },
90
+ ];
91
+ }
92
+ class SqsMetricServiceAdapter {
93
+ constructor() {
94
+ this.providerId = PROVIDER_ID;
95
+ }
96
+ resolveTarget(input) {
97
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
98
+ var _a, _b;
99
+ if (!input.region) {
100
+ throw new Error('SQS metric target region is unavailable.');
101
+ }
102
+ const isFifo = ((_a = input.attributes) === null || _a === void 0 ? void 0 : _a.FifoQueue) === true;
103
+ return {
104
+ providerId: this.providerId,
105
+ variant: isFifo ? 'fifo' : 'standard',
106
+ endpoint: {
107
+ region: input.region,
108
+ endpoint: input.endpoint,
109
+ scope: 'regional',
110
+ },
111
+ defaultNamespace: NAMESPACE,
112
+ identity: {
113
+ resourceKey: input.resourceKey,
114
+ displayName: input.displayName,
115
+ scopeLabel: `Queue ${input.displayName}`,
116
+ dimensionIdentity: input.displayName,
117
+ },
118
+ attributes: {
119
+ queueName: input.displayName,
120
+ isFifo,
121
+ isDlq: ((_b = input.attributes) === null || _b === void 0 ? void 0 : _b.isDlq) === true,
122
+ },
123
+ };
124
+ });
125
+ }
126
+ resolveDashboard(target, _selection) {
127
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
128
+ if (target.providerId !== this.providerId) {
129
+ throw new Error(`SQS adapter cannot resolve providerId: ${target.providerId}`);
130
+ }
131
+ const queueName = String(target.attributes.queueName);
132
+ const isFifo = target.attributes.isFifo === true;
133
+ const panels = standardPanels(queueName, target.attributes.isDlq === true);
134
+ if (isFifo) {
135
+ panels.push({
136
+ id: 'fifo',
137
+ title: 'FIFO processing',
138
+ purpose: 'workload',
139
+ visualization: 'line',
140
+ emission: 'activity-dependent',
141
+ scope: { kind: 'resource', label: queueName },
142
+ cost: INCLUDED_COST,
143
+ queries: [
144
+ query('fifo_inflight_groups', 'ApproximateNumberOfGroupsWithInflightMessages', 'Maximum', 'Groups with in-flight messages', 'count', queueName),
145
+ query('fifo_deduplicated', 'NumberOfDeduplicatedSentMessages', 'Sum', 'Deduplicated sends', 'count', queueName),
146
+ ],
147
+ });
148
+ }
149
+ return {
150
+ providerId: this.providerId,
151
+ variant: target.variant,
152
+ target: target.identity,
153
+ tabs: [
154
+ {
155
+ id: 'overview',
156
+ title: 'Overview',
157
+ defaultRange: '1h',
158
+ autoRefreshAllowed: true,
159
+ selectors: [],
160
+ panels,
161
+ },
162
+ ],
163
+ prerequisites: {},
164
+ };
165
+ });
166
+ }
167
+ probePrerequisites(_target, _panel) {
168
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
169
+ return { status: 'configured' };
170
+ });
171
+ }
172
+ }
173
+ exports.SqsMetricServiceAdapter = SqsMetricServiceAdapter;
174
+ //# sourceMappingURL=SqsMetricServiceAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SqsMetricServiceAdapter.js","sourceRoot":"","sources":["../../../../../../../src/drivers/providers/metrics/adapters/sqs/SqsMetricServiceAdapter.ts"],"names":[],"mappings":";;;;AAWA,MAAM,WAAW,GAAG,eAAe,CAAC;AACpC,MAAM,SAAS,GAAG,SAAS,CAAC;AAC5B,MAAM,aAAa,GAAG;IACpB,WAAW,EAAE,UAAmB;IAChC,IAAI,EAAE,iBAA0B;IAChC,IAAI,EAAE,uEAAuE;CAC9E,CAAC;AAEF,SAAS,KAAK,CACZ,EAAU,EACV,UAAkB,EAClB,SAAwC,EACxC,KAAa,EACb,IAAmC,EACnC,SAAiB;IAEjB,OAAO;QACL,EAAE;QACF,SAAS,EAAE,SAAS;QACpB,UAAU;QACV,SAAS;QACT,KAAK;QACL,IAAI;QACJ,mBAAmB,EAAE,EAAE;QACvB,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;KACtD,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CACrB,SAAiB,EACjB,KAAc;IAEd,MAAM,OAAO,GAAwB;QACnC,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;QACxC,OAAO,EAAE,QAAQ;QACjB,aAAa,EAAE,cAAc;QAC7B,QAAQ,EAAE,oBAAoB;QAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;QAC7C,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE;YACP,KAAK,CACH,kBAAkB,EAClB,oCAAoC,EACpC,SAAS,EACT,SAAS,EACT,OAAO,EACP,SAAS,CACV;YACD,KAAK,CACH,oBAAoB,EACpB,uCAAuC,EACvC,SAAS,EACT,WAAW,EACX,OAAO,EACP,SAAS,CACV;YACD,KAAK,CACH,kBAAkB,EAClB,oCAAoC,EACpC,SAAS,EACT,SAAS,EACT,OAAO,EACP,SAAS,CACV;SACF;QACD,SAAS,EACP,8GAA8G;QAChH,MAAM,EAAE,KAAK;YACX,CAAC,CAAC,iGAAiG;YACnG,CAAC,CAAC,SAAS;KACd,CAAC;IAEF,OAAO;QACL,OAAO;QACP;YACE,EAAE,EAAE,gBAAgB;YACpB,KAAK,EAAE,oBAAoB;YAC3B,OAAO,EAAE,QAAQ;YACjB,aAAa,EAAE,MAAM;YACrB,QAAQ,EAAE,oBAAoB;YAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;YAC7C,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE;gBACP,KAAK,CACH,oBAAoB,EACpB,+BAA+B,EAC/B,SAAS,EACT,oBAAoB,EACpB,SAAS,EACT,SAAS,CACV;aACF;YACD,SAAS,EACP,0EAA0E;SAC7E;QACD;YACE,EAAE,EAAE,cAAc;YAClB,KAAK,EAAE,cAAc;YACrB,OAAO,EAAE,UAAU;YACnB,aAAa,EAAE,MAAM;YACrB,QAAQ,EAAE,oBAAoB;YAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;YAC7C,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE;gBACP,KAAK,CACH,eAAe,EACf,sBAAsB,EACtB,KAAK,EACL,MAAM,EACN,OAAO,EACP,SAAS,CACV;gBACD,KAAK,CACH,mBAAmB,EACnB,0BAA0B,EAC1B,KAAK,EACL,UAAU,EACV,OAAO,EACP,SAAS,CACV;gBACD,KAAK,CACH,kBAAkB,EAClB,yBAAyB,EACzB,KAAK,EACL,SAAS,EACT,OAAO,EACP,SAAS,CACV;gBACD,KAAK,CACH,gBAAgB,EAChB,uBAAuB,EACvB,KAAK,EACL,gBAAgB,EAChB,OAAO,EACP,SAAS,CACV;aACF;YACD,MAAM,EACJ,sGAAsG;SACzG;QACD;YACE,EAAE,EAAE,cAAc;YAClB,KAAK,EAAE,cAAc;YACrB,OAAO,EAAE,UAAU;YACnB,aAAa,EAAE,MAAM;YACrB,QAAQ,EAAE,oBAAoB;YAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;YAC7C,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE;gBACP,KAAK,CACH,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,cAAc,EACd,OAAO,EACP,SAAS,CACV;gBACD,KAAK,CACH,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,cAAc,EACd,OAAO,EACP,SAAS,CACV;aACF;YACD,UAAU,EAAE;gBACV,EAAE,KAAK,EAAE,OAAS,EAAE,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,OAAO,EAAE;aACpE;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAa,uBAAuB;IAApC;QACW,eAAU,GAAG,WAAW,CAAC;IAkGpC,CAAC;IAhGO,aAAa,CACjB,KAA+B;;;YAE/B,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC9D,CAAC;YACD,MAAM,MAAM,GAAG,CAAA,MAAA,KAAK,CAAC,UAAU,0CAAE,SAAS,MAAK,IAAI,CAAC;YACpD,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU;gBACrC,QAAQ,EAAE;oBACR,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,KAAK,EAAE,UAAU;iBAClB;gBACD,gBAAgB,EAAE,SAAS;gBAC3B,QAAQ,EAAE;oBACR,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,UAAU,EAAE,SAAS,KAAK,CAAC,WAAW,EAAE;oBACxC,iBAAiB,EAAE,KAAK,CAAC,WAAW;iBACrC;gBACD,UAAU,EAAE;oBACV,SAAS,EAAE,KAAK,CAAC,WAAW;oBAC5B,MAAM;oBACN,KAAK,EAAE,CAAA,MAAA,KAAK,CAAC,UAAU,0CAAE,KAAK,MAAK,IAAI;iBACxC;aACF,CAAC;QACJ,CAAC;KAAA;IAEK,gBAAgB,CACpB,MAA4B,EAC5B,UAA+B;;YAE/B,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CACb,0CAA0C,MAAM,CAAC,UAAU,EAAE,CAC9D,CAAC;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC;YACjD,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;YAC3E,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,IAAI,CAAC;oBACV,EAAE,EAAE,MAAM;oBACV,KAAK,EAAE,iBAAiB;oBACxB,OAAO,EAAE,UAAU;oBACnB,aAAa,EAAE,MAAM;oBACrB,QAAQ,EAAE,oBAAoB;oBAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;oBAC7C,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE;wBACP,KAAK,CACH,sBAAsB,EACtB,+CAA+C,EAC/C,SAAS,EACT,gCAAgC,EAChC,OAAO,EACP,SAAS,CACV;wBACD,KAAK,CACH,mBAAmB,EACnB,kCAAkC,EAClC,KAAK,EACL,oBAAoB,EACpB,OAAO,EACP,SAAS,CACV;qBACF;iBACF,CAAC,CAAC;YACL,CAAC;YAED,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,MAAM,CAAC,QAAQ;gBACvB,IAAI,EAAE;oBACJ;wBACE,EAAE,EAAE,UAAU;wBACd,KAAK,EAAE,UAAU;wBACjB,YAAY,EAAE,IAAI;wBAClB,kBAAkB,EAAE,IAAI;wBACxB,SAAS,EAAE,EAAE;wBACb,MAAM;qBACP;iBACF;gBACD,aAAa,EAAE,EAAE;aAClB,CAAC;QACJ,CAAC;KAAA;IAEK,kBAAkB,CACtB,OAA6B,EAC7B,MAA2B;;YAE3B,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QAClC,CAAC;KAAA;CACF;AAnGD,0DAmGC"}
@@ -0,0 +1,7 @@
1
+ import { MetricPrerequisiteResult, MetricServiceAdapter, MetricViewSelection, ResolveMetricTargetInput, ResolvedMetricDashboard, ResolvedMetricPanel, ResolvedMetricTarget } from '../../../../../types';
2
+ export declare class SqsOverviewMetricServiceAdapter implements MetricServiceAdapter {
3
+ readonly providerId = "aws.sqs.overview";
4
+ resolveTarget(input: ResolveMetricTargetInput): Promise<ResolvedMetricTarget>;
5
+ resolveDashboard(target: ResolvedMetricTarget, selection: MetricViewSelection): Promise<ResolvedMetricDashboard>;
6
+ probePrerequisites(_target: ResolvedMetricTarget, _panel: ResolvedMetricPanel): Promise<MetricPrerequisiteResult>;
7
+ }