ini: cleanups + added generic cache definition

This commit is contained in:
RhodeCode Admin 2023-01-05 09:50:14 +01:00
parent 2fb5b22ffd
commit 95bdb4e1c3
3 changed files with 77 additions and 16 deletions

View file

@ -429,11 +429,40 @@ rc_cache.cache_repo_longterm.expiration_time = 2592000
rc_cache.cache_repo_longterm.max_size = 10000 rc_cache.cache_repo_longterm.max_size = 10000
; *********************************************
; `cache_general` cache for general purpose use
; for simplicity use rc.file_namespace backend,
; for performance and scale use rc.redis
; *********************************************
rc_cache.cache_general.backend = dogpile.cache.rc.file_namespace
rc_cache.cache_general.expiration_time = 43200
; file cache store path. Defaults to `cache_dir =` value or tempdir if both values are not set
#rc_cache.cache_general.arguments.filename = /tmp/cache_general.db
; alternative `cache_general` redis backend with distributed lock
#rc_cache.cache_general.backend = dogpile.cache.rc.redis
#rc_cache.cache_general.expiration_time = 300
; redis_expiration_time needs to be greater then expiration_time
#rc_cache.cache_general.arguments.redis_expiration_time = 7200
#rc_cache.cache_general.arguments.host = localhost
#rc_cache.cache_general.arguments.port = 6379
#rc_cache.cache_general.arguments.db = 0
#rc_cache.cache_general.arguments.socket_timeout = 30
; more Redis options: https://dogpilecache.sqlalchemy.org/en/latest/api.html#redis-backends
#rc_cache.cache_general.arguments.distributed_lock = true
; auto-renew lock to prevent stale locks, slower but safer. Use only if problems happen
#rc_cache.cache_general.arguments.lock_auto_renewal = true
; ************************************************* ; *************************************************
; `cache_perms` cache for permission tree, auth TTL ; `cache_perms` cache for permission tree, auth TTL
; for simplicity use rc.file_namespace backend,
; for performance and scale use rc.redis
; ************************************************* ; *************************************************
rc_cache.cache_perms.backend = dogpile.cache.rc.file_namespace rc_cache.cache_perms.backend = dogpile.cache.rc.file_namespace
rc_cache.cache_perms.expiration_time = 300 rc_cache.cache_perms.expiration_time = 3600
; file cache store path. Defaults to `cache_dir =` value or tempdir if both values are not set ; file cache store path. Defaults to `cache_dir =` value or tempdir if both values are not set
#rc_cache.cache_perms.arguments.filename = /tmp/cache_perms.db #rc_cache.cache_perms.arguments.filename = /tmp/cache_perms.db
@ -456,6 +485,8 @@ rc_cache.cache_perms.expiration_time = 300
; *************************************************** ; ***************************************************
; `cache_repo` cache for file tree, Readme, RSS FEEDS ; `cache_repo` cache for file tree, Readme, RSS FEEDS
; for simplicity use rc.file_namespace backend,
; for performance and scale use rc.redis
; *************************************************** ; ***************************************************
rc_cache.cache_repo.backend = dogpile.cache.rc.file_namespace rc_cache.cache_repo.backend = dogpile.cache.rc.file_namespace
rc_cache.cache_repo.expiration_time = 2592000 rc_cache.cache_repo.expiration_time = 2592000
@ -852,10 +883,9 @@ qualname = celery
class = StreamHandler class = StreamHandler
args = (sys.stderr, ) args = (sys.stderr, )
level = DEBUG level = DEBUG
formatter = color_formatter ; To enable JSON formatted logs replace 'generic/color_formatter' with 'json'
; To enable JSON formatted logs replace generic with json
; This allows sending properly formatted logs to grafana loki or elasticsearch ; This allows sending properly formatted logs to grafana loki or elasticsearch
#formatter = json formatter = color_formatter
[handler_console_sql] [handler_console_sql]
; "level = DEBUG" logs SQL queries and results. ; "level = DEBUG" logs SQL queries and results.
@ -864,6 +894,8 @@ formatter = color_formatter
class = StreamHandler class = StreamHandler
args = (sys.stderr, ) args = (sys.stderr, )
level = WARN level = WARN
; To enable JSON formatted logs replace 'generic/color_formatter_sql' with 'json'
; This allows sending properly formatted logs to grafana loki or elasticsearch
formatter = color_formatter_sql formatter = color_formatter_sql
; ########## ; ##########

View file

