diff --git a/oslo_metrics/__main__.py b/oslo_metrics/__main__.py index d761460..2ea70b4 100644 --- a/oslo_metrics/__main__.py +++ b/oslo_metrics/__main__.py @@ -37,6 +37,13 @@ oslo_metrics_configs = [ default='/var/tmp/metrics_collector.sock', # noqa: S108 help='Unix domain socket file to be used to send rpc related metrics', ), + cfg.StrOpt( + 'prometheus_host', + default='', + help='Hostname or IP address to serve metrics. An empty value ' + '(the default) makes the server bind to all network ' + 'interfaces, equivalent to 0.0.0.0.', + ), cfg.PortOpt( 'prometheus_port', default=3000, @@ -139,13 +146,17 @@ def main() -> None: global httpd if cfg.CONF.oslo_metrics.wsgi_silent_server: httpd = make_server( - '', + CONF.oslo_metrics.prometheus_host, CONF.oslo_metrics.prometheus_port, app, handler_class=_SilentHandler, ) else: - httpd = make_server('', CONF.oslo_metrics.prometheus_port, app) + httpd = make_server( + CONF.oslo_metrics.prometheus_host, + CONF.oslo_metrics.prometheus_port, + app, + ) signal.signal(signal.SIGTERM, handle_sigterm) diff --git a/releasenotes/notes/server-address-6baf333c21788995.yaml b/releasenotes/notes/server-address-6baf333c21788995.yaml new file mode 100644 index 0000000..bb6e8f6 --- /dev/null +++ b/releasenotes/notes/server-address-6baf333c21788995.yaml @@ -0,0 +1,5 @@ +--- +features: + - | + Added `prometheus_host` option to configure server address for + serving metrics.