Add backwards compat support for metrics, manhole and webclient config options

This commit is contained in:
Erik Johnston 2015-06-12 17:41:36 +01:00
parent 261ccd7f5f
commit a005b7269a
3 changed files with 27 additions and 16 deletions

View File

@ -408,13 +408,6 @@ def setup(config_options):
logger.info("Database prepared in %r.", config.database_config) logger.info("Database prepared in %r.", config.database_config)
if config.manhole:
f = twisted.manhole.telnet.ShellFactory()
f.username = "matrix"
f.password = "rabbithole"
f.namespace['hs'] = hs
reactor.listenTCP(config.manhole, f, interface='127.0.0.1')
hs.start_listening() hs.start_listening()
hs.get_pusherpool().start() hs.get_pusherpool().start()

View File

@ -28,10 +28,4 @@ class MetricsConfig(Config):
# Enable collection and rendering of performance metrics # Enable collection and rendering of performance metrics
enable_metrics: False enable_metrics: False
# Separate port to accept metrics requests on
# metrics_port: 8081
# Which host to bind the metric listener to
# metrics_bind_host: 127.0.0.1
""" """

View File

@ -20,7 +20,6 @@ class ServerConfig(Config):
def read_config(self, config): def read_config(self, config):
self.server_name = config["server_name"] self.server_name = config["server_name"]
self.manhole = config.get("manhole")
self.pid_file = self.abspath(config.get("pid_file")) self.pid_file = self.abspath(config.get("pid_file"))
self.web_client = config["web_client"] self.web_client = config["web_client"]
self.soft_file_limit = config["soft_file_limit"] self.soft_file_limit = config["soft_file_limit"]
@ -35,6 +34,8 @@ class ServerConfig(Config):
bind_host = config.get("bind_host", "") bind_host = config.get("bind_host", "")
gzip_responses = config.get("gzip_responses", True) gzip_responses = config.get("gzip_responses", True)
names = ["client", "webclient"] if self.web_client else ["client"]
self.listeners.append({ self.listeners.append({
"port": bind_port, "port": bind_port,
"bind_address": bind_host, "bind_address": bind_host,
@ -42,7 +43,7 @@ class ServerConfig(Config):
"type": "http", "type": "http",
"resources": [ "resources": [
{ {
"names": ["client", "webclient"], "names": names,
"compress": gzip_responses, "compress": gzip_responses,
}, },
{ {
@ -61,7 +62,7 @@ class ServerConfig(Config):
"type": "http", "type": "http",
"resources": [ "resources": [
{ {
"names": ["client", "webclient"], "names": names,
"compress": gzip_responses, "compress": gzip_responses,
}, },
{ {
@ -71,6 +72,29 @@ class ServerConfig(Config):
] ]
}) })
manhole = config.get("manhole")
if manhole:
self.listeners.append({
"port": manhole,
"bind_address": "127.0.0.1",
"type": "manhole",
})
metrics_port = config.get("metrics_port")
if metrics_port:
self.listeners.append({
"port": metrics_port,
"bind_address": config.get("metrics_bind_host", "127.0.0.1"),
"tls": False,
"type": "http",
"resources": [
{
"names": ["metrics"],
"compress": False,
},
]
})
# Attempt to guess the content_addr for the v0 content repostitory # Attempt to guess the content_addr for the v0 content repostitory
content_addr = config.get("content_addr") content_addr = config.get("content_addr")
if not content_addr: if not content_addr: