summary refs log tree commit diff
path: root/v1.41/sample_log_config.yaml
diff options
context:
space:
mode:
authorrichvdh <richvdh@users.noreply.github.com>2021-08-17 12:10:35 +0000
committerrichvdh <richvdh@users.noreply.github.com>2021-08-17 12:10:35 +0000
commitcec4794701f73a8cd9ff6c1a36d8d98966cdfda3 (patch)
tree7d8c0a679667b3038b9cb1be31f63d45854ebb2a /v1.41/sample_log_config.yaml
parentdeploy: 3bcd525b46678ff228c4275acad47c12974c9a33 (diff)
downloadsynapse-cec4794701f73a8cd9ff6c1a36d8d98966cdfda3.tar.xz
deploy: 642a42eddece60afbbd5e5a6659fa9b939238b4a
Diffstat (limited to 'v1.41/sample_log_config.yaml')
-rw-r--r--v1.41/sample_log_config.yaml71
1 files changed, 71 insertions, 0 deletions
diff --git a/v1.41/sample_log_config.yaml b/v1.41/sample_log_config.yaml
new file mode 100644
index 0000000000..669e600081
--- /dev/null
+++ b/v1.41/sample_log_config.yaml
@@ -0,0 +1,71 @@
+# 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/homeserver.log
+        when: midnight
+        backupCount: 3  # Does not include the current log file.
+        encoding: utf8
+
+    # Default to buffering writes to log file for efficiency. This means that
+    # will be a delay for INFO/DEBUG logs to get written, but WARNING/ERROR
+    # logs will still be flushed immediately.
+    buffer:
+        class: logging.handlers.MemoryHandler
+        target: file
+        # The capacity is the 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.
+        capacity: 10
+        flushLevel: 30  # Flush for WARNING logs as well
+
+    # 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: INFO
+
+    twisted:
+        # We send the twisted logging directly to the file handler,
+        # to work around https://github.com/matrix-org/synapse/issues/3471
+        # when using "buffer" logger. Use "console" to log to stderr instead.
+        handlers: [file]
+        propagate: false
+
+root:
+    level: INFO
+
+    # 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