Skip to content

Commit 1d7b8d4

Browse files
authored
Merge pull request #68 from yuvipanda/legacy-api-endpoint
Soft-deprecate /metrics endpoint
2 parents de920c0 + 87c306f commit 1d7b8d4

File tree

4 files changed

+20
-3
lines changed

4 files changed

+20
-3
lines changed

nbresuse/__init__.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,16 @@ def load_jupyter_server_extension(nbapp):
3535
resuseconfig = ResourceUseDisplay(parent=nbapp)
3636
nbapp.web_app.settings["nbresuse_display_config"] = resuseconfig
3737
base_url = nbapp.web_app.settings["base_url"]
38+
39+
if not resuseconfig.disable_legacy_endpoint:
40+
nbapp.web_app.add_handlers(
41+
".*", [(url_path_join(base_url, "/metrics"), ApiHandler)]
42+
)
43+
3844
nbapp.web_app.add_handlers(
39-
".*", [(url_path_join(base_url, "/metrics"), ApiHandler)]
45+
".*", [(url_path_join(base_url, "/api/metrics/v1"), ApiHandler)]
4046
)
47+
4148
callback = ioloop.PeriodicCallback(
4249
PrometheusHandler(PSUtilMetricsLoader(nbapp)), 1000
4350
)

nbresuse/config.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,16 @@ class ResourceUseDisplay(Configurable):
3737
Holds server-side configuration for nbresuse
3838
"""
3939

40+
disable_legacy_endpoint = Bool(
41+
True,
42+
help="""
43+
Disable legacy /metrics endpoint
44+
45+
This prevents nbresuse from shadowing the prometheus /metrics endpoint.
46+
""",
47+
config=True,
48+
)
49+
4050
process_memory_metrics = List(
4151
trait=PSUtilMetric(),
4252
default_value=[{"name": "memory_info", "attribute": "rss"}],

nbresuse/static/main.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ define([
3434
return;
3535
}
3636
$.getJSON({
37-
url: utils.get_body_data('baseUrl') + 'metrics',
37+
url: utils.get_body_data('baseUrl') + 'api/metrics/v1',
3838
success: function (data) {
3939
totalMemoryUsage = humanFileSize(data['rss']);
4040

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
setuptools.setup(
1313
name="nbresuse",
14-
version="0.3.6",
14+
version="0.4.0",
1515
url="https://github.com/yuvipanda/nbresuse",
1616
author="Yuvi Panda",
1717
description="Simple Jupyter extension to show how much resources (RAM) your notebook is using",

0 commit comments

Comments
 (0)