@l-v-yonsama/multi-platform-database-drivers 2.0.0 → 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.
- package/README.md +1 -0
- package/built/schema/log-parse-config.schema.json +4 -4
- package/built/src/drivers/AwsDriver.d.ts +25 -1
- package/built/src/drivers/AwsDriver.js +189 -0
- package/built/src/drivers/AwsDriver.js.map +1 -1
- package/built/src/drivers/BaseDriver.js.map +1 -1
- package/built/src/drivers/DBDriverResolver.js.map +1 -1
- package/built/src/drivers/KeycloakDriver.js.map +1 -1
- package/built/src/drivers/MqttDriver.js.map +1 -1
- package/built/src/drivers/MySQLDriver.d.ts +10 -1
- package/built/src/drivers/MySQLDriver.js +130 -0
- package/built/src/drivers/MySQLDriver.js.map +1 -1
- package/built/src/drivers/OracleDriver.d.ts +14 -1
- package/built/src/drivers/OracleDriver.js +217 -2
- package/built/src/drivers/OracleDriver.js.map +1 -1
- package/built/src/drivers/PostgresDriver.d.ts +9 -1
- package/built/src/drivers/PostgresDriver.js +90 -2
- package/built/src/drivers/PostgresDriver.js.map +1 -1
- package/built/src/drivers/RDSBaseDriver.d.ts +26 -1
- package/built/src/drivers/RDSBaseDriver.js +601 -0
- package/built/src/drivers/RDSBaseDriver.js.map +1 -1
- package/built/src/drivers/RedisDriver.js.map +1 -1
- package/built/src/drivers/SQLServerDriver.d.ts +18 -1
- package/built/src/drivers/SQLServerDriver.js +282 -6
- package/built/src/drivers/SQLServerDriver.js.map +1 -1
- package/built/src/drivers/SQLiteDriver.d.ts +7 -1
- package/built/src/drivers/SQLiteDriver.js +33 -1
- package/built/src/drivers/SQLiteDriver.js.map +1 -1
- package/built/src/drivers/aws/AwsCloudFormationServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsDynamoServiceClient.d.ts +61 -5
- package/built/src/drivers/aws/AwsDynamoServiceClient.js +404 -108
- package/built/src/drivers/aws/AwsDynamoServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsS3ServiceClient.js +18 -6
- package/built/src/drivers/aws/AwsS3ServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsSQSServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsSecretsManagerServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsSsmServiceClient.js.map +1 -1
- package/built/src/drivers/aws/dynamoDbRdhSummary.d.ts +16 -0
- package/built/src/drivers/aws/dynamoDbRdhSummary.js +81 -0
- package/built/src/drivers/aws/dynamoDbRdhSummary.js.map +1 -0
- package/built/src/drivers/aws/dynamoDbResultMetadata.d.ts +9 -0
- package/built/src/drivers/aws/dynamoDbResultMetadata.js +71 -0
- package/built/src/drivers/aws/dynamoDbResultMetadata.js.map +1 -0
- package/built/src/drivers/index.d.ts +1 -0
- package/built/src/drivers/index.js +1 -0
- package/built/src/drivers/index.js.map +1 -1
- package/built/src/drivers/keycloak/resourceTreeBuilder.js.map +1 -1
- package/built/src/drivers/keycloak/scanResultBuilder.js.map +1 -1
- package/built/src/drivers/memcache/helper.js.map +1 -1
- package/built/src/drivers/providers/index.d.ts +3 -0
- package/built/src/drivers/providers/index.js +7 -0
- package/built/src/drivers/providers/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbMetricServiceAdapter.d.ts +8 -0
- package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbMetricServiceAdapter.js +421 -0
- package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbMetricServiceAdapter.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbOverviewMetricServiceAdapter.d.ts +7 -0
- package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbOverviewMetricServiceAdapter.js +84 -0
- package/built/src/drivers/providers/metrics/adapters/dynamodb/DynamoDbOverviewMetricServiceAdapter.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/dynamodb/index.d.ts +2 -0
- package/built/src/drivers/providers/metrics/adapters/dynamodb/index.js +6 -0
- package/built/src/drivers/providers/metrics/adapters/dynamodb/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/index.d.ts +6 -0
- package/built/src/drivers/providers/metrics/adapters/index.js +10 -0
- package/built/src/drivers/providers/metrics/adapters/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/logs/CloudWatchLogsMetricServiceAdapter.d.ts +7 -0
- package/built/src/drivers/providers/metrics/adapters/logs/CloudWatchLogsMetricServiceAdapter.js +132 -0
- package/built/src/drivers/providers/metrics/adapters/logs/CloudWatchLogsMetricServiceAdapter.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/logs/index.d.ts +1 -0
- package/built/src/drivers/providers/metrics/adapters/logs/index.js +5 -0
- package/built/src/drivers/providers/metrics/adapters/logs/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/overview/index.d.ts +1 -0
- package/built/src/drivers/providers/metrics/adapters/overview/index.js +5 -0
- package/built/src/drivers/providers/metrics/adapters/overview/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/overview/overviewMetricAdapterUtils.d.ts +26 -0
- package/built/src/drivers/providers/metrics/adapters/overview/overviewMetricAdapterUtils.js +80 -0
- package/built/src/drivers/providers/metrics/adapters/overview/overviewMetricAdapterUtils.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/s3/S3MetricServiceAdapter.d.ts +21 -0
- package/built/src/drivers/providers/metrics/adapters/s3/S3MetricServiceAdapter.js +478 -0
- package/built/src/drivers/providers/metrics/adapters/s3/S3MetricServiceAdapter.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/s3/S3OverviewMetricServiceAdapter.d.ts +13 -0
- package/built/src/drivers/providers/metrics/adapters/s3/S3OverviewMetricServiceAdapter.js +172 -0
- package/built/src/drivers/providers/metrics/adapters/s3/S3OverviewMetricServiceAdapter.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/s3/index.d.ts +2 -0
- package/built/src/drivers/providers/metrics/adapters/s3/index.js +6 -0
- package/built/src/drivers/providers/metrics/adapters/s3/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/ses/SesMetricServiceAdapter.d.ts +13 -0
- package/built/src/drivers/providers/metrics/adapters/ses/SesMetricServiceAdapter.js +183 -0
- package/built/src/drivers/providers/metrics/adapters/ses/SesMetricServiceAdapter.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/ses/index.d.ts +1 -0
- package/built/src/drivers/providers/metrics/adapters/ses/index.js +5 -0
- package/built/src/drivers/providers/metrics/adapters/ses/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/sqs/SqsMetricServiceAdapter.d.ts +7 -0
- package/built/src/drivers/providers/metrics/adapters/sqs/SqsMetricServiceAdapter.js +174 -0
- package/built/src/drivers/providers/metrics/adapters/sqs/SqsMetricServiceAdapter.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/sqs/SqsOverviewMetricServiceAdapter.d.ts +7 -0
- package/built/src/drivers/providers/metrics/adapters/sqs/SqsOverviewMetricServiceAdapter.js +81 -0
- package/built/src/drivers/providers/metrics/adapters/sqs/SqsOverviewMetricServiceAdapter.js.map +1 -0
- package/built/src/drivers/providers/metrics/adapters/sqs/index.d.ts +2 -0
- package/built/src/drivers/providers/metrics/adapters/sqs/index.js +6 -0
- package/built/src/drivers/providers/metrics/adapters/sqs/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsAvailability.d.ts +23 -0
- package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsAvailability.js +69 -0
- package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsAvailability.js.map +1 -0
- package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsCollector.d.ts +24 -0
- package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsCollector.js +49 -0
- package/built/src/drivers/providers/metrics/cloudwatch/CloudWatchMetricsCollector.js.map +1 -0
- package/built/src/drivers/providers/metrics/cloudwatch/alignSeriesByTimestamp.d.ts +2 -0
- package/built/src/drivers/providers/metrics/cloudwatch/alignSeriesByTimestamp.js +16 -0
- package/built/src/drivers/providers/metrics/cloudwatch/alignSeriesByTimestamp.js.map +1 -0
- package/built/src/drivers/providers/metrics/cloudwatch/cloudWatchMetricsTransport.d.ts +21 -0
- package/built/src/drivers/providers/metrics/cloudwatch/cloudWatchMetricsTransport.js +193 -0
- package/built/src/drivers/providers/metrics/cloudwatch/cloudWatchMetricsTransport.js.map +1 -0
- package/built/src/drivers/providers/metrics/cloudwatch/collectAcrossMetricEndpoints.d.ts +6 -0
- package/built/src/drivers/providers/metrics/cloudwatch/collectAcrossMetricEndpoints.js +99 -0
- package/built/src/drivers/providers/metrics/cloudwatch/collectAcrossMetricEndpoints.js.map +1 -0
- package/built/src/drivers/providers/metrics/cloudwatch/deriveMetricSeries.d.ts +2 -0
- package/built/src/drivers/providers/metrics/cloudwatch/deriveMetricSeries.js +100 -0
- package/built/src/drivers/providers/metrics/cloudwatch/deriveMetricSeries.js.map +1 -0
- package/built/src/drivers/providers/metrics/cloudwatch/index.d.ts +7 -0
- package/built/src/drivers/providers/metrics/cloudwatch/index.js +11 -0
- package/built/src/drivers/providers/metrics/cloudwatch/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/cloudwatch/metricPeriod.d.ts +2 -0
- package/built/src/drivers/providers/metrics/cloudwatch/metricPeriod.js +16 -0
- package/built/src/drivers/providers/metrics/cloudwatch/metricPeriod.js.map +1 -0
- package/built/src/drivers/providers/metrics/index.d.ts +3 -0
- package/built/src/drivers/providers/metrics/index.js +7 -0
- package/built/src/drivers/providers/metrics/index.js.map +1 -0
- package/built/src/drivers/providers/metrics/metricServiceAdapterRegistry.d.ts +8 -0
- package/built/src/drivers/providers/metrics/metricServiceAdapterRegistry.js +27 -0
- package/built/src/drivers/providers/metrics/metricServiceAdapterRegistry.js.map +1 -0
- package/built/src/drivers/providers/performance/DynamoDbPerformanceTuningProvider.d.ts +60 -0
- package/built/src/drivers/providers/performance/DynamoDbPerformanceTuningProvider.js +751 -0
- package/built/src/drivers/providers/performance/DynamoDbPerformanceTuningProvider.js.map +1 -0
- package/built/src/drivers/providers/performance/MySQLPerformanceTuningProvider.d.ts +29 -0
- package/built/src/drivers/providers/performance/MySQLPerformanceTuningProvider.js +350 -0
- package/built/src/drivers/providers/performance/MySQLPerformanceTuningProvider.js.map +1 -0
- package/built/src/drivers/providers/performance/OraclePerformanceTuningProvider.d.ts +37 -0
- package/built/src/drivers/providers/performance/OraclePerformanceTuningProvider.js +393 -0
- package/built/src/drivers/providers/performance/OraclePerformanceTuningProvider.js.map +1 -0
- package/built/src/drivers/providers/performance/PerformanceTuningContextProvider.d.ts +57 -0
- package/built/src/drivers/providers/performance/PerformanceTuningContextProvider.js +3 -0
- package/built/src/drivers/providers/performance/PerformanceTuningContextProvider.js.map +1 -0
- package/built/src/drivers/providers/performance/PostgresPerformanceTuningProvider.d.ts +24 -0
- package/built/src/drivers/providers/performance/PostgresPerformanceTuningProvider.js +328 -0
- package/built/src/drivers/providers/performance/PostgresPerformanceTuningProvider.js.map +1 -0
- package/built/src/drivers/providers/performance/SQLServerPerformanceTuningProvider.d.ts +29 -0
- package/built/src/drivers/providers/performance/SQLServerPerformanceTuningProvider.js +420 -0
- package/built/src/drivers/providers/performance/SQLServerPerformanceTuningProvider.js.map +1 -0
- package/built/src/drivers/providers/performance/dynamoDbCapacity.d.ts +38 -0
- package/built/src/drivers/providers/performance/dynamoDbCapacity.js +111 -0
- package/built/src/drivers/providers/performance/dynamoDbCapacity.js.map +1 -0
- package/built/src/drivers/providers/performance/dynamoDbCloudWatchMetrics.d.ts +20 -0
- package/built/src/drivers/providers/performance/dynamoDbCloudWatchMetrics.js +221 -0
- package/built/src/drivers/providers/performance/dynamoDbCloudWatchMetrics.js.map +1 -0
- package/built/src/drivers/providers/performance/dynamoPartiqlAccessPattern.d.ts +18 -0
- package/built/src/drivers/providers/performance/dynamoPartiqlAccessPattern.js +736 -0
- package/built/src/drivers/providers/performance/dynamoPartiqlAccessPattern.js.map +1 -0
- package/built/src/drivers/providers/performance/index.d.ts +23 -0
- package/built/src/drivers/providers/performance/index.js +27 -0
- package/built/src/drivers/providers/performance/index.js.map +1 -0
- package/built/src/drivers/providers/performance/mysqlActualPlanTextParser.d.ts +26 -0
- package/built/src/drivers/providers/performance/mysqlActualPlanTextParser.js +181 -0
- package/built/src/drivers/providers/performance/mysqlActualPlanTextParser.js.map +1 -0
- package/built/src/drivers/providers/performance/mysqlCatalogMapper.d.ts +11 -0
- package/built/src/drivers/providers/performance/mysqlCatalogMapper.js +218 -0
- package/built/src/drivers/providers/performance/mysqlCatalogMapper.js.map +1 -0
- package/built/src/drivers/providers/performance/mysqlPlanParser.d.ts +11 -0
- package/built/src/drivers/providers/performance/mysqlPlanParser.js +209 -0
- package/built/src/drivers/providers/performance/mysqlPlanParser.js.map +1 -0
- package/built/src/drivers/providers/performance/oracleActualPlanTextParser.d.ts +10 -0
- package/built/src/drivers/providers/performance/oracleActualPlanTextParser.js +245 -0
- package/built/src/drivers/providers/performance/oracleActualPlanTextParser.js.map +1 -0
- package/built/src/drivers/providers/performance/oracleCatalogMapper.d.ts +11 -0
- package/built/src/drivers/providers/performance/oracleCatalogMapper.js +226 -0
- package/built/src/drivers/providers/performance/oracleCatalogMapper.js.map +1 -0
- package/built/src/drivers/providers/performance/oraclePlanParser.d.ts +18 -0
- package/built/src/drivers/providers/performance/oraclePlanParser.js +223 -0
- package/built/src/drivers/providers/performance/oraclePlanParser.js.map +1 -0
- package/built/src/drivers/providers/performance/performanceTuningDiagnosticHelpers.d.ts +2 -0
- package/built/src/drivers/providers/performance/performanceTuningDiagnosticHelpers.js +13 -0
- package/built/src/drivers/providers/performance/performanceTuningDiagnosticHelpers.js.map +1 -0
- package/built/src/drivers/providers/performance/planNodeMath.d.ts +20 -0
- package/built/src/drivers/providers/performance/planNodeMath.js +82 -0
- package/built/src/drivers/providers/performance/planNodeMath.js.map +1 -0
- package/built/src/drivers/providers/performance/postgresCatalogMapper.d.ts +20 -0
- package/built/src/drivers/providers/performance/postgresCatalogMapper.js +287 -0
- package/built/src/drivers/providers/performance/postgresCatalogMapper.js.map +1 -0
- package/built/src/drivers/providers/performance/postgresPlanParser.d.ts +13 -0
- package/built/src/drivers/providers/performance/postgresPlanParser.js +258 -0
- package/built/src/drivers/providers/performance/postgresPlanParser.js.map +1 -0
- package/built/src/drivers/providers/performance/sqlServerActualPlanXmlParser.d.ts +10 -0
- package/built/src/drivers/providers/performance/sqlServerActualPlanXmlParser.js +252 -0
- package/built/src/drivers/providers/performance/sqlServerActualPlanXmlParser.js.map +1 -0
- package/built/src/drivers/providers/performance/sqlServerCatalogMapper.d.ts +20 -0
- package/built/src/drivers/providers/performance/sqlServerCatalogMapper.js +254 -0
- package/built/src/drivers/providers/performance/sqlServerCatalogMapper.js.map +1 -0
- package/built/src/drivers/providers/performance/sqlServerPlanParser.d.ts +10 -0
- package/built/src/drivers/providers/performance/sqlServerPlanParser.js +199 -0
- package/built/src/drivers/providers/performance/sqlServerPlanParser.js.map +1 -0
- package/built/src/drivers/providers/performance/vendorRowCoercion.d.ts +6 -0
- package/built/src/drivers/providers/performance/vendorRowCoercion.js +42 -0
- package/built/src/drivers/providers/performance/vendorRowCoercion.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/RdbDashboardProvider.d.ts +8 -0
- package/built/src/drivers/providers/rdbDashboard/RdbDashboardProvider.js +3 -0
- package/built/src/drivers/providers/rdbDashboard/RdbDashboardProvider.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/RdbSampleAccumulator.d.ts +22 -0
- package/built/src/drivers/providers/rdbDashboard/RdbSampleAccumulator.js +331 -0
- package/built/src/drivers/providers/rdbDashboard/RdbSampleAccumulator.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/index.d.ts +9 -0
- package/built/src/drivers/providers/rdbDashboard/index.js +13 -0
- package/built/src/drivers/providers/rdbDashboard/index.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/rdbDashboardErrors.d.ts +3 -0
- package/built/src/drivers/providers/rdbDashboard/rdbDashboardErrors.js +10 -0
- package/built/src/drivers/providers/rdbDashboard/rdbDashboardErrors.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/rdbDashboardValueUtils.d.ts +7 -0
- package/built/src/drivers/providers/rdbDashboard/rdbDashboardValueUtils.js +31 -0
- package/built/src/drivers/providers/rdbDashboard/rdbDashboardValueUtils.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/validateRdbDashboard.d.ts +3 -0
- package/built/src/drivers/providers/rdbDashboard/validateRdbDashboard.js +73 -0
- package/built/src/drivers/providers/rdbDashboard/validateRdbDashboard.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/MySQLRdbDashboardProvider.d.ts +16 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/MySQLRdbDashboardProvider.js +247 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/MySQLRdbDashboardProvider.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/index.d.ts +3 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/index.js +7 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/index.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardCatalog.d.ts +4 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardCatalog.js +279 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardCatalog.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardQueries.d.ts +5 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardQueries.js +41 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/mysql/mysqlDashboardQueries.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/OracleRdbDashboardProvider.d.ts +21 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/OracleRdbDashboardProvider.js +420 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/OracleRdbDashboardProvider.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/index.d.ts +3 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/index.js +7 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/index.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardCatalog.d.ts +12 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardCatalog.js +117 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardCatalog.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardQueries.d.ts +8 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardQueries.js +60 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/oracle/oracleDashboardQueries.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/PostgresRdbDashboardProvider.d.ts +13 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/PostgresRdbDashboardProvider.js +216 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/PostgresRdbDashboardProvider.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/index.d.ts +3 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/index.js +7 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/index.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardCatalog.d.ts +4 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardCatalog.js +218 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardCatalog.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardQueries.d.ts +3 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardQueries.js +70 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/postgres/postgresDashboardQueries.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/SQLiteRdbDashboardProvider.d.ts +20 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/SQLiteRdbDashboardProvider.js +259 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/SQLiteRdbDashboardProvider.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/index.d.ts +3 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/index.js +7 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/index.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardCatalog.d.ts +5 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardCatalog.js +135 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardCatalog.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardQueries.d.ts +4 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardQueries.js +14 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlite/sqliteDashboardQueries.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/SQLServerRdbDashboardProvider.d.ts +16 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/SQLServerRdbDashboardProvider.js +301 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/SQLServerRdbDashboardProvider.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/index.d.ts +3 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/index.js +7 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/index.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.d.ts +4 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.js +130 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.js.map +1 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.d.ts +6 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.js +91 -0
- package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.js.map +1 -0
- package/built/src/helpers/ProposalHelper.js.map +1 -1
- package/built/src/helpers/SQLHelper.d.ts +1 -1
- package/built/src/helpers/SQLHelper.js +3 -1
- package/built/src/helpers/SQLHelper.js.map +1 -1
- package/built/src/helpers/dynamoDbBillingMode.d.ts +6 -0
- package/built/src/helpers/dynamoDbBillingMode.js +16 -0
- package/built/src/helpers/dynamoDbBillingMode.js.map +1 -0
- package/built/src/helpers/index.d.ts +1 -0
- package/built/src/helpers/index.js +1 -0
- package/built/src/helpers/index.js.map +1 -1
- package/built/src/helpers/prompts/Auth0PromptHelper.js.map +1 -1
- package/built/src/helpers/prompts/AwsPromptHelper.js.map +1 -1
- package/built/src/helpers/prompts/KeycloakPromptHelper.js.map +1 -1
- package/built/src/helpers/prompts/MemcachePromptHelper.js.map +1 -1
- package/built/src/helpers/prompts/MqttPromptHelper.js.map +1 -1
- package/built/src/helpers/prompts/RdsPromptHelper.js.map +1 -1
- package/built/src/helpers/prompts/RedisPromptHelper.js.map +1 -1
- package/built/src/helpers/prompts/SchemaPromptHelper.js.map +1 -1
- package/built/src/helpers/prompts/promptFormatUtils.js.map +1 -1
- package/built/src/helpers/sql/mutationQuery.js.map +1 -1
- package/built/src/helpers/sql/parameterNormalizer.js +2 -2
- package/built/src/helpers/sql/parameterNormalizer.js.map +1 -1
- package/built/src/helpers/sql/queryParser.js +272 -48
- package/built/src/helpers/sql/queryParser.js.map +1 -1
- package/built/src/helpers/sql/quote.d.ts +2 -0
- package/built/src/helpers/sql/quote.js +9 -2
- package/built/src/helpers/sql/quote.js.map +1 -1
- package/built/src/helpers/sql/selectQuery.js.map +1 -1
- package/built/src/resource/aws.d.ts +2 -1
- package/built/src/resource/aws.js +76 -2
- package/built/src/resource/aws.js.map +1 -1
- package/built/src/resource/base.d.ts +2 -1
- package/built/src/resource/base.js.map +1 -1
- package/built/src/resource/fromJson.js.map +1 -1
- package/built/src/resource/iam.js.map +1 -1
- package/built/src/resource/index.js.map +1 -1
- package/built/src/resource/keyValue.js.map +1 -1
- package/built/src/types/drivers/EstimatedBindParameter.d.ts +12 -0
- package/built/src/types/drivers/EstimatedBindParameter.js +3 -0
- package/built/src/types/drivers/EstimatedBindParameter.js.map +1 -0
- package/built/src/types/drivers/StatementStatistics.d.ts +13 -0
- package/built/src/types/drivers/StatementStatistics.js +10 -0
- package/built/src/types/drivers/StatementStatistics.js.map +1 -0
- package/built/src/types/drivers/index.d.ts +5 -0
- package/built/src/types/drivers/index.js +5 -0
- package/built/src/types/drivers/index.js.map +1 -1
- package/built/src/types/drivers/metrics/CloudWatchMetrics.d.ts +168 -0
- package/built/src/types/drivers/metrics/CloudWatchMetrics.js +3 -0
- package/built/src/types/drivers/metrics/CloudWatchMetrics.js.map +1 -0
- package/built/src/types/drivers/metrics/index.d.ts +1 -0
- package/built/src/types/drivers/metrics/index.js +5 -0
- package/built/src/types/drivers/metrics/index.js.map +1 -0
- package/built/src/types/drivers/performance/DynamoDbPerformanceTuningCapabilities.d.ts +12 -0
- package/built/src/types/drivers/performance/DynamoDbPerformanceTuningCapabilities.js +3 -0
- package/built/src/types/drivers/performance/DynamoDbPerformanceTuningCapabilities.js.map +1 -0
- package/built/src/types/drivers/performance/DynamoDbPerformanceTuningContext.d.ts +302 -0
- package/built/src/types/drivers/performance/DynamoDbPerformanceTuningContext.js +7 -0
- package/built/src/types/drivers/performance/DynamoDbPerformanceTuningContext.js.map +1 -0
- package/built/src/types/drivers/performance/DynamoDbPerformanceTuningDiagnostic.d.ts +13 -0
- package/built/src/types/drivers/performance/DynamoDbPerformanceTuningDiagnostic.js +3 -0
- package/built/src/types/drivers/performance/DynamoDbPerformanceTuningDiagnostic.js.map +1 -0
- package/built/src/types/drivers/performance/PerformanceTuningCapabilities.d.ts +17 -0
- package/built/src/types/drivers/performance/PerformanceTuningCapabilities.js +3 -0
- package/built/src/types/drivers/performance/PerformanceTuningCapabilities.js.map +1 -0
- package/built/src/types/drivers/performance/PerformanceTuningContext.d.ts +263 -0
- package/built/src/types/drivers/performance/PerformanceTuningContext.js +3 -0
- package/built/src/types/drivers/performance/PerformanceTuningContext.js.map +1 -0
- package/built/src/types/drivers/performance/PerformanceTuningDiagnostic.d.ts +28 -0
- package/built/src/types/drivers/performance/PerformanceTuningDiagnostic.js +3 -0
- package/built/src/types/drivers/performance/PerformanceTuningDiagnostic.js.map +1 -0
- package/built/src/types/drivers/performance/PlanNode.d.ts +37 -0
- package/built/src/types/drivers/performance/PlanNode.js +3 -0
- package/built/src/types/drivers/performance/PlanNode.js.map +1 -0
- package/built/src/types/drivers/performance/index.d.ts +7 -0
- package/built/src/types/drivers/performance/index.js +11 -0
- package/built/src/types/drivers/performance/index.js.map +1 -0
- package/built/src/types/drivers/rdbDashboard/RdbDashboardCapabilities.d.ts +30 -0
- package/built/src/types/drivers/rdbDashboard/RdbDashboardCapabilities.js +3 -0
- package/built/src/types/drivers/rdbDashboard/RdbDashboardCapabilities.js.map +1 -0
- package/built/src/types/drivers/rdbDashboard/RdbDashboardDefinition.d.ts +134 -0
- package/built/src/types/drivers/rdbDashboard/RdbDashboardDefinition.js +14 -0
- package/built/src/types/drivers/rdbDashboard/RdbDashboardDefinition.js.map +1 -0
- package/built/src/types/drivers/rdbDashboard/RdbDashboardSample.d.ts +69 -0
- package/built/src/types/drivers/rdbDashboard/RdbDashboardSample.js +3 -0
- package/built/src/types/drivers/rdbDashboard/RdbDashboardSample.js.map +1 -0
- package/built/src/types/drivers/rdbDashboard/index.d.ts +3 -0
- package/built/src/types/drivers/rdbDashboard/index.js +7 -0
- package/built/src/types/drivers/rdbDashboard/index.js.map +1 -0
- package/built/src/types/helpers/index.js.map +1 -1
- package/built/src/types/index.d.ts +1 -0
- package/built/src/types/index.js +1 -0
- package/built/src/types/index.js.map +1 -1
- package/built/src/types/observability/dashboardLaunchCapability.d.ts +11 -0
- package/built/src/types/observability/dashboardLaunchCapability.js +22 -0
- package/built/src/types/observability/dashboardLaunchCapability.js.map +1 -0
- package/built/src/types/observability/index.d.ts +1 -0
- package/built/src/types/observability/index.js +5 -0
- package/built/src/types/observability/index.js.map +1 -0
- package/built/src/types/resource/AwsCfnStackAttributes.js.map +1 -1
- package/built/src/types/resource/AwsDynamoTableAttributes.d.ts +13 -0
- package/built/src/types/resource/AwsServiceType.d.ts +1 -1
- package/built/src/types/resource/AwsSupplyCredentialType.js.map +1 -1
- package/built/src/types/resource/ConnectionSetting.js.map +1 -1
- package/built/src/types/resource/OracleColumnType.js.map +1 -1
- package/built/src/types/resource/RedisKeyType.d.ts +1 -1
- package/built/src/types/resource/ResourceType.js.map +1 -1
- package/built/src/types/resource/SQLServerColumnType.js.map +1 -1
- package/built/src/utils/bindParameterEstimator.d.ts +22 -0
- package/built/src/utils/bindParameterEstimator.js +400 -0
- package/built/src/utils/bindParameterEstimator.js.map +1 -0
- package/built/src/utils/cfn/applicationDiagram.js.map +1 -1
- package/built/src/utils/cfn/applicationRelations.js.map +1 -1
- package/built/src/utils/cfn/cfnDependencyGraphDiagram.js.map +1 -1
- package/built/src/utils/cfn/deploymentTopology.js.map +1 -1
- package/built/src/utils/cfn/diagramFileModel.js.map +1 -1
- package/built/src/utils/cfn/drawio/cfnDependencyGraphDiagram.js.map +1 -1
- package/built/src/utils/cfn/drawio/commonCells.js.map +1 -1
- package/built/src/utils/cfn/drawio/multiAzInfrastructureDiagram.js.map +1 -1
- package/built/src/utils/cfn/drawioApplicationDiagram.js.map +1 -1
- package/built/src/utils/cfn/drawioInfrastructureDiagrams.js.map +1 -1
- package/built/src/utils/cfn/drawioXml.js.map +1 -1
- package/built/src/utils/cfn/generateDiagram.js.map +1 -1
- package/built/src/utils/cfn/icons.js.map +1 -1
- package/built/src/utils/cfn/index.js.map +1 -1
- package/built/src/utils/cfn/intrinsics.js.map +1 -1
- package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtection.js.map +1 -1
- package/built/src/utils/cfn/multiAzDeploymentTrafficPathsAndProtectionDiagram.js.map +1 -1
- package/built/src/utils/cfn/naming.js.map +1 -1
- package/built/src/utils/cfn/resourceDependencies.js.map +1 -1
- package/built/src/utils/cfn/templateParsing.js.map +1 -1
- package/built/src/utils/cfn/viewpoints.js.map +1 -1
- package/built/src/utils/csv.js.map +1 -1
- package/built/src/utils/dbType.js.map +1 -1
- package/built/src/utils/diagramLayout/elkLayoutEngine.js.map +1 -1
- package/built/src/utils/diagramLayout/index.js.map +1 -1
- package/built/src/utils/diagramLayout/normalizeLayout.js.map +1 -1
- package/built/src/utils/drawio/drawioXml.js.map +1 -1
- package/built/src/utils/drawio/index.js.map +1 -1
- package/built/src/utils/dynamoDbPerformanceTuningContextValidator.d.ts +3 -0
- package/built/src/utils/dynamoDbPerformanceTuningContextValidator.js +440 -0
- package/built/src/utils/dynamoDbPerformanceTuningContextValidator.js.map +1 -0
- package/built/src/utils/er/erDiagramDrawioGenerator.js.map +1 -1
- package/built/src/utils/er/erDiagramDrawioGeneratorAuto.js.map +1 -1
- package/built/src/utils/er/erDiagramGenerator.js.map +1 -1
- package/built/src/utils/er/index.d.ts +1 -0
- package/built/src/utils/er/index.js +3 -1
- package/built/src/utils/er/index.js.map +1 -1
- package/built/src/utils/er/performanceQueryDiagram.d.ts +18 -0
- package/built/src/utils/er/performanceQueryDiagram.js +381 -0
- package/built/src/utils/er/performanceQueryDiagram.js.map +1 -0
- package/built/src/utils/index.d.ts +5 -0
- package/built/src/utils/index.js +5 -0
- package/built/src/utils/index.js.map +1 -1
- package/built/src/utils/log/buildSqlExecutions.js.map +1 -1
- package/built/src/utils/log/constant/base.js.map +1 -1
- package/built/src/utils/log/constant/logEventSplitPreset.js.map +1 -1
- package/built/src/utils/log/constant/sqlLogParsePreset.js.map +1 -1
- package/built/src/utils/log/detect/presetDetector.js.map +1 -1
- package/built/src/utils/log/extract/runExtractors.js.map +1 -1
- package/built/src/utils/log/logSummary.js.map +1 -1
- package/built/src/utils/log/rdh/convertExtractedSqlRdhResult.js.map +1 -1
- package/built/src/utils/log/sql/removeSqlComments.js.map +1 -1
- package/built/src/utils/log/validator.js.map +1 -1
- package/built/src/utils/performanceTuningContext.d.ts +45 -0
- package/built/src/utils/performanceTuningContext.js +149 -0
- package/built/src/utils/performanceTuningContext.js.map +1 -0
- package/built/src/utils/performanceTuningContextValidator.d.ts +3 -0
- package/built/src/utils/performanceTuningContextValidator.js +364 -0
- package/built/src/utils/performanceTuningContextValidator.js.map +1 -0
- package/built/src/utils/statementStatistics.d.ts +11 -0
- package/built/src/utils/statementStatistics.js +39 -0
- package/built/src/utils/statementStatistics.js.map +1 -0
- package/package.json +38 -32
package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/SQLServerRdbDashboardProvider.js
ADDED
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SQLServerRdbDashboardProvider = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const rdbDashboardValueUtils_1 = require("../../rdbDashboardValueUtils");
|
|
6
|
+
const sqlServerDashboardCatalog_1 = require("./sqlServerDashboardCatalog");
|
|
7
|
+
const sqlServerDashboardQueries_1 = require("./sqlServerDashboardQueries");
|
|
8
|
+
const PERF_COUNTER_TO_METRIC = {
|
|
9
|
+
'user connections': 'user_connections',
|
|
10
|
+
'batch requests/sec': 'batch_requests',
|
|
11
|
+
'sql compilations/sec': 'sql_compilations',
|
|
12
|
+
'sql re-compilations/sec': 'sql_recompilations',
|
|
13
|
+
'transactions/sec': 'transactions',
|
|
14
|
+
'buffer cache hit ratio': 'buffer_cache_hits',
|
|
15
|
+
'buffer cache hit ratio base': 'buffer_cache_lookups',
|
|
16
|
+
'page life expectancy': 'page_life_expectancy',
|
|
17
|
+
'lock waits/sec': 'lock_waits',
|
|
18
|
+
};
|
|
19
|
+
const PERFORMANCE_METRIC_IDS = Object.values(PERF_COUNTER_TO_METRIC);
|
|
20
|
+
const ACTIVITY_METRIC_IDS = ['active_requests', 'blocked_requests'];
|
|
21
|
+
const FILE_IO_METRIC_IDS = ['file_reads', 'file_writes', 'file_read_stall', 'file_write_stall'];
|
|
22
|
+
const DATABASE_FILE_METRIC_IDS = ['file_size_bytes', 'file_used_bytes'];
|
|
23
|
+
const RATE_COUNTER_TYPES = new Set([272696320, 272696576]);
|
|
24
|
+
const GAUGE_COUNTER_TYPES = new Set([65792]);
|
|
25
|
+
function iso(value) {
|
|
26
|
+
const date = value instanceof Date ? value : new Date(String(value !== null && value !== void 0 ? value : ''));
|
|
27
|
+
return Number.isFinite(date.getTime()) ? date.toISOString() : undefined;
|
|
28
|
+
}
|
|
29
|
+
function variantFor(engineEdition) {
|
|
30
|
+
switch (engineEdition) {
|
|
31
|
+
case 5:
|
|
32
|
+
return 'azure-sql-database';
|
|
33
|
+
case 8:
|
|
34
|
+
return 'azure-sql-managed-instance';
|
|
35
|
+
default:
|
|
36
|
+
return 'sqlserver';
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
class SQLServerRdbDashboardProvider {
|
|
40
|
+
constructor(driver) {
|
|
41
|
+
this.driver = driver;
|
|
42
|
+
this.providerId = sqlServerDashboardCatalog_1.SQLSERVER_RDB_DASHBOARD_PROVIDER_ID;
|
|
43
|
+
this.capabilitiesByResourceKey = new Map();
|
|
44
|
+
this.epochByResourceKey = new Map();
|
|
45
|
+
}
|
|
46
|
+
checkCapabilities(target, _options) {
|
|
47
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
var _a, _b, _c;
|
|
49
|
+
try {
|
|
50
|
+
const base = yield this.driver.requestSql({
|
|
51
|
+
sql: sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_CAPABILITIES_SQL,
|
|
52
|
+
conditions: { rawQueries: true },
|
|
53
|
+
});
|
|
54
|
+
const row = (_a = base.rows[0]) === null || _a === void 0 ? void 0 : _a.values;
|
|
55
|
+
if (!row || String((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'database_name')) !== target.databaseName) {
|
|
56
|
+
return { ok: false, message: 'The observer connection is not connected to the requested SQL Server database.' };
|
|
57
|
+
}
|
|
58
|
+
const variant = variantFor((0, rdbDashboardValueUtils_1.dashboardNumberOrNull)((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'engine_edition')));
|
|
59
|
+
const databaseScope = { kind: 'database', label: `Database ${target.databaseName}` };
|
|
60
|
+
const serverScope = {
|
|
61
|
+
kind: variant === 'azure-sql-database' ? 'database-server' : 'instance',
|
|
62
|
+
label: variant === 'azure-sql-database' ? 'Azure SQL logical database scope' : 'SQL Server instance',
|
|
63
|
+
};
|
|
64
|
+
const hasServerVisibility = (0, rdbDashboardValueUtils_1.dashboardBoolean)((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'has_view_server_state')) ||
|
|
65
|
+
(0, rdbDashboardValueUtils_1.dashboardBoolean)((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'has_view_server_performance_state'));
|
|
66
|
+
const probeResults = new Map();
|
|
67
|
+
const probes = [
|
|
68
|
+
['performance-counters', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_PERFORMANCE_COUNTERS_SQL],
|
|
69
|
+
['current-activity', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_ACTIVITY_SQL],
|
|
70
|
+
['wait-statistics', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_WAIT_STATS_SQL],
|
|
71
|
+
['file-io', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_FILE_IO_SQL],
|
|
72
|
+
['database-files', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_DATABASE_FILES_SQL],
|
|
73
|
+
];
|
|
74
|
+
for (const [id, sql] of probes) {
|
|
75
|
+
try {
|
|
76
|
+
yield this.driver.requestSql({ sql, conditions: { rawQueries: true } });
|
|
77
|
+
probeResults.set(id, true);
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
probeResults.set(id, false);
|
|
81
|
+
console.error(`[SQLServerRdbDashboardProvider:${id}Probe]`, error);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
let queryStatisticsAvailable = false;
|
|
85
|
+
try {
|
|
86
|
+
queryStatisticsAvailable = (yield this.driver.checkStatementStatisticsAvailability(target.databaseName)).ok;
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
console.error('[SQLServerRdbDashboardProvider:queryStatisticsProbe]', error);
|
|
90
|
+
}
|
|
91
|
+
const section = (sectionId, scope, requiredPermissions) => {
|
|
92
|
+
const available = probeResults.get(sectionId) === true;
|
|
93
|
+
return Object.assign({ sectionId, status: sectionId === 'current-activity' && available && !hasServerVisibility
|
|
94
|
+
? 'partial'
|
|
95
|
+
: available
|
|
96
|
+
? 'available'
|
|
97
|
+
: 'unavailable', scope }, (!available
|
|
98
|
+
? Object.assign({ reasonCode: 'dmv-unavailable', message: `${sectionId} is unavailable with the current edition or permissions.` }, (requiredPermissions ? { requiredPermissions } : {})) : sectionId === 'current-activity' && !hasServerVisibility
|
|
99
|
+
? {
|
|
100
|
+
reasonCode: 'limited-session-visibility',
|
|
101
|
+
message: 'Current request counts can be limited to sessions visible to this login.',
|
|
102
|
+
requiredPermissions: ['VIEW SERVER STATE or VIEW SERVER PERFORMANCE STATE'],
|
|
103
|
+
}
|
|
104
|
+
: {}));
|
|
105
|
+
};
|
|
106
|
+
const serverPermission = ['VIEW SERVER STATE (SQL Server 2019 or earlier) or VIEW SERVER PERFORMANCE STATE (SQL Server 2022+)'];
|
|
107
|
+
const capabilities = {
|
|
108
|
+
providerId: this.providerId,
|
|
109
|
+
variant,
|
|
110
|
+
serverVersion: String((_b = (0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'server_version')) !== null && _b !== void 0 ? _b : ''),
|
|
111
|
+
observerIdentity: String((_c = (0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'observer_session_id')) !== null && _c !== void 0 ? _c : ''),
|
|
112
|
+
sections: [
|
|
113
|
+
section('performance-counters', serverScope, serverPermission),
|
|
114
|
+
section('current-activity', databaseScope, serverPermission),
|
|
115
|
+
section('wait-statistics', serverScope, serverPermission),
|
|
116
|
+
section('file-io', databaseScope, serverPermission),
|
|
117
|
+
section('database-files', databaseScope),
|
|
118
|
+
Object.assign({ sectionId: 'query-statistics', status: queryStatisticsAvailable ? 'available' : 'unavailable', scope: databaseScope }, (!queryStatisticsAvailable
|
|
119
|
+
? {
|
|
120
|
+
reasonCode: 'query-store-unavailable',
|
|
121
|
+
message: 'Query Store is disabled or unavailable with the current database permissions.',
|
|
122
|
+
requiredPermissions: [
|
|
123
|
+
'VIEW DATABASE STATE or VIEW DATABASE PERFORMANCE STATE (SQL Server 2022+)',
|
|
124
|
+
],
|
|
125
|
+
}
|
|
126
|
+
: {
|
|
127
|
+
message: 'Query statistics are provided by the existing SQL Server Query Store integration.',
|
|
128
|
+
})),
|
|
129
|
+
],
|
|
130
|
+
};
|
|
131
|
+
this.capabilitiesByResourceKey.set(target.resourceKey, capabilities);
|
|
132
|
+
return (0, rdbDashboardValueUtils_1.dashboardSuccess)(capabilities);
|
|
133
|
+
}
|
|
134
|
+
catch (error) {
|
|
135
|
+
console.error('[SQLServerRdbDashboardProvider:checkCapabilities]', error);
|
|
136
|
+
return { ok: false, message: 'SQL Server dashboard capabilities could not be checked.' };
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
resolveDashboard(target, _selection, options) {
|
|
141
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
142
|
+
let capabilities = this.capabilitiesByResourceKey.get(target.resourceKey);
|
|
143
|
+
if (!capabilities) {
|
|
144
|
+
const checked = yield this.checkCapabilities(target, options);
|
|
145
|
+
if (!checked.ok || !checked.result)
|
|
146
|
+
return { ok: false, message: checked.message };
|
|
147
|
+
capabilities = checked.result;
|
|
148
|
+
}
|
|
149
|
+
return (0, rdbDashboardValueUtils_1.dashboardSuccess)((0, sqlServerDashboardCatalog_1.resolveSqlServerDashboard)(target, capabilities));
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
collectSample(request, _options) {
|
|
153
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
154
|
+
var _a;
|
|
155
|
+
const collectionStartedAt = new Date().toISOString();
|
|
156
|
+
const requested = new Set(request.metricIds);
|
|
157
|
+
const observations = [];
|
|
158
|
+
const diagnostics = [];
|
|
159
|
+
let observedAt = collectionStartedAt;
|
|
160
|
+
let epoch = (_a = this.epochByResourceKey.get(request.target.resourceKey)) !== null && _a !== void 0 ? _a : 'unknown';
|
|
161
|
+
yield this.collectGroup('performance-counters', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_PERFORMANCE_COUNTERS_SQL, PERFORMANCE_METRIC_IDS, requested, observations, diagnostics, (rows) => {
|
|
162
|
+
var _a;
|
|
163
|
+
observedAt = new Date().toISOString();
|
|
164
|
+
const startTime = iso((0, rdbDashboardValueUtils_1.dashboardRowValue)((_a = rows[0]) !== null && _a !== void 0 ? _a : {}, 'sqlserver_start_time'));
|
|
165
|
+
if (startTime) {
|
|
166
|
+
epoch = startTime;
|
|
167
|
+
this.epochByResourceKey.set(request.target.resourceKey, startTime);
|
|
168
|
+
}
|
|
169
|
+
for (const row of rows)
|
|
170
|
+
this.appendPerformanceCounter(row, request.target.databaseName, requested, observations, diagnostics, observedAt);
|
|
171
|
+
});
|
|
172
|
+
yield this.collectGroup('current-activity', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_ACTIVITY_SQL, ACTIVITY_METRIC_IDS, requested, observations, diagnostics, (rows) => {
|
|
173
|
+
var _a;
|
|
174
|
+
const row = rows[0];
|
|
175
|
+
if (!row)
|
|
176
|
+
return;
|
|
177
|
+
observedAt = (_a = iso((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'observed_at'))) !== null && _a !== void 0 ? _a : new Date().toISOString();
|
|
178
|
+
for (const metricId of ACTIVITY_METRIC_IDS) {
|
|
179
|
+
if (requested.has(metricId))
|
|
180
|
+
observations.push({ metricId, observedAt, value: (0, rdbDashboardValueUtils_1.dashboardNumberOrNull)((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, metricId)), status: 'ok' });
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
yield this.collectGroup('wait-statistics', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_WAIT_STATS_SQL, ['wait_time'], requested, observations, diagnostics, (rows) => {
|
|
184
|
+
var _a;
|
|
185
|
+
observedAt = new Date().toISOString();
|
|
186
|
+
for (const row of rows) {
|
|
187
|
+
observations.push({ metricId: 'wait_time', observedAt, value: (0, rdbDashboardValueUtils_1.dashboardNumberOrNull)((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'wait_time_ms')), dimensions: { waitCategory: String((_a = (0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'wait_category')) !== null && _a !== void 0 ? _a : 'Other') }, status: 'ok' });
|
|
188
|
+
}
|
|
189
|
+
});
|
|
190
|
+
yield this.collectGroup('file-io', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_FILE_IO_SQL, FILE_IO_METRIC_IDS, requested, observations, diagnostics, (rows) => {
|
|
191
|
+
var _a, _b;
|
|
192
|
+
observedAt = new Date().toISOString();
|
|
193
|
+
for (const row of rows) {
|
|
194
|
+
const dimensions = { fileName: String((_a = (0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'file_name')) !== null && _a !== void 0 ? _a : ''), fileType: String((_b = (0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'file_type')) !== null && _b !== void 0 ? _b : 'other') };
|
|
195
|
+
for (const metricId of FILE_IO_METRIC_IDS) {
|
|
196
|
+
if (requested.has(metricId))
|
|
197
|
+
observations.push({ metricId, observedAt, value: (0, rdbDashboardValueUtils_1.dashboardNumberOrNull)((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, metricId)), dimensions, status: 'ok' });
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
yield this.collectGroup('database-files', sqlServerDashboardQueries_1.SQLSERVER_DASHBOARD_DATABASE_FILES_SQL, DATABASE_FILE_METRIC_IDS, requested, observations, diagnostics, (rows) => {
|
|
202
|
+
var _a, _b;
|
|
203
|
+
observedAt = new Date().toISOString();
|
|
204
|
+
for (const row of rows) {
|
|
205
|
+
const dimensions = { fileName: String((_a = (0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'file_name')) !== null && _a !== void 0 ? _a : ''), fileType: String((_b = (0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'file_type')) !== null && _b !== void 0 ? _b : 'other') };
|
|
206
|
+
for (const metricId of DATABASE_FILE_METRIC_IDS) {
|
|
207
|
+
if (requested.has(metricId)) {
|
|
208
|
+
const value = (0, rdbDashboardValueUtils_1.dashboardNumberOrNull)((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, metricId));
|
|
209
|
+
observations.push({
|
|
210
|
+
metricId,
|
|
211
|
+
observedAt,
|
|
212
|
+
value,
|
|
213
|
+
dimensions,
|
|
214
|
+
status: value === null ? 'unavailable' : 'ok',
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
return (0, rdbDashboardValueUtils_1.dashboardSuccess)({
|
|
221
|
+
sampleSessionId: request.sampleSessionId,
|
|
222
|
+
definitionVersion: request.definitionVersion,
|
|
223
|
+
sequence: request.sequence,
|
|
224
|
+
collectionStartedAt,
|
|
225
|
+
collectionEndedAt: new Date().toISOString(),
|
|
226
|
+
epochs: [{ key: 'sqlserver-start-time', value: epoch, reasonLabel: 'SQL Server service restart or DMV counter reset' }],
|
|
227
|
+
observations,
|
|
228
|
+
diagnostics,
|
|
229
|
+
});
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
appendPerformanceCounter(row, databaseName, requested, observations, diagnostics, observedAt) {
|
|
233
|
+
var _a, _b;
|
|
234
|
+
const counterName = String((_a = (0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'counter_name')) !== null && _a !== void 0 ? _a : '').trim().toLowerCase();
|
|
235
|
+
const metricId = PERF_COUNTER_TO_METRIC[counterName];
|
|
236
|
+
if (!metricId || !requested.has(metricId))
|
|
237
|
+
return;
|
|
238
|
+
const instanceName = String((_b = (0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'instance_name')) !== null && _b !== void 0 ? _b : '').trim();
|
|
239
|
+
if (metricId === 'transactions' && instanceName.toLowerCase() !== databaseName.toLowerCase())
|
|
240
|
+
return;
|
|
241
|
+
if (metricId === 'lock_waits' && instanceName !== '_Total')
|
|
242
|
+
return;
|
|
243
|
+
const cntrType = (0, rdbDashboardValueUtils_1.dashboardNumberOrNull)((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'cntr_type'));
|
|
244
|
+
const expectedGauge = metricId === 'user_connections' || metricId === 'page_life_expectancy';
|
|
245
|
+
const expectedFraction = metricId === 'buffer_cache_hits';
|
|
246
|
+
const expectedBase = metricId === 'buffer_cache_lookups';
|
|
247
|
+
const supported = cntrType !== null &&
|
|
248
|
+
(expectedGauge
|
|
249
|
+
? GAUGE_COUNTER_TYPES.has(cntrType)
|
|
250
|
+
: expectedFraction
|
|
251
|
+
? cntrType === 537003264
|
|
252
|
+
: expectedBase
|
|
253
|
+
? cntrType === 1073939712
|
|
254
|
+
: RATE_COUNTER_TYPES.has(cntrType));
|
|
255
|
+
if (!supported) {
|
|
256
|
+
observations.push({ metricId, observedAt, value: null, status: 'unavailable', messageCode: 'unsupported-counter-type' });
|
|
257
|
+
if (!diagnostics.some((it) => it.code === 'unsupported-counter-type'))
|
|
258
|
+
diagnostics.push({ sectionId: 'performance-counters', severity: 'warning', code: 'unsupported-counter-type', message: 'A SQL Server performance counter used an unsupported cntr_type and was not interpreted.' });
|
|
259
|
+
return;
|
|
260
|
+
}
|
|
261
|
+
observations.push(Object.assign(Object.assign({ metricId,
|
|
262
|
+
observedAt, value: (0, rdbDashboardValueUtils_1.dashboardNumberOrNull)((0, rdbDashboardValueUtils_1.dashboardRowValue)(row, 'cntr_value')) }, (metricId === 'page_life_expectancy' ? { dimensions: { instanceName: instanceName || 'default' } } : {})), { status: 'ok' }));
|
|
263
|
+
}
|
|
264
|
+
collectGroup(sectionId, sql, metricIds, requested, observations, diagnostics, append) {
|
|
265
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
266
|
+
const selected = metricIds.filter((id) => requested.has(id));
|
|
267
|
+
if (selected.length === 0)
|
|
268
|
+
return;
|
|
269
|
+
try {
|
|
270
|
+
const result = yield this.driver.requestSql({ sql, conditions: { rawQueries: true } });
|
|
271
|
+
const before = new Map(selected.map((metricId) => [
|
|
272
|
+
metricId,
|
|
273
|
+
observations.filter((item) => item.metricId === metricId).length,
|
|
274
|
+
]));
|
|
275
|
+
append(result.rows.map((item) => item.values));
|
|
276
|
+
const at = new Date().toISOString();
|
|
277
|
+
for (const metricId of selected) {
|
|
278
|
+
const count = observations.filter((item) => item.metricId === metricId).length;
|
|
279
|
+
if (count === before.get(metricId)) {
|
|
280
|
+
observations.push({
|
|
281
|
+
metricId,
|
|
282
|
+
observedAt: at,
|
|
283
|
+
value: null,
|
|
284
|
+
status: 'unavailable',
|
|
285
|
+
messageCode: 'metric-row-unavailable',
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
catch (error) {
|
|
291
|
+
console.error(`[SQLServerRdbDashboardProvider:${sectionId}Sample]`, error);
|
|
292
|
+
diagnostics.push({ sectionId, severity: 'warning', code: `${sectionId}-failed`, message: `SQL Server ${sectionId} metrics could not be collected.` });
|
|
293
|
+
const at = new Date().toISOString();
|
|
294
|
+
for (const metricId of selected)
|
|
295
|
+
observations.push({ metricId, observedAt: at, value: null, status: 'failed' });
|
|
296
|
+
}
|
|
297
|
+
});
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
exports.SQLServerRdbDashboardProvider = SQLServerRdbDashboardProvider;
|
|
301
|
+
//# sourceMappingURL=SQLServerRdbDashboardProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SQLServerRdbDashboardProvider.js","sourceRoot":"","sources":["../../../../../../../src/drivers/providers/rdbDashboard/vendors/sqlserver/SQLServerRdbDashboardProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./SQLServerRdbDashboardProvider"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./sqlServerDashboardCatalog"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./sqlServerDashboardQueries"), exports);
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/drivers/providers/rdbDashboard/vendors/sqlserver/index.ts"],"names":[],"mappings":";;;AAAA,0EAAgD;AAChD,sEAA4C;AAC5C,sEAA4C"}
|
package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { RdbDashboardCapabilities, RdbDashboardTarget, ResolvedRdbDashboard, ResolvedRdbMetric } from '../../../../../types/drivers/rdbDashboard';
|
|
2
|
+
export declare const SQLSERVER_RDB_DASHBOARD_PROVIDER_ID = "rdb.sqlserver.database";
|
|
3
|
+
export declare function sqlServerDashboardMetrics(databaseName: string, variant: string): ResolvedRdbMetric[];
|
|
4
|
+
export declare function resolveSqlServerDashboard(target: RdbDashboardTarget, capabilities: RdbDashboardCapabilities): ResolvedRdbDashboard;
|
package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.js
ADDED
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SQLSERVER_RDB_DASHBOARD_PROVIDER_ID = void 0;
|
|
4
|
+
exports.sqlServerDashboardMetrics = sqlServerDashboardMetrics;
|
|
5
|
+
exports.resolveSqlServerDashboard = resolveSqlServerDashboard;
|
|
6
|
+
const rdbDashboard_1 = require("../../../../../types/drivers/rdbDashboard");
|
|
7
|
+
exports.SQLSERVER_RDB_DASHBOARD_PROVIDER_ID = 'rdb.sqlserver.database';
|
|
8
|
+
const serverScope = (variant) => ({
|
|
9
|
+
kind: variant === 'azure-sql-database' ? 'database-server' : 'instance',
|
|
10
|
+
label: variant === 'azure-sql-database' ? 'Azure SQL logical database scope' : 'SQL Server instance',
|
|
11
|
+
});
|
|
12
|
+
const databaseScope = (databaseName) => ({
|
|
13
|
+
kind: 'database',
|
|
14
|
+
label: `Database ${databaseName}`,
|
|
15
|
+
});
|
|
16
|
+
function sqlServerDashboardMetrics(databaseName, variant) {
|
|
17
|
+
const global = serverScope(variant);
|
|
18
|
+
const database = databaseScope(databaseName);
|
|
19
|
+
const serverCounter = (id, label, unit) => ({
|
|
20
|
+
id,
|
|
21
|
+
label,
|
|
22
|
+
unit,
|
|
23
|
+
scope: global,
|
|
24
|
+
measurement: { kind: 'cumulative-counter', epochKey: 'sqlserver-start-time', presentation: 'rate' },
|
|
25
|
+
selfObservation: 'included',
|
|
26
|
+
});
|
|
27
|
+
const databaseCounter = (id, label, unit) => ({
|
|
28
|
+
id,
|
|
29
|
+
label,
|
|
30
|
+
unit,
|
|
31
|
+
scope: database,
|
|
32
|
+
measurement: { kind: 'cumulative-counter', epochKey: 'sqlserver-start-time', presentation: 'rate' },
|
|
33
|
+
selfObservation: 'included',
|
|
34
|
+
});
|
|
35
|
+
const fileCounter = (id, label, unit) => (Object.assign(Object.assign({}, databaseCounter(id, label, unit)), { dimensions: [{ key: 'fileName', label: 'File' }, { key: 'fileType', label: 'File type' }] }));
|
|
36
|
+
return [
|
|
37
|
+
{ id: 'user_connections', label: 'User connections', unit: 'count', scope: global, measurement: { kind: 'gauge' } },
|
|
38
|
+
{ id: 'active_requests', label: 'Active requests', unit: 'count', scope: database, measurement: { kind: 'gauge' }, selfObservation: 'excluded' },
|
|
39
|
+
{ id: 'blocked_requests', label: 'Blocked requests', unit: 'count', scope: database, measurement: { kind: 'gauge' }, selfObservation: 'excluded' },
|
|
40
|
+
serverCounter('batch_requests', 'Batch requests', 'batches/s'),
|
|
41
|
+
serverCounter('sql_compilations', 'SQL compilations', 'compilations/s'),
|
|
42
|
+
serverCounter('sql_recompilations', 'SQL recompilations', 'recompilations/s'),
|
|
43
|
+
databaseCounter('transactions', 'Transactions', 'transactions/s'),
|
|
44
|
+
{
|
|
45
|
+
id: 'buffer_cache_hits', label: 'Buffer cache ratio numerator', unit: 'count', scope: global,
|
|
46
|
+
measurement: { kind: 'gauge' }, selfObservation: 'included',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
id: 'buffer_cache_lookups', label: 'Buffer cache ratio base', unit: 'count', scope: global,
|
|
50
|
+
measurement: { kind: 'gauge' }, selfObservation: 'included',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
id: 'buffer_cache_hit_ratio', label: 'Buffer cache hit ratio', unit: 'percent', scope: global,
|
|
54
|
+
measurement: { kind: 'derived', formula: { kind: 'raw-ratio', numeratorId: 'buffer_cache_hits', denominatorId: 'buffer_cache_lookups', scale: 100 } },
|
|
55
|
+
caveat: 'Calculated from the paired PERF_RAW_FRACTION numerator and PERF_RAW_BASE in the same sample.',
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
id: 'page_life_expectancy', label: 'Page life expectancy', unit: 'seconds', scope: global,
|
|
59
|
+
measurement: { kind: 'gauge' }, dimensions: [{ key: 'instanceName', label: 'NUMA node / instance' }],
|
|
60
|
+
caveat: 'Interpret per NUMA node and workload; no fixed universal threshold is applied.',
|
|
61
|
+
},
|
|
62
|
+
Object.assign(Object.assign({}, serverCounter('lock_waits', 'Lock waits', 'waits/s')), { caveat: 'The SQLServer:Locks _Total counter is server-wide; use blocked requests for the selected database scope.' }),
|
|
63
|
+
{
|
|
64
|
+
id: 'wait_time', label: 'Wait time by category', unit: 'ms/s', scope: global,
|
|
65
|
+
measurement: { kind: 'cumulative-counter', epochKey: 'sqlserver-start-time', presentation: 'rate' },
|
|
66
|
+
dimensions: [{ key: 'waitCategory', label: 'Wait category' }], selfObservation: 'included',
|
|
67
|
+
},
|
|
68
|
+
fileCounter('file_reads', 'File reads', 'reads/s'),
|
|
69
|
+
fileCounter('file_writes', 'File writes', 'writes/s'),
|
|
70
|
+
fileCounter('file_read_stall', 'Read stall', 'ms/s'),
|
|
71
|
+
fileCounter('file_write_stall', 'Write stall', 'ms/s'),
|
|
72
|
+
{
|
|
73
|
+
id: 'file_read_latency', label: 'Read latency', unit: 'ms/read', scope: database,
|
|
74
|
+
measurement: { kind: 'derived', formula: { kind: 'average', totalId: 'file_read_stall', countId: 'file_reads', scale: 1 } },
|
|
75
|
+
dimensions: [{ key: 'fileName', label: 'File' }, { key: 'fileType', label: 'File type' }],
|
|
76
|
+
caveat: 'An interval with no read operations is unavailable, not zero.',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
id: 'file_write_latency', label: 'Write latency', unit: 'ms/write', scope: database,
|
|
80
|
+
measurement: { kind: 'derived', formula: { kind: 'average', totalId: 'file_write_stall', countId: 'file_writes', scale: 1 } },
|
|
81
|
+
dimensions: [{ key: 'fileName', label: 'File' }, { key: 'fileType', label: 'File type' }],
|
|
82
|
+
caveat: 'An interval with no write operations is unavailable, not zero.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
id: 'file_size_bytes', label: 'Allocated file size', unit: 'bytes', scope: database,
|
|
86
|
+
measurement: { kind: 'snapshot' }, dimensions: [{ key: 'fileName', label: 'File' }, { key: 'fileType', label: 'File type' }],
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
id: 'file_used_bytes', label: 'Used data-file space', unit: 'bytes', scope: database,
|
|
90
|
+
measurement: { kind: 'snapshot' }, dimensions: [{ key: 'fileName', label: 'File' }, { key: 'fileType', label: 'File type' }],
|
|
91
|
+
caveat: 'FILEPROPERTY SpaceUsed is available for data files; log used space is not represented here.',
|
|
92
|
+
},
|
|
93
|
+
];
|
|
94
|
+
}
|
|
95
|
+
function resolveSqlServerDashboard(target, capabilities) {
|
|
96
|
+
const global = serverScope(capabilities.variant);
|
|
97
|
+
const database = databaseScope(target.databaseName);
|
|
98
|
+
const sectionAvailable = (id) => { var _a; return ((_a = capabilities.sections.find((it) => it.sectionId === id)) === null || _a === void 0 ? void 0 : _a.status) !== 'unavailable'; };
|
|
99
|
+
const panels = [
|
|
100
|
+
{ id: 'connections', title: 'Connections and activity', purpose: 'workload', scope: database, visualization: 'line', metricIds: [...(sectionAvailable('performance-counters') ? ['user_connections'] : []), 'active_requests', 'blocked_requests'], sectionCapabilityId: 'current-activity', drilldownActions: [{ id: 'sessions', label: 'Open sessions', kind: 'open-sessions', enabled: true }, { id: 'locks', label: 'Open locks', kind: 'open-locks', enabled: true }] },
|
|
101
|
+
{ id: 'workload', title: 'Batch and transaction activity', purpose: 'workload', scope: global, visualization: 'line', metricIds: ['batch_requests', 'sql_compilations', 'sql_recompilations', 'transactions'], sectionCapabilityId: 'performance-counters' },
|
|
102
|
+
{ id: 'buffer-cache', title: 'Buffer cache', purpose: 'health', scope: global, visualization: 'line', metricIds: ['buffer_cache_hit_ratio', 'page_life_expectancy'], sectionCapabilityId: 'performance-counters' },
|
|
103
|
+
{ id: 'locks', title: 'Locks and blocking', purpose: 'health', scope: global, visualization: 'line', metricIds: ['blocked_requests', 'lock_waits'], caveat: 'Blocked requests are scoped to the selected database; Lock waits is the server-wide _Total counter.', sectionCapabilityId: 'current-activity', drilldownActions: [{ id: 'locks', label: 'Open locks', kind: 'open-locks', enabled: true }] },
|
|
104
|
+
{ id: 'waits', title: 'Top wait categories', purpose: 'health', scope: global, visualization: 'bar', metricIds: ['wait_time'], topN: 10, sectionCapabilityId: 'wait-statistics' },
|
|
105
|
+
{ id: 'file-io', title: 'Database file I/O', purpose: 'health', scope: database, visualization: 'line', metricIds: ['file_reads', 'file_writes', 'file_read_latency', 'file_write_latency'], sectionCapabilityId: 'file-io' },
|
|
106
|
+
{ id: 'file-capacity', title: 'Database files', purpose: 'capacity', scope: database, visualization: 'stat-grid', metricIds: ['file_size_bytes', 'file_used_bytes'], sectionCapabilityId: 'database-files' },
|
|
107
|
+
];
|
|
108
|
+
return {
|
|
109
|
+
providerId: exports.SQLSERVER_RDB_DASHBOARD_PROVIDER_ID,
|
|
110
|
+
variant: capabilities.variant,
|
|
111
|
+
definitionVersion: 1,
|
|
112
|
+
target: { resourceKey: target.resourceKey, displayName: target.databaseName, sourceLabel: `${capabilities.variant === 'azure-sql-database' ? 'Azure SQL Database' : 'SQL Server'} ${capabilities.serverVersion}`, scope: database },
|
|
113
|
+
serverVersion: capabilities.serverVersion,
|
|
114
|
+
samplePolicy: rdbDashboard_1.DEFAULT_RDB_SAMPLE_POLICY,
|
|
115
|
+
metrics: sqlServerDashboardMetrics(target.databaseName, capabilities.variant),
|
|
116
|
+
tabs: [
|
|
117
|
+
{ id: 'overview', title: 'Overview', timeMode: 'sampling-session', selectors: [], panels: [panels[0], panels[6]] },
|
|
118
|
+
{ id: 'workload', title: 'Workload', timeMode: 'sampling-session', selectors: [], panels: [panels[1]] },
|
|
119
|
+
{ id: 'waits', title: 'Waits and locks', timeMode: 'sampling-session', selectors: [], panels: [panels[3], panels[4]] },
|
|
120
|
+
{ id: 'io', title: 'I/O and cache', timeMode: 'sampling-session', selectors: [], panels: [panels[2], panels[5]] },
|
|
121
|
+
],
|
|
122
|
+
capabilities: capabilities.sections,
|
|
123
|
+
notices: [
|
|
124
|
+
{ id: 'sampling-history', severity: 'info', title: 'On-demand DMV statistics', message: 'History starts when this dashboard is opened. Server-scoped values can include activity from other databases and clients.' },
|
|
125
|
+
{ id: 'permissions', severity: 'info', title: 'SQL Server DMV permissions', message: 'SQL Server 2022 commonly requires VIEW SERVER PERFORMANCE STATE; earlier versions commonly require VIEW SERVER STATE. Sections remain available independently.' },
|
|
126
|
+
{ id: 'self-observation', severity: 'info', title: 'Observer session', message: 'The observer session is excluded from current request counts. Its contribution to server counters cannot always be removed.' },
|
|
127
|
+
],
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=sqlServerDashboardCatalog.js.map
|
package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlServerDashboardCatalog.js","sourceRoot":"","sources":["../../../../../../../src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardCatalog.ts"],"names":[],"mappings":"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"}
|
package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const SQLSERVER_DASHBOARD_CAPABILITIES_SQL = "\nSELECT\n DB_NAME() AS database_name,\n CAST(SERVERPROPERTY('ProductVersion') AS nvarchar(128)) AS server_version,\n CAST(SERVERPROPERTY('Edition') AS nvarchar(128)) AS edition,\n CAST(SERVERPROPERTY('EngineEdition') AS int) AS engine_edition,\n @@SPID AS observer_session_id,\n HAS_PERMS_BY_NAME(NULL, NULL, 'VIEW SERVER STATE') AS has_view_server_state,\n HAS_PERMS_BY_NAME(NULL, NULL, 'VIEW SERVER PERFORMANCE STATE') AS has_view_server_performance_state,\n HAS_PERMS_BY_NAME(DB_NAME(), 'DATABASE', 'VIEW DATABASE STATE') AS has_view_database_state";
|
|
2
|
+
export declare const SQLSERVER_DASHBOARD_PERFORMANCE_COUNTERS_SQL = "\nSELECT\n RTRIM(pc.object_name) AS object_name,\n RTRIM(pc.counter_name) AS counter_name,\n RTRIM(pc.instance_name) AS instance_name,\n CONVERT(float, pc.cntr_value) AS cntr_value,\n pc.cntr_type,\n si.sqlserver_start_time\nFROM sys.dm_os_performance_counters AS pc\nCROSS JOIN sys.dm_os_sys_info AS si\nWHERE pc.counter_name IN (\n 'User Connections',\n 'Batch Requests/sec',\n 'SQL Compilations/sec',\n 'SQL Re-Compilations/sec',\n 'Transactions/sec',\n 'Buffer cache hit ratio',\n 'Buffer cache hit ratio base',\n 'Page life expectancy',\n 'Lock Waits/sec'\n)";
|
|
3
|
+
export declare const SQLSERVER_DASHBOARD_ACTIVITY_SQL = "\nSELECT\n SYSUTCDATETIME() AS observed_at,\n COALESCE(SUM(CASE WHEN r.session_id <> @@SPID THEN 1 ELSE 0 END), 0) AS active_requests,\n COALESCE(SUM(CASE WHEN r.session_id <> @@SPID AND r.blocking_session_id > 0 THEN 1 ELSE 0 END), 0) AS blocked_requests\nFROM sys.dm_exec_requests AS r\nWHERE r.database_id = DB_ID()";
|
|
4
|
+
export declare const SQLSERVER_DASHBOARD_WAIT_STATS_SQL = "\nSELECT\n CASE\n WHEN wait_type LIKE 'LCK[_]%' THEN 'Locks'\n WHEN wait_type LIKE 'PAGEIOLATCH[_]%' OR wait_type LIKE 'IO_COMPLETION%' THEN 'Data file I/O'\n WHEN wait_type LIKE 'WRITELOG%' THEN 'Log I/O'\n WHEN wait_type LIKE 'PAGELATCH[_]%' THEN 'Buffer latch'\n WHEN wait_type LIKE 'CXPACKET%' OR wait_type LIKE 'CXCONSUMER%' THEN 'Parallelism'\n WHEN wait_type LIKE 'ASYNC_NETWORK_IO%' THEN 'Client/network'\n WHEN wait_type LIKE 'RESOURCE_SEMAPHORE%' THEN 'Memory grant'\n ELSE 'Other'\n END AS wait_category,\n CONVERT(float, SUM(wait_time_ms)) AS wait_time_ms\nFROM sys.dm_os_wait_stats\nWHERE wait_type NOT IN (\n 'BROKER_EVENTHANDLER', 'BROKER_RECEIVE_WAITFOR', 'BROKER_TASK_STOP',\n 'CHECKPOINT_QUEUE', 'CLR_AUTO_EVENT', 'CLR_MANUAL_EVENT', 'DIRTY_PAGE_POLL',\n 'DISPATCHER_QUEUE_SEMAPHORE', 'FT_IFTS_SCHEDULER_IDLE_WAIT', 'HADR_FILESTREAM_IOMGR_IOCOMPLETION',\n 'LAZYWRITER_SLEEP', 'LOGMGR_QUEUE', 'ONDEMAND_TASK_QUEUE', 'QDS_PERSIST_TASK_MAIN_LOOP_SLEEP',\n 'REQUEST_FOR_DEADLOCK_SEARCH', 'SLEEP_TASK', 'SP_SERVER_DIAGNOSTICS_SLEEP',\n 'SQLTRACE_BUFFER_FLUSH', 'WAITFOR', 'XE_DISPATCHER_WAIT', 'XE_TIMER_EVENT'\n)\nGROUP BY CASE\n WHEN wait_type LIKE 'LCK[_]%' THEN 'Locks'\n WHEN wait_type LIKE 'PAGEIOLATCH[_]%' OR wait_type LIKE 'IO_COMPLETION%' THEN 'Data file I/O'\n WHEN wait_type LIKE 'WRITELOG%' THEN 'Log I/O'\n WHEN wait_type LIKE 'PAGELATCH[_]%' THEN 'Buffer latch'\n WHEN wait_type LIKE 'CXPACKET%' OR wait_type LIKE 'CXCONSUMER%' THEN 'Parallelism'\n WHEN wait_type LIKE 'ASYNC_NETWORK_IO%' THEN 'Client/network'\n WHEN wait_type LIKE 'RESOURCE_SEMAPHORE%' THEN 'Memory grant'\n ELSE 'Other'\nEND";
|
|
5
|
+
export declare const SQLSERVER_DASHBOARD_FILE_IO_SQL = "\nSELECT\n df.name AS file_name,\n CASE df.type WHEN 0 THEN 'data' WHEN 1 THEN 'log' ELSE 'other' END AS file_type,\n CONVERT(float, vfs.num_of_reads) AS file_reads,\n CONVERT(float, vfs.num_of_writes) AS file_writes,\n CONVERT(float, vfs.io_stall_read_ms) AS file_read_stall_ms,\n CONVERT(float, vfs.io_stall_write_ms) AS file_write_stall_ms\nFROM sys.dm_io_virtual_file_stats(DB_ID(), NULL) AS vfs\nJOIN sys.database_files AS df ON df.file_id = vfs.file_id";
|
|
6
|
+
export declare const SQLSERVER_DASHBOARD_DATABASE_FILES_SQL = "\nSELECT\n name AS file_name,\n CASE type WHEN 0 THEN 'data' WHEN 1 THEN 'log' ELSE 'other' END AS file_type,\n CONVERT(float, size) * 8192 AS file_size_bytes,\n CASE WHEN type = 0 THEN CONVERT(float, FILEPROPERTY(name, 'SpaceUsed')) * 8192 ELSE NULL END AS file_used_bytes\nFROM sys.database_files";
|
package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.js
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SQLSERVER_DASHBOARD_DATABASE_FILES_SQL = exports.SQLSERVER_DASHBOARD_FILE_IO_SQL = exports.SQLSERVER_DASHBOARD_WAIT_STATS_SQL = exports.SQLSERVER_DASHBOARD_ACTIVITY_SQL = exports.SQLSERVER_DASHBOARD_PERFORMANCE_COUNTERS_SQL = exports.SQLSERVER_DASHBOARD_CAPABILITIES_SQL = void 0;
|
|
4
|
+
exports.SQLSERVER_DASHBOARD_CAPABILITIES_SQL = `
|
|
5
|
+
SELECT
|
|
6
|
+
DB_NAME() AS database_name,
|
|
7
|
+
CAST(SERVERPROPERTY('ProductVersion') AS nvarchar(128)) AS server_version,
|
|
8
|
+
CAST(SERVERPROPERTY('Edition') AS nvarchar(128)) AS edition,
|
|
9
|
+
CAST(SERVERPROPERTY('EngineEdition') AS int) AS engine_edition,
|
|
10
|
+
@@SPID AS observer_session_id,
|
|
11
|
+
HAS_PERMS_BY_NAME(NULL, NULL, 'VIEW SERVER STATE') AS has_view_server_state,
|
|
12
|
+
HAS_PERMS_BY_NAME(NULL, NULL, 'VIEW SERVER PERFORMANCE STATE') AS has_view_server_performance_state,
|
|
13
|
+
HAS_PERMS_BY_NAME(DB_NAME(), 'DATABASE', 'VIEW DATABASE STATE') AS has_view_database_state`;
|
|
14
|
+
exports.SQLSERVER_DASHBOARD_PERFORMANCE_COUNTERS_SQL = `
|
|
15
|
+
SELECT
|
|
16
|
+
RTRIM(pc.object_name) AS object_name,
|
|
17
|
+
RTRIM(pc.counter_name) AS counter_name,
|
|
18
|
+
RTRIM(pc.instance_name) AS instance_name,
|
|
19
|
+
CONVERT(float, pc.cntr_value) AS cntr_value,
|
|
20
|
+
pc.cntr_type,
|
|
21
|
+
si.sqlserver_start_time
|
|
22
|
+
FROM sys.dm_os_performance_counters AS pc
|
|
23
|
+
CROSS JOIN sys.dm_os_sys_info AS si
|
|
24
|
+
WHERE pc.counter_name IN (
|
|
25
|
+
'User Connections',
|
|
26
|
+
'Batch Requests/sec',
|
|
27
|
+
'SQL Compilations/sec',
|
|
28
|
+
'SQL Re-Compilations/sec',
|
|
29
|
+
'Transactions/sec',
|
|
30
|
+
'Buffer cache hit ratio',
|
|
31
|
+
'Buffer cache hit ratio base',
|
|
32
|
+
'Page life expectancy',
|
|
33
|
+
'Lock Waits/sec'
|
|
34
|
+
)`;
|
|
35
|
+
exports.SQLSERVER_DASHBOARD_ACTIVITY_SQL = `
|
|
36
|
+
SELECT
|
|
37
|
+
SYSUTCDATETIME() AS observed_at,
|
|
38
|
+
COALESCE(SUM(CASE WHEN r.session_id <> @@SPID THEN 1 ELSE 0 END), 0) AS active_requests,
|
|
39
|
+
COALESCE(SUM(CASE WHEN r.session_id <> @@SPID AND r.blocking_session_id > 0 THEN 1 ELSE 0 END), 0) AS blocked_requests
|
|
40
|
+
FROM sys.dm_exec_requests AS r
|
|
41
|
+
WHERE r.database_id = DB_ID()`;
|
|
42
|
+
exports.SQLSERVER_DASHBOARD_WAIT_STATS_SQL = `
|
|
43
|
+
SELECT
|
|
44
|
+
CASE
|
|
45
|
+
WHEN wait_type LIKE 'LCK[_]%' THEN 'Locks'
|
|
46
|
+
WHEN wait_type LIKE 'PAGEIOLATCH[_]%' OR wait_type LIKE 'IO_COMPLETION%' THEN 'Data file I/O'
|
|
47
|
+
WHEN wait_type LIKE 'WRITELOG%' THEN 'Log I/O'
|
|
48
|
+
WHEN wait_type LIKE 'PAGELATCH[_]%' THEN 'Buffer latch'
|
|
49
|
+
WHEN wait_type LIKE 'CXPACKET%' OR wait_type LIKE 'CXCONSUMER%' THEN 'Parallelism'
|
|
50
|
+
WHEN wait_type LIKE 'ASYNC_NETWORK_IO%' THEN 'Client/network'
|
|
51
|
+
WHEN wait_type LIKE 'RESOURCE_SEMAPHORE%' THEN 'Memory grant'
|
|
52
|
+
ELSE 'Other'
|
|
53
|
+
END AS wait_category,
|
|
54
|
+
CONVERT(float, SUM(wait_time_ms)) AS wait_time_ms
|
|
55
|
+
FROM sys.dm_os_wait_stats
|
|
56
|
+
WHERE wait_type NOT IN (
|
|
57
|
+
'BROKER_EVENTHANDLER', 'BROKER_RECEIVE_WAITFOR', 'BROKER_TASK_STOP',
|
|
58
|
+
'CHECKPOINT_QUEUE', 'CLR_AUTO_EVENT', 'CLR_MANUAL_EVENT', 'DIRTY_PAGE_POLL',
|
|
59
|
+
'DISPATCHER_QUEUE_SEMAPHORE', 'FT_IFTS_SCHEDULER_IDLE_WAIT', 'HADR_FILESTREAM_IOMGR_IOCOMPLETION',
|
|
60
|
+
'LAZYWRITER_SLEEP', 'LOGMGR_QUEUE', 'ONDEMAND_TASK_QUEUE', 'QDS_PERSIST_TASK_MAIN_LOOP_SLEEP',
|
|
61
|
+
'REQUEST_FOR_DEADLOCK_SEARCH', 'SLEEP_TASK', 'SP_SERVER_DIAGNOSTICS_SLEEP',
|
|
62
|
+
'SQLTRACE_BUFFER_FLUSH', 'WAITFOR', 'XE_DISPATCHER_WAIT', 'XE_TIMER_EVENT'
|
|
63
|
+
)
|
|
64
|
+
GROUP BY CASE
|
|
65
|
+
WHEN wait_type LIKE 'LCK[_]%' THEN 'Locks'
|
|
66
|
+
WHEN wait_type LIKE 'PAGEIOLATCH[_]%' OR wait_type LIKE 'IO_COMPLETION%' THEN 'Data file I/O'
|
|
67
|
+
WHEN wait_type LIKE 'WRITELOG%' THEN 'Log I/O'
|
|
68
|
+
WHEN wait_type LIKE 'PAGELATCH[_]%' THEN 'Buffer latch'
|
|
69
|
+
WHEN wait_type LIKE 'CXPACKET%' OR wait_type LIKE 'CXCONSUMER%' THEN 'Parallelism'
|
|
70
|
+
WHEN wait_type LIKE 'ASYNC_NETWORK_IO%' THEN 'Client/network'
|
|
71
|
+
WHEN wait_type LIKE 'RESOURCE_SEMAPHORE%' THEN 'Memory grant'
|
|
72
|
+
ELSE 'Other'
|
|
73
|
+
END`;
|
|
74
|
+
exports.SQLSERVER_DASHBOARD_FILE_IO_SQL = `
|
|
75
|
+
SELECT
|
|
76
|
+
df.name AS file_name,
|
|
77
|
+
CASE df.type WHEN 0 THEN 'data' WHEN 1 THEN 'log' ELSE 'other' END AS file_type,
|
|
78
|
+
CONVERT(float, vfs.num_of_reads) AS file_reads,
|
|
79
|
+
CONVERT(float, vfs.num_of_writes) AS file_writes,
|
|
80
|
+
CONVERT(float, vfs.io_stall_read_ms) AS file_read_stall_ms,
|
|
81
|
+
CONVERT(float, vfs.io_stall_write_ms) AS file_write_stall_ms
|
|
82
|
+
FROM sys.dm_io_virtual_file_stats(DB_ID(), NULL) AS vfs
|
|
83
|
+
JOIN sys.database_files AS df ON df.file_id = vfs.file_id`;
|
|
84
|
+
exports.SQLSERVER_DASHBOARD_DATABASE_FILES_SQL = `
|
|
85
|
+
SELECT
|
|
86
|
+
name AS file_name,
|
|
87
|
+
CASE type WHEN 0 THEN 'data' WHEN 1 THEN 'log' ELSE 'other' END AS file_type,
|
|
88
|
+
CONVERT(float, size) * 8192 AS file_size_bytes,
|
|
89
|
+
CASE WHEN type = 0 THEN CONVERT(float, FILEPROPERTY(name, 'SpaceUsed')) * 8192 ELSE NULL END AS file_used_bytes
|
|
90
|
+
FROM sys.database_files`;
|
|
91
|
+
//# sourceMappingURL=sqlServerDashboardQueries.js.map
|
package/built/src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlServerDashboardQueries.js","sourceRoot":"","sources":["../../../../../../../src/drivers/providers/rdbDashboard/vendors/sqlserver/sqlServerDashboardQueries.ts"],"names":[],"mappings":";;;AAAa,QAAA,oCAAoC,GAAG;;;;;;;;;6FASyC,CAAC;AAEjF,QAAA,4CAA4C,GAAG;;;;;;;;;;;;;;;;;;;;EAoB1D,CAAC;AAEU,QAAA,gCAAgC,GAAG;;;;;;8BAMlB,CAAC;AAGlB,QAAA,kCAAkC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+B9C,CAAC;AAEQ,QAAA,+BAA+B,GAAG;;;;;;;;;0DASW,CAAC;AAE9C,QAAA,sCAAsC,GAAG;;;;;;wBAM9B,CAAC"}
|