diff --git a/docs/generate-metrics.py b/docs/generate-metrics.py index 00551380..c8282383 100644 --- a/docs/generate-metrics.py +++ b/docs/generate-metrics.py @@ -22,8 +22,12 @@ class Generator: for name in dir(jupyterhub.metrics): obj = getattr(jupyterhub.metrics, name) if obj.__class__.__module__.startswith('prometheus_client.'): - for metric in obj.describe(): - table_rows.append([metric.type, metric.name, metric.documentation]) + description = obj.describe()[0] + table_rows.append([ + description.type, + description.name, + description.documentation, + ]) return table_rows def prometheus_metrics(self): diff --git a/jupyterhub/tests/test_metrics.py b/jupyterhub/tests/test_metrics.py index 96cf4cc4..94289be6 100644 --- a/jupyterhub/tests/test_metrics.py +++ b/jupyterhub/tests/test_metrics.py @@ -11,14 +11,15 @@ from .utils import add_user, api_request, get_page @pytest.mark.parametrize( - "metric, expected_metric_name", + "metric, expected_name", [ (metrics.TOTAL_USERS, 'jupyterhub_total_users'), (metrics.REQUEST_DURATION_SECONDS, 'jupyterhub_request_duration_seconds'), ], ) -def test_metrics_prefix(metric, expected_metric_name): - assert metric._name == expected_metric_name +def test_metrics_prefix(metric, expected_name): + description = metric.describe()[0] + assert description.name == expected_name async def test_total_users(app): diff --git a/requirements.txt b/requirements.txt index 384e6a9f..fd6d4420 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,7 +7,7 @@ jupyter_telemetry>=0.1.0 oauthlib>=3.0 packaging pamela; sys_platform != 'win32' -prometheus_client>=0.4.0 +prometheus_client>=0.5.0 psutil>=5.6.5; sys_platform == 'win32' python-dateutil requests