@ -1,6 +1,7 @@
; ##################### ; #####################
; LOGGING CONFIGURATION ; LOGGING CONFIGURATION
; ##################### ; #####################
[loggers] [loggers]
keys = root, sqlalchemy, beaker, celery, rhodecode, ssh_wrapper keys = root, sqlalchemy, beaker, celery, rhodecode, ssh_wrapper
@ -55,10 +56,8 @@ qualname = celery
class = StreamHandler class = StreamHandler
args = (sys.stderr, ) args = (sys.stderr, )
level = $RC_LOGGING_LEVEL level = $RC_LOGGING_LEVEL
; To enable JSON formatted logs replace generic with json ; To enable JSON formatted logs replace 'generic' with 'json'
; This allows sending properly formatted logs to grafana loki or elasticsearch ; This allows sending properly formatted logs to grafana loki or elasticsearch
#formatter = json
#formatter = generic
formatter = $RC_LOGGING_FORMATTER formatter = $RC_LOGGING_FORMATTER
[handler_console_sql] [handler_console_sql]
@ -68,10 +67,8 @@ formatter = $RC_LOGGING_FORMATTER
class = StreamHandler class = StreamHandler
args = (sys.stderr, ) args = (sys.stderr, )
level = WARN level = WARN
; To enable JSON formatted logs replace generic with json ; To enable JSON formatted logs replace 'generic/color_formatter_sql' with 'json'
; This allows sending properly formatted logs to grafana loki or elasticsearch ; This allows sending properly formatted logs to grafana loki or elasticsearch
#formatter = json
#formatter = generic
formatter = $RC_LOGGING_FORMATTER formatter = $RC_LOGGING_FORMATTER
; ########## ; ##########
@ -94,5 +91,5 @@ format = %(asctime)s.%(msecs)03d [%(process)d] %(levelname)-5.5s [%(name)s] %(me
datefmt = %Y-%m-%d %H:%M:%S datefmt = %Y-%m-%d %H:%M:%S
[formatter_json] [formatter_json]
format = %(message)s format = %(timestamp)s %(levelname)s %(name)s %(message)s %(req_id)s
class = rhodecode.lib._vendor.jsonlogger.JsonFormatter class = rhodecode.lib._vendor.jsonlogger.JsonFormatter

View file

@ -380,11 +380,40 @@ rc_cache.cache_repo_longterm.expiration_time = 2592000
rc_cache.cache_repo_longterm.max_size = 10000 rc_cache.cache_repo_longterm.max_size = 10000
; *********************************************
; `cache_general` cache for general purpose use
; for simplicity use rc.file_namespace backend,
; for performance and scale use rc.redis
; *********************************************
rc_cache.cache_general.backend = dogpile.cache.rc.file_namespace
rc_cache.cache_general.expiration_time = 43200
; file cache store path. Defaults to `cache_dir =` value or tempdir if both values are not set
#rc_cache.cache_general.arguments.filename = /tmp/cache_general.db
; alternative `cache_general` redis backend with distributed lock
#rc_cache.cache_general.backend = dogpile.cache.rc.redis
#rc_cache.cache_general.expiration_time = 300
; redis_expiration_time needs to be greater then expiration_time
#rc_cache.cache_general.arguments.redis_expiration_time = 7200
#rc_cache.cache_general.arguments.host = localhost
#rc_cache.cache_general.arguments.port = 6379
#rc_cache.cache_general.arguments.db = 0
#rc_cache.cache_general.arguments.socket_timeout = 30
; more Redis options: https://dogpilecache.sqlalchemy.org/en/latest/api.html#redis-backends
#rc_cache.cache_general.arguments.distributed_lock = true
; auto-renew lock to prevent stale locks, slower but safer. Use only if problems happen
#rc_cache.cache_general.arguments.lock_auto_renewal = true
; ************************************************* ; *************************************************
; `cache_perms` cache for permission tree, auth TTL ; `cache_perms` cache for permission tree, auth TTL
; for simplicity use rc.file_namespace backend,
; for performance and scale use rc.redis
; ************************************************* ; *************************************************
rc_cache.cache_perms.backend = dogpile.cache.rc.file_namespace rc_cache.cache_perms.backend = dogpile.cache.rc.file_namespace
rc_cache.cache_perms.expiration_time = 300 rc_cache.cache_perms.expiration_time = 3600
; file cache store path. Defaults to `cache_dir =` value or tempdir if both values are not set ; file cache store path. Defaults to `cache_dir =` value or tempdir if both values are not set
#rc_cache.cache_perms.arguments.filename = /tmp/cache_perms.db #rc_cache.cache_perms.arguments.filename = /tmp/cache_perms.db
@ -407,6 +436,8 @@ rc_cache.cache_perms.expiration_time = 300
; *************************************************** ; ***************************************************
; `cache_repo` cache for file tree, Readme, RSS FEEDS ; `cache_repo` cache for file tree, Readme, RSS FEEDS
; for simplicity use rc.file_namespace backend,
; for performance and scale use rc.redis
; *************************************************** ; ***************************************************
rc_cache.cache_repo.backend = dogpile.cache.rc.file_namespace rc_cache.cache_repo.backend = dogpile.cache.rc.file_namespace
rc_cache.cache_repo.expiration_time = 2592000 rc_cache.cache_repo.expiration_time = 2592000
@ -803,10 +834,9 @@ qualname = celery
class = StreamHandler class = StreamHandler
args = (sys.stderr, ) args = (sys.stderr, )
level = INFO level = INFO
formatter = generic ; To enable JSON formatted logs replace 'generic/color_formatter' with 'json'
; To enable JSON formatted logs replace generic with json
; This allows sending properly formatted logs to grafana loki or elasticsearch ; This allows sending properly formatted logs to grafana loki or elasticsearch
#formatter = json formatter = generic
[handler_console_sql] [handler_console_sql]
; "level = DEBUG" logs SQL queries and results. ; "level = DEBUG" logs SQL queries and results.
@ -815,6 +845,8 @@ formatter = generic
class = StreamHandler class = StreamHandler
args = (sys.stderr, ) args = (sys.stderr, )
level = WARN level = WARN
; To enable JSON formatted logs replace 'generic/color_formatter_sql' with 'json'
; This allows sending properly formatted logs to grafana loki or elasticsearch
formatter = generic formatter = generic
; ########## ; ##########