Skip to content

Commit 0d3eeb0

Browse files
Add prometheus info metrics listing server extensions + versions (#1470)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent 32679b9 commit 0d3eeb0

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

jupyter_server/prometheus/metrics.py

+5
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,11 @@
5353

5454
# New prometheus metrics that do not exist in notebook v6 go here
5555
SERVER_INFO = Info("jupyter_server", "Jupyter Server Version information")
56+
SERVER_EXTENSION_INFO = Info(
57+
"jupyter_server_extension",
58+
"Jupyter Server Extensiom Version Information",
59+
["name", "version", "enabled"],
60+
)
5661

5762
__all__ = [
5863
"HTTP_REQUEST_DURATION_SECONDS",

jupyter_server/serverapp.py

+6-1
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@
110110
GatewaySessionManager,
111111
)
112112
from jupyter_server.log import log_request
113-
from jupyter_server.prometheus.metrics import SERVER_INFO
113+
from jupyter_server.prometheus.metrics import SERVER_EXTENSION_INFO, SERVER_INFO
114114
from jupyter_server.services.config import ConfigManager
115115
from jupyter_server.services.contents.filemanager import (
116116
AsyncFileContentsManager,
@@ -2703,6 +2703,11 @@ def init_metrics(self) -> None:
27032703
"""
27042704
SERVER_INFO.info({"version": __version__})
27052705

2706+
for ext in self.extension_manager.extensions.values():
2707+
SERVER_EXTENSION_INFO.labels(
2708+
name=ext.name, version=ext.version, enabled=str(ext.enabled).lower()
2709+
)
2710+
27062711
@catch_config_error
27072712
def initialize(
27082713
self,

0 commit comments

Comments
 (0)