From 0b1830b121510c04adf856f252bcc2839c35d738 Mon Sep 17 00:00:00 2001 From: Eric Eastwood <erice@element.io> Date: Wed, 12 Feb 2025 11:16:06 -0600 Subject: [PATCH] Document missing server config options (#18122) I was looking into the `USE_FROZEN_DICTS` option during the review of https://github.com/element-hq/synapse/pull/18103#discussion_r1935876168 and noticed that there are several other server config options that aren't in the docs. --- changelog.d/18122.doc | 1 + .../configuration/config_documentation.md | 58 +++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 changelog.d/18122.doc diff --git a/changelog.d/18122.doc b/changelog.d/18122.doc new file mode 100644 index 0000000000..b7bb7107e2 --- /dev/null +++ b/changelog.d/18122.doc @@ -0,0 +1 @@ +Document missing server config options (`daemonize`, `print_pidfile`, `user_agent_suffix`, `use_frozen_dicts`, `manhole`). diff --git a/docs/usage/configuration/config_documentation.md b/docs/usage/configuration/config_documentation.md index a5f23149ec..fdca48caf0 100644 --- a/docs/usage/configuration/config_documentation.md +++ b/docs/usage/configuration/config_documentation.md @@ -162,6 +162,53 @@ Example configuration: pid_file: DATADIR/homeserver.pid ``` --- +### `daemonize` + +Specifies whether Synapse should be started as a daemon process. If Synapse is being +managed by [systemd](../../systemd-with-workers/), this option must be omitted or set to +`false`. + +This can also be set by the `--daemonize` (`-D`) argument when starting Synapse. + +See `worker_daemonize` for more information on daemonizing workers. + +Example configuration: +```yaml +daemonize: true +``` +--- +### `print_pidfile` + +Print the path to the pidfile just before daemonizing. Defaults to false. + +This can also be set by the `--print-pidfile` argument when starting Synapse. + +Example configuration: +```yaml +print_pidfile: true +``` +--- +### `user_agent_suffix` + +A suffix that is appended to the Synapse user-agent (ex. `Synapse/v1.123.0`). Defaults +to None + +Example configuration: +```yaml +user_agent_suffix: " (I'm a teapot; Linux x86_64)" +``` +--- +### `use_frozen_dicts` + +Determines whether we should freeze the internal dict object in `FrozenEvent`. Freezing +prevents bugs where we accidentally share e.g. signature dicts. However, freezing a +dict is expensive. Defaults to false. + +Example configuration: +```yaml +use_frozen_dicts: true +``` +--- ### `web_client_location` The absolute URL to the web client which `/` will redirect to. Defaults to none. @@ -595,6 +642,17 @@ listeners: - names: [client, federation] ``` +--- +### `manhole` + +Turn on the Twisted telnet manhole service on the given port. Defaults to none. + +This can also be set by the `--manhole` argument when starting Synapse. + +Example configuration: +```yaml +manhole: 1234 +``` --- ### `manhole_settings` -- GitLab