From 9f5bea76949c4458deff00efffdb032d1d02d3f9 Mon Sep 17 00:00:00 2001 From: creme Date: Tue, 29 Nov 2022 15:25:10 +0100 Subject: [PATCH] update configs --- .../workers/federation_sender4.yaml | 13 ++++ .../federation_sender4_log_config.yaml | 77 +++++++++++++++++++ .../workers/generic_worker1.yaml | 2 - .../workers/generic_worker2.yaml | 2 - .../workers/generic_worker3.yaml | 2 - .../workers/generic_worker4.yaml | 2 - etc/nginx/include.d/generic_worker.conf | 13 +++- etc/nginx/include.d/synapse-wellknown.conf | 56 ++++++++++++++ .../sites-available/matrix.envs.net.conf | 18 +---- 9 files changed, 158 insertions(+), 27 deletions(-) create mode 100644 etc/matrix-synapse/workers/federation_sender4.yaml create mode 100644 etc/matrix-synapse/workers/federation_sender4_log_config.yaml create mode 100644 etc/nginx/include.d/synapse-wellknown.conf diff --git a/etc/matrix-synapse/workers/federation_sender4.yaml b/etc/matrix-synapse/workers/federation_sender4.yaml new file mode 100644 index 0000000..b9f0f6f --- /dev/null +++ b/etc/matrix-synapse/workers/federation_sender4.yaml @@ -0,0 +1,13 @@ +worker_app: synapse.app.federation_sender +worker_name: federation_sender4 + +# The replication listener on the synapse to talk to. +worker_replication_host: 127.0.0.1 +worker_replication_http_port: 9093 + +worker_log_config: /etc/matrix-synapse/workers/federation_sender4_log_config.yaml + +worker_listeners: + - type: metrics + bind_addresses: ['0.0.0.0'] + port: 9104 diff --git a/etc/matrix-synapse/workers/federation_sender4_log_config.yaml b/etc/matrix-synapse/workers/federation_sender4_log_config.yaml new file mode 100644 index 0000000..d8e2a65 --- /dev/null +++ b/etc/matrix-synapse/workers/federation_sender4_log_config.yaml @@ -0,0 +1,77 @@ +# Log configuration for Synapse. +# +# This is a YAML file containing a standard Python logging configuration +# dictionary. See [1] for details on the valid settings. +# +# Synapse also supports structured logging for machine readable logs which can +# be ingested by ELK stacks. See [2] for details. +# +# [1]: https://docs.python.org/3.7/library/logging.config.html#configuration-dictionary-schema +# [2]: https://matrix-org.github.io/synapse/latest/structured_logging.html + +version: 1 + +formatters: + precise: + format: '%(asctime)s - %(name)s - %(lineno)d - %(levelname)s - %(request)s - %(message)s' + +handlers: + file: + class: logging.handlers.TimedRotatingFileHandler + formatter: precise + filename: /var/log/matrix-synapse/worker_federation_sender4.log + when: midnight + backupCount: 2 # Does not include the current log file. + encoding: utf8 + + # Default to buffering writes to log file for efficiency. + # WARNING/ERROR logs will still be flushed immediately, but there will be a + # delay (of up to `period` seconds, or until the buffer is full with + # `capacity` messages) before INFO/DEBUG logs get written. + buffer: + class: synapse.logging.handlers.PeriodicallyFlushingMemoryHandler + target: file + + # The capacity is the maximum number of log lines that are buffered + # before being written to disk. Increasing this will lead to better + # performance, at the expensive of it taking longer for log lines to + # be written to disk. + # This parameter is required. + capacity: 10 + + # Logs with a level at or above the flush level will cause the buffer to + # be flushed immediately. + # Default value: 40 (ERROR) + # Other values: 50 (CRITICAL), 30 (WARNING), 20 (INFO), 10 (DEBUG) + flushLevel: 30 # Flush immediately for WARNING logs and higher + + # The period of time, in seconds, between forced flushes. + # Messages will not be delayed for longer than this time. + # Default value: 5 seconds + period: 5 + + # A handler that writes logs to stderr. Unused by default, but can be used + # instead of "buffer" and "file" in the logger handlers. + console: + class: logging.StreamHandler + formatter: precise + +loggers: + synapse.storage.SQL: + # beware: increasing this to DEBUG will make synapse log sensitive + # information such as access tokens. + level: WARN + +root: + level: WARN + + # Write logs to the `buffer` handler, which will buffer them together in memory, + # then write them to a file. + # + # Replace "buffer" with "console" to log to stderr instead. (Note that you'll + # also need to update the configuration for the `twisted` logger above, in + # this case.) + # + handlers: [buffer] + +disable_existing_loggers: false diff --git a/etc/matrix-synapse/workers/generic_worker1.yaml b/etc/matrix-synapse/workers/generic_worker1.yaml index 2bd1dd3..8ae8266 100644 --- a/etc/matrix-synapse/workers/generic_worker1.yaml +++ b/etc/matrix-synapse/workers/generic_worker1.yaml @@ -5,8 +5,6 @@ worker_name: generic_worker1 worker_replication_host: 127.0.0.1 worker_replication_http_port: 9093 -worker_main_http_uri: http://localhost:8008/ - worker_log_config: /etc/matrix-synapse/workers/generic_worker1_log_config.yaml worker_listeners: diff --git a/etc/matrix-synapse/workers/generic_worker2.yaml b/etc/matrix-synapse/workers/generic_worker2.yaml index 4442296..ae56696 100644 --- a/etc/matrix-synapse/workers/generic_worker2.yaml +++ b/etc/matrix-synapse/workers/generic_worker2.yaml @@ -5,8 +5,6 @@ worker_name: generic_worker2 worker_replication_host: 127.0.0.1 worker_replication_http_port: 9093 -worker_main_http_uri: http://localhost:8008/ - worker_log_config: /etc/matrix-synapse/workers/generic_worker2_log_config.yaml worker_listeners: diff --git a/etc/matrix-synapse/workers/generic_worker3.yaml b/etc/matrix-synapse/workers/generic_worker3.yaml index 772d6f3..8da8ed2 100644 --- a/etc/matrix-synapse/workers/generic_worker3.yaml +++ b/etc/matrix-synapse/workers/generic_worker3.yaml @@ -5,8 +5,6 @@ worker_name: generic_worker3 worker_replication_host: 127.0.0.1 worker_replication_http_port: 9093 -worker_main_http_uri: http://localhost:8008/ - worker_log_config: /etc/matrix-synapse/workers/generic_worker3_log_config.yaml worker_listeners: diff --git a/etc/matrix-synapse/workers/generic_worker4.yaml b/etc/matrix-synapse/workers/generic_worker4.yaml index 623fcb2..905d87f 100644 --- a/etc/matrix-synapse/workers/generic_worker4.yaml +++ b/etc/matrix-synapse/workers/generic_worker4.yaml @@ -5,8 +5,6 @@ worker_name: generic_worker4 worker_replication_host: 127.0.0.1 worker_replication_http_port: 9093 -worker_main_http_uri: http://localhost:8008/ - worker_log_config: /etc/matrix-synapse/workers/generic_worker4_log_config.yaml worker_listeners: diff --git a/etc/nginx/include.d/generic_worker.conf b/etc/nginx/include.d/generic_worker.conf index fb15465..a95b924 100644 --- a/etc/nginx/include.d/generic_worker.conf +++ b/etc/nginx/include.d/generic_worker.conf @@ -14,7 +14,7 @@ location ~ ^/_matrix/client/(r0|v3)/sync$ { location ~ ^/_matrix/client/(api/v1|r0|v3)/events$ { include include.d/synapse-proxy.conf; - proxy_pass http://generic_worker_lc; + proxy_pass http://localhost:8083; } location ~ ^/_matrix/client/(api/v1|r0|v3)/initialSync$ { @@ -94,6 +94,11 @@ location ~ ^/_matrix/federation/v1/event_auth/ { proxy_pass http://generic_worker_lc; } +location ~ ^/_matrix/federation/v1/timestamp_to_event/ { + include include.d/synapse-proxy.conf; + proxy_pass http://generic_worker_lc; +} + location ~ ^/_matrix/federation/v1/exchange_third_party_invite/ { include include.d/synapse-proxy.conf; proxy_pass http://generic_worker_lc; @@ -213,6 +218,11 @@ location ~ ^/_matrix/client/(api/v1|r0|v3|unstable)/joined_rooms$ { proxy_pass http://generic_worker_lc; } +location ~ ^/_matrix/client/v1/rooms/.*/timestamp_to_event$ { + include include.d/synapse-proxy.conf; + proxy_pass http://generic_worker_lc; +} + location ~ ^/_matrix/client/(api/v1|r0|v3|unstable)/search$ { include include.d/synapse-proxy.conf; proxy_pass http://generic_worker_lc; @@ -240,7 +250,6 @@ location ~ ^/_matrix/client/(r0|v3|unstable)/room_keys/ { proxy_pass http://generic_worker_lc; } -# Note that ^/_matrix/client/(r0|v3|unstable)/keys/upload/ requires `worker_main_http_uri` location ~ ^/_matrix/client/(r0|v3|unstable)/keys/upload/ { include include.d/synapse-proxy.conf; proxy_pass http://generic_worker_lc; diff --git a/etc/nginx/include.d/synapse-wellknown.conf b/etc/nginx/include.d/synapse-wellknown.conf new file mode 100644 index 0000000..f57a779 --- /dev/null +++ b/etc/nginx/include.d/synapse-wellknown.conf @@ -0,0 +1,56 @@ +# matrix/support +location /.well-known/matrix/support { + add_header Access-Control-Allow-Origin '*'; + add_header Content-Type application/json; + return 200 '{ + "admins": [ + { + "matrix_id": "@creme:envs.net", + "email_address": "hostmaster@envs.net", + "role": "admin" + } + ], + "support_page": "https://matrix.to/#/#envs:envs.net" +}'; +} + +# matrix/server +location /.well-known/matrix/server { + add_header Access-Control-Allow-Origin '*'; + add_header Content-Type application/json; + return 200 '{ + "m.server": "matrix.envs.net:443" +}'; +} + +# matrix/client +location /.well-known/matrix/client { + add_header Access-Control-Allow-Origin '*'; + add_header Content-Type application/json; + return 200 '{ + "m.homeserver": { + "base_url": "https://matrix.envs.net" + }, + "m.integrations": { + "managers": [ + { + "ui_url": "https://dimension.envs.net/riot", + "api_url": "https://dimension.envs.net/api/v1/scalar" + }, + { + "ui_url": "https://scalar.vector.im/", + "api_url": "https://scalar.vector.im/api" + } + ] + }, + "m.integrations_widget": { + "url": "https://dimension.envs.net/riot", + "data": { + "api_url": "https://dimension.envs.net/api/v1/scalar" + } + }, + "m.tile_server": { + "map_style_url": "https://api.maptiler.com/maps/streets/style.json?key=jrKVgM1ozvdgREfvtZ8X" + } +}'; +} diff --git a/etc/nginx/sites-available/matrix.envs.net.conf b/etc/nginx/sites-available/matrix.envs.net.conf index 648adc4..4ba3449 100644 --- a/etc/nginx/sites-available/matrix.envs.net.conf +++ b/etc/nginx/sites-available/matrix.envs.net.conf @@ -24,23 +24,7 @@ server { include snippets/ssl.conf; ## well-known - location /.well-known/matrix/support { - add_header Access-Control-Allow-Origin '*'; - add_header Content-Type application/json; - return 200 '{"admins": [{"matrix_id": "@creme:envs.net", "email_address": "hostmaster@envs.net", "role": "admin"}], "support_page": "https://matrix.to/#/#envs:envs.net"}'; - } - - location /.well-known/matrix/server { - add_header Access-Control-Allow-Origin '*'; - add_header Content-Type application/json; - return 200 '{"m.server": "matrix.envs.net:443"}'; - } - - location /.well-known/matrix/client { - add_header Access-Control-Allow-Origin '*'; - add_header Content-Type application/json; - return 200 '{"m.homeserver": {"base_url": "https://matrix.envs.net"}, "m.integrations": {"managers": [{"ui_url": "https://dimension.envs.net/riot", "api_url": "https://dimension.envs.net/api/v1/scalar"}, {"ui_url": "https://scalar.vector.im/", "api_url": "https://scalar.vector.im/api"}]}, "m.integrations_widget": {"url": "https://dimension.envs.net/riot", "data": {"api_url": "https://dimension.envs.net/api/v1/scalar"}}, "m.tile_server": {"map_style_url": "https://api.maptiler.com/maps/streets/style.json?key=jrKVgM1ozvdgREfvtZ8X"}}'; - } + include include.d/synapse-wellknown.conf; # workers include include.d/generic_worker.conf;