|
11 | 11 |
|
12 | 12 | from datadog_checks.sqlserver import SQLServer |
13 | 13 | from datadog_checks.sqlserver.const import ( |
| 14 | + ENGINE_EDITION_AZURE_MANAGED_INSTANCE, |
| 15 | + ENGINE_EDITION_SQL_DATABASE, |
14 | 16 | STATIC_INFO_ENGINE_EDITION, |
15 | 17 | STATIC_INFO_MAJOR_VERSION, |
16 | 18 | STATIC_INFO_SERVERNAME, |
@@ -308,6 +310,36 @@ def test_sqlserver_availability_replicas_query_uses_parameterized_queries(init_c |
308 | 310 | assert q['params'] == (ag_with_quotes, db_with_quotes) |
309 | 311 |
|
310 | 312 |
|
| 313 | +@pytest.mark.parametrize( |
| 314 | + 'engine_edition, major_version, expected', |
| 315 | + [ |
| 316 | + (ENGINE_EDITION_AZURE_MANAGED_INSTANCE, 12, True), |
| 317 | + (ENGINE_EDITION_SQL_DATABASE, 12, False), |
| 318 | + (SQLSERVER_ENGINE_EDITION, 12, False), |
| 319 | + (SQLSERVER_ENGINE_EDITION, 13, True), |
| 320 | + ], |
| 321 | +) |
| 322 | +def test_sqlserver_ao_metrics_secondary_lag_support( |
| 323 | + init_config, instance_docker_metrics, engine_edition, major_version, expected |
| 324 | +): |
| 325 | + instance_docker_metrics['database_metrics'] = { |
| 326 | + 'ao_metrics': {'enabled': True}, |
| 327 | + } |
| 328 | + sqlserver_check = SQLServer(CHECK_NAME, init_config, [instance_docker_metrics]) |
| 329 | + ao_metrics = SqlserverAoMetrics( |
| 330 | + config=sqlserver_check._config, |
| 331 | + new_query_executor=sqlserver_check._new_query_executor, |
| 332 | + server_static_info={ |
| 333 | + STATIC_INFO_ENGINE_EDITION: engine_edition, |
| 334 | + STATIC_INFO_MAJOR_VERSION: major_version, |
| 335 | + }, |
| 336 | + execute_query_handler=mock.MagicMock(), |
| 337 | + ) |
| 338 | + |
| 339 | + assert ("DRS.secondary_lag_seconds" in ao_metrics.queries[0]['query']) is expected |
| 340 | + assert ("sqlserver.ao.secondary_lag_seconds" in ao_metrics.metric_names()[0]) is expected |
| 341 | + |
| 342 | + |
311 | 343 | @pytest.mark.integration |
312 | 344 | @pytest.mark.usefixtures('dd_environment') |
313 | 345 | @pytest.mark.parametrize('include_ao_metrics', [True, False]) |
|
0 commit comments