diff --git a/synapse/app/homeserver.py b/synapse/app/homeserver.py index fa43211415..70a7be60b8 100755 --- a/synapse/app/homeserver.py +++ b/synapse/app/homeserver.py @@ -277,7 +277,7 @@ class SynapseHomeServer(HomeServer): config, metrics_resource, ), - interface="127.0.0.1", + interface=config.metrics_interface, ) logger.info("Metrics now running on 127.0.0.1 port %d", config.metrics_port) diff --git a/synapse/config/metrics.py b/synapse/config/metrics.py index 71a1b1d189..c843c079cf 100644 --- a/synapse/config/metrics.py +++ b/synapse/config/metrics.py @@ -20,6 +20,7 @@ class MetricsConfig(Config): def read_config(self, config): self.enable_metrics = config["enable_metrics"] self.metrics_port = config.get("metrics_port") + self.metrics_interface = config.get("metrics_interface", "127.0.0.1") def default_config(self, config_dir_path, server_name): return """\ @@ -28,6 +29,9 @@ class MetricsConfig(Config): # Enable collection and rendering of performance metrics enable_metrics: False - # Separate port to accept metrics requests on (on localhost) + # Separate port to accept metrics requests on # metrics_port: 8081 + + # Which interface to bind the metric listener to + # metrics_interface: 127.0.0.1 """