##// END OF EJS Templates
config: updated .ini files with new style comments...
marcink -
r806:a8b1674b default
parent child Browse files
Show More
@@ -1,175 +1,237 b''
1 ################################################################################
2 # RhodeCode VCSServer with HTTP Backend - configuration #
3 ################################################################################
1 ## -*- coding: utf-8 -*-
4 2
3 ; #################################
4 ; RHODECODE VCSSERVER CONFIGURATION
5 ; #################################
5 6
6 7 [server:main]
7 ## COMMON ##
8 ; COMMON HOST/IP CONFIG
8 9 host = 0.0.0.0
9 10 port = 9900
10 11
11 ###########################################################
12 ## WAITRESS WSGI SERVER - Recommended for Development ####
13 ###########################################################
12 ; ##################################################
13 ; WAITRESS WSGI SERVER - Recommended for Development
14 ; ##################################################
14 15
16 ; use server type
15 17 use = egg:waitress#main
16 ## number of worker threads
18
19 ; number of worker threads
17 20 threads = 5
18 ## MAX BODY SIZE 100GB
21
22 ; MAX BODY SIZE 100GB
19 23 max_request_body_size = 107374182400
20 ## Use poll instead of select, fixes file descriptors limits problems.
21 ## May not work on old windows systems.
24
25 ; Use poll instead of select, fixes file descriptors limits problems.
26 ; May not work on old windows systems.
22 27 asyncore_use_poll = true
23 28
24 29
25 ##########################
26 ## GUNICORN WSGI SERVER ##
27 ##########################
28 ## run with gunicorn --log-config vcsserver.ini --paste vcsserver.ini
30 ; ###########################
31 ; GUNICORN APPLICATION SERVER
32 ; ###########################
29 33
34 ; run with gunicorn --log-config rhodecode.ini --paste rhodecode.ini
35
36 ; Module to use, this setting shouldn't be changed
30 37 #use = egg:gunicorn#main
31 ## Sets the number of process workers. More workers means more concurrent connections
32 ## RhodeCode can handle at the same time. Each additional worker also it increases
33 ## memory usage as each has it's own set of caches.
34 ## Recommended value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers, but no more
35 ## than 8-10 unless for really big deployments .e.g 700-1000 users.
36 ## `instance_id = *` must be set in the [app:main] section below (which is the default)
37 ## when using more than 1 worker.
38
39 ; Sets the number of process workers. More workers means more concurrent connections
40 ; RhodeCode can handle at the same time. Each additional worker also it increases
41 ; memory usage as each has it's own set of caches.
42 ; Recommended value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers, but no more
43 ; than 8-10 unless for really big deployments .e.g 700-1000 users.
44 ; `instance_id = *` must be set in the [app:main] section below (which is the default)
45 ; when using more than 1 worker.
38 46 #workers = 2
39 47
40 ## Gunicorn access log level
48 ; Gunicorn access log level
41 49 #loglevel = info
42 50
43 ## process name visible in process list
51 ; Process name visible in process list
44 52 #proc_name = rhodecode_vcsserver
45 53
46 ## type of worker class, currently `sync` is the only option allowed.
54 ; Type of worker class, one of sync, gevent
55 ; currently `sync` is the only option allowed.
47 56 #worker_class = sync
48 57
49 ## The maximum number of simultaneous clients. Valid only for Gevent
58 ; The maximum number of simultaneous clients. Valid only for gevent
50 59 #worker_connections = 10
51 60
52 ## max number of requests that worker will handle before being gracefully
53 ## restarted, could prevent memory leaks
61 ; Max number of requests that worker will handle before being gracefully restarted.
62 ; Prevents memory leaks, jitter adds variability so not all workers are restarted at once.
54 63 #max_requests = 1000
55 64 #max_requests_jitter = 30
56 65
57 ## amount of time a worker can spend with handling a request before it
58 ## gets killed and restarted. Set to 6hrs
66 ; Amount of time a worker can spend with handling a request before it
67 ; gets killed and restarted. By default set to 21600 (6hrs)
68 ; Examples: 1800 (30min), 3600 (1hr), 7200 (2hr), 43200 (12h)
59 69 #timeout = 21600
60 70
61 ## The maximum size of HTTP request line in bytes.
62 ## 0 for unlimited
71 ; The maximum size of HTTP request line in bytes.
72 ; 0 for unlimited
63 73 #limit_request_line = 0
64 74
65 ## Limit the number of HTTP headers fields in a request.
66 ## By default this value is 100 and can't be larger than 32768.
75 ; Limit the number of HTTP headers fields in a request.
76 ; By default this value is 100 and can't be larger than 32768.
67 77 #limit_request_fields = 32768
68 78
69 ## Limit the allowed size of an HTTP request header field.
70 ## Value is a positive number or 0.
71 ## Setting it to 0 will allow unlimited header field sizes.
79 ; Limit the allowed size of an HTTP request header field.
80 ; Value is a positive number or 0.
81 ; Setting it to 0 will allow unlimited header field sizes.
72 82 #limit_request_field_size = 0
73 83
74 ## Timeout for graceful workers restart.
75 ## After receiving a restart signal, workers have this much time to finish
76 ## serving requests. Workers still alive after the timeout (starting from the
77 ## receipt of the restart signal) are force killed.
84 ; Timeout for graceful workers restart.
85 ; After receiving a restart signal, workers have this much time to finish
86 ; serving requests. Workers still alive after the timeout (starting from the
87 ; receipt of the restart signal) are force killed.
88 ; Examples: 1800 (30min), 3600 (1hr), 7200 (2hr), 43200 (12h)
78 89 #graceful_timeout = 3600
79 90
80 91 # The number of seconds to wait for requests on a Keep-Alive connection.
81 92 # Generally set in the 1-5 seconds range.
82 93 #keepalive = 2
83 94
84 ## Maximum memory usage that each worker can use before it will receive a
85 ## graceful restart signal, e.g 10MB = 10485760 (10 * 1024 * 1024)
86 # 0 = memory monitoring is disabled
95 ; Maximum memory usage that each worker can use before it will receive a
96 ; graceful restart signal 0 = memory monitoring is disabled
97 ; Examples: 268435456 (256MB), 536870912 (512MB)
98 ; 1073741824 (1GB), 2147483648 (2GB), 4294967296 (4GB)
87 99 #memory_max_usage = 0
88 100
89 ## How often in seconds to check for memory usage for each gunicorn worker
101 ; How often in seconds to check for memory usage for each gunicorn worker
90 102 #memory_usage_check_interval = 60
91 103
92 ## Threshold value for which we don't recycle worker if GarbageCollection
93 ## frees up enough resources. Before each restart we try to run GC on worker
94 ## in case we get enough free memory after that, restart will not happen.
104 ; Threshold value for which we don't recycle worker if GarbageCollection
105 ; frees up enough resources. Before each restart we try to run GC on worker
106 ; in case we get enough free memory after that, restart will not happen.
95 107 #memory_usage_recovery_threshold = 0.8
96 108
97 109
98 110 [app:main]
111 ; The %(here)s variable will be replaced with the absolute path of parent directory
112 ; of this file
99 113 use = egg:rhodecode-vcsserver
100 114
101 pyramid.default_locale_name = en
115
116 ; #############
117 ; DEBUG OPTIONS
118 ; #############
119
120 # During development the we want to have the debug toolbar enabled
102 121 pyramid.includes =
122 pyramid_debugtoolbar
103 123
104 ## default locale used by VCS systems
124 debugtoolbar.hosts = 0.0.0.0/0
125 debugtoolbar.exclude_prefixes =
126 /css
127 /fonts
128 /images
129 /js
130
131 ; #################
132 ; END DEBUG OPTIONS
133 ; #################
134
135 ; Pyramid default locales, we need this to be set
136 pyramid.default_locale_name = en
137
138 ; default locale used by VCS systems
105 139 locale = en_US.UTF-8
106 140
107
108 ## path to binaries for vcsserver, it should be set by the installer
109 ## at installation time, e.g /home/user/vcsserver-1/profile/bin
141 ; path to binaries for vcsserver, it should be set by the installer
142 ; at installation time, e.g /home/user/vcsserver-1/profile/bin
143 ; it can also be a path to nix-build output in case of development
110 144 core.binary_dir = ""
111 145
112 ## Custom exception store path, defaults to TMPDIR
113 ## This is used to store exception from RhodeCode in shared directory
146 ; Custom exception store path, defaults to TMPDIR
147 ; This is used to store exception from RhodeCode in shared directory
114 148 #exception_tracker.store_path =
115 149
116 ## Default cache dir for caches. Putting this into a ramdisk
117 ## can boost performance, eg. /tmpfs/data_ramdisk, however this directory might require
118 ## large amount of space
119 cache_dir = %(here)s/rcdev/data
150 ; #############
151 ; DOGPILE CACHE
152 ; #############
153
154 ; Default cache dir for caches. Putting this into a ramdisk can boost performance.
155 ; eg. /tmpfs/data_ramdisk, however this directory might require large amount of space
156 cache_dir = %(here)s/data
120 157
121 ## cache region for storing repo_objects cache
158 ; ***************************************
159 ; `repo_object` cache, default file based
160 ; ***************************************
161
162 ; `repo_object` cache settings for vcs methods for repositories
122 163 rc_cache.repo_object.backend = dogpile.cache.rc.file_namespace
123 ## cache auto-expires after N seconds (2592000 == 30 days)
164
165 ; cache auto-expires after N seconds
166 ; Examples: 86400 (1Day), 604800 (7Days), 1209600 (14Days), 2592000 (30days), 7776000 (90Days)
124 167 rc_cache.repo_object.expiration_time = 2592000
125 168
126 ## cache file store path, if empty set automatically to tmp dir location
169 ; cache file store path, defaults to temporary directory if not set
127 170 #rc_cache.repo_object.arguments.filename = /tmp/vcsserver_cache.db
128 171
129 ## max size of LRU, old values will be discarded if the size of cache reaches max_size
130 rc_cache.repo_object.max_size = 100
172 ; **********************************************************
173 ; `repo_object` cache with redis backend
174 ; recommended for larger instance, or for better performance
175 ; **********************************************************
176
177 ; `repo_object` cache settings for vcs methods for repositories
178 #rc_cache.repo_object.backend = dogpile.cache.rc.redis_msgpack
179
180 ; cache auto-expires after N seconds
181 ; Examples: 86400 (1Day), 604800 (7Days), 1209600 (14Days), 2592000 (30days), 7776000 (90Days)
182 #rc_cache.repo_object.expiration_time = 2592000
183
184 ; redis_expiration_time needs to be greater then expiration_time
185 #rc_cache.repo_object.arguments.redis_expiration_time = 3592000
186
187 #rc_cache.repo_object.arguments.host = localhost
188 #rc_cache.repo_object.arguments.port = 6379
189 #rc_cache.repo_object.arguments.db = 5
190 #rc_cache.repo_object.arguments.socket_timeout = 30
191 ; more Redis options: https://dogpilecache.sqlalchemy.org/en/latest/api.html#redis-backends
192 #rc_cache.repo_object.arguments.distributed_lock = true
131 193
132 194
133 ################################
134 ### LOGGING CONFIGURATION ####
135 ################################
195 ; #####################
196 ; LOGGING CONFIGURATION
197 ; #####################
136 198 [loggers]
137 199 keys = root, vcsserver
138 200
139 201 [handlers]
140 202 keys = console
141 203
142 204 [formatters]
143 205 keys = generic
144 206
145 #############
146 ## LOGGERS ##
147 #############
207 ; #######
208 ; LOGGERS
209 ; #######
148 210 [logger_root]
149 211 level = NOTSET
150 212 handlers = console
151 213
152 214 [logger_vcsserver]
153 215 level = DEBUG
154 216 handlers =
155 217 qualname = vcsserver
156 218 propagate = 1
157 219
158 220
159 ##############
160 ## HANDLERS ##
161 ##############
221 ; ########
222 ; HANDLERS
223 ; ########
162 224
163 225 [handler_console]
164 226 class = StreamHandler
165 args = (sys.stderr,)
227 args = (sys.stderr, )
166 228 level = DEBUG
167 229 formatter = generic
168 230
169 ################
170 ## FORMATTERS ##
171 ################
231 ; ##########
232 ; FORMATTERS
233 ; ##########
172 234
173 235 [formatter_generic]
174 236 format = %(asctime)s.%(msecs)03d [%(process)d] %(levelname)-5.5s [%(name)s] %(message)s
175 237 datefmt = %Y-%m-%d %H:%M:%S
@@ -1,175 +1,200 b''
1 ################################################################################
2 # RhodeCode VCSServer with HTTP Backend - configuration #
3 ################################################################################
1 ## -*- coding: utf-8 -*-
4 2
3 ; #################################
4 ; RHODECODE VCSSERVER CONFIGURATION
5 ; #################################
5 6
6 7 [server:main]
7 ## COMMON ##
8 ; COMMON HOST/IP CONFIG
8 9 host = 127.0.0.1
9 10 port = 9900
10 11
11 ###########################################################
12 ## WAITRESS WSGI SERVER - Recommended for Development ####
13 ###########################################################
14 12
15 #use = egg:waitress#main
16 ## number of worker threads
17 #threads = 5
18 ## MAX BODY SIZE 100GB
19 #max_request_body_size = 107374182400
20 ## Use poll instead of select, fixes file descriptors limits problems.
21 ## May not work on old windows systems.
22 #asyncore_use_poll = true
13 ; ###########################
14 ; GUNICORN APPLICATION SERVER
15 ; ###########################
23 16
17 ; run with gunicorn --log-config rhodecode.ini --paste rhodecode.ini
24 18
25 ##########################
26 ## GUNICORN WSGI SERVER ##
27 ##########################
28 ## run with gunicorn --log-config vcsserver.ini --paste vcsserver.ini
29
19 ; Module to use, this setting shouldn't be changed
30 20 use = egg:gunicorn#main
31 ## Sets the number of process workers. More workers means more concurrent connections
32 ## RhodeCode can handle at the same time. Each additional worker also it increases
33 ## memory usage as each has it's own set of caches.
34 ## Recommended value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers, but no more
35 ## than 8-10 unless for really big deployments .e.g 700-1000 users.
36 ## `instance_id = *` must be set in the [app:main] section below (which is the default)
37 ## when using more than 1 worker.
21
22 ; Sets the number of process workers. More workers means more concurrent connections
23 ; RhodeCode can handle at the same time. Each additional worker also it increases
24 ; memory usage as each has it's own set of caches.
25 ; Recommended value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers, but no more
26 ; than 8-10 unless for really big deployments .e.g 700-1000 users.
27 ; `instance_id = *` must be set in the [app:main] section below (which is the default)
28 ; when using more than 1 worker.
38 29 workers = 2
39 30
40 ## Gunicorn access log level
31 ; Gunicorn access log level
41 32 loglevel = info
42 33
43 ## process name visible in process list
34 ; Process name visible in process list
44 35 proc_name = rhodecode_vcsserver
45 36
46 ## type of worker class, currently `sync` is the only option allowed.
37 ; Type of worker class, one of sync, gevent
38 ; currently `sync` is the only option allowed.
47 39 worker_class = sync
48 40
49 ## The maximum number of simultaneous clients. Valid only for Gevent
41 ; The maximum number of simultaneous clients. Valid only for gevent
50 42 worker_connections = 10
51 43
52 ## max number of requests that worker will handle before being gracefully
53 ## restarted, could prevent memory leaks
44 ; Max number of requests that worker will handle before being gracefully restarted.
45 ; Prevents memory leaks, jitter adds variability so not all workers are restarted at once.
54 46 max_requests = 1000
55 47 max_requests_jitter = 30
56 48
57 ## amount of time a worker can spend with handling a request before it
58 ## gets killed and restarted. Set to 6hrs
49 ; Amount of time a worker can spend with handling a request before it
50 ; gets killed and restarted. By default set to 21600 (6hrs)
51 ; Examples: 1800 (30min), 3600 (1hr), 7200 (2hr), 43200 (12h)
59 52 timeout = 21600
60 53
61 ## The maximum size of HTTP request line in bytes.
62 ## 0 for unlimited
54 ; The maximum size of HTTP request line in bytes.
55 ; 0 for unlimited
63 56 limit_request_line = 0
64 57
65 ## Limit the number of HTTP headers fields in a request.
66 ## By default this value is 100 and can't be larger than 32768.
58 ; Limit the number of HTTP headers fields in a request.
59 ; By default this value is 100 and can't be larger than 32768.
67 60 limit_request_fields = 32768
68 61
69 ## Limit the allowed size of an HTTP request header field.
70 ## Value is a positive number or 0.
71 ## Setting it to 0 will allow unlimited header field sizes.
62 ; Limit the allowed size of an HTTP request header field.
63 ; Value is a positive number or 0.
64 ; Setting it to 0 will allow unlimited header field sizes.
72 65 limit_request_field_size = 0
73 66
74 ## Timeout for graceful workers restart.
75 ## After receiving a restart signal, workers have this much time to finish
76 ## serving requests. Workers still alive after the timeout (starting from the
77 ## receipt of the restart signal) are force killed.
67 ; Timeout for graceful workers restart.
68 ; After receiving a restart signal, workers have this much time to finish
69 ; serving requests. Workers still alive after the timeout (starting from the
70 ; receipt of the restart signal) are force killed.
71 ; Examples: 1800 (30min), 3600 (1hr), 7200 (2hr), 43200 (12h)
78 72 graceful_timeout = 3600
79 73
80 74 # The number of seconds to wait for requests on a Keep-Alive connection.
81 75 # Generally set in the 1-5 seconds range.
82 76 keepalive = 2
83 77
84 ## Maximum memory usage that each worker can use before it will receive a
85 ## graceful restart signal, e.g 10MB = 10485760 (10 * 1024 * 1024)
86 # 0 = memory monitoring is disabled
78 ; Maximum memory usage that each worker can use before it will receive a
79 ; graceful restart signal 0 = memory monitoring is disabled
80 ; Examples: 268435456 (256MB), 536870912 (512MB)
81 ; 1073741824 (1GB), 2147483648 (2GB), 4294967296 (4GB)
87 82 memory_max_usage = 0
88 83
89 ## How often in seconds to check for memory usage for each gunicorn worker
84 ; How often in seconds to check for memory usage for each gunicorn worker
90 85 memory_usage_check_interval = 60
91 86
92 ## Threshold value for which we don't recycle worker if GarbageCollection
93 ## frees up enough resources. Before each restart we try to run GC on worker
94 ## in case we get enough free memory after that, restart will not happen.
87 ; Threshold value for which we don't recycle worker if GarbageCollection
88 ; frees up enough resources. Before each restart we try to run GC on worker
89 ; in case we get enough free memory after that, restart will not happen.
95 90 memory_usage_recovery_threshold = 0.8
96 91
97 92
98 93 [app:main]
94 ; The %(here)s variable will be replaced with the absolute path of parent directory
95 ; of this file
99 96 use = egg:rhodecode-vcsserver
100 97
98 ; Pyramid default locales, we need this to be set
101 99 pyramid.default_locale_name = en
102 pyramid.includes =
103 100
104 ## default locale used by VCS systems
101 ; default locale used by VCS systems
105 102 locale = en_US.UTF-8
106 103
107
108 ## path to binaries for vcsserver, it should be set by the installer
109 ## at installation time, e.g /home/user/vcsserver-1/profile/bin
104 ; path to binaries for vcsserver, it should be set by the installer
105 ; at installation time, e.g /home/user/vcsserver-1/profile/bin
106 ; it can also be a path to nix-build output in case of development
110 107 core.binary_dir = ""
111 108
112 ## Custom exception store path, defaults to TMPDIR
113 ## This is used to store exception from RhodeCode in shared directory
109 ; Custom exception store path, defaults to TMPDIR
110 ; This is used to store exception from RhodeCode in shared directory
114 111 #exception_tracker.store_path =
115 112
116 ## Default cache dir for caches. Putting this into a ramdisk
117 ## can boost performance, eg. /tmpfs/data_ramdisk, however this directory might require
118 ## large amount of space
119 cache_dir = %(here)s/rcdev/data
113 ; #############
114 ; DOGPILE CACHE
115 ; #############
116
117 ; Default cache dir for caches. Putting this into a ramdisk can boost performance.
118 ; eg. /tmpfs/data_ramdisk, however this directory might require large amount of space
119 cache_dir = %(here)s/data
120 120
121 ## cache region for storing repo_objects cache
121 ; ***************************************
122 ; `repo_object` cache, default file based
123 ; ***************************************
124
125 ; `repo_object` cache settings for vcs methods for repositories
122 126 rc_cache.repo_object.backend = dogpile.cache.rc.file_namespace
123 ## cache auto-expires after N seconds (2592000 == 30 days)
127
128 ; cache auto-expires after N seconds
129 ; Examples: 86400 (1Day), 604800 (7Days), 1209600 (14Days), 2592000 (30days), 7776000 (90Days)
124 130 rc_cache.repo_object.expiration_time = 2592000
125 131
126 ## cache file store path, if empty set automatically to tmp dir location
132 ; cache file store path, defaults to temporary directory if not set
127 133 #rc_cache.repo_object.arguments.filename = /tmp/vcsserver_cache.db
128 134
129 ## max size of LRU, old values will be discarded if the size of cache reaches max_size
130 rc_cache.repo_object.max_size = 100
135 ; **********************************************************
136 ; `repo_object` cache with redis backend
137 ; recommended for larger instance, or for better performance
138 ; **********************************************************
139
140 ; `repo_object` cache settings for vcs methods for repositories
141 #rc_cache.repo_object.backend = dogpile.cache.rc.redis_msgpack
142
143 ; cache auto-expires after N seconds
144 ; Examples: 86400 (1Day), 604800 (7Days), 1209600 (14Days), 2592000 (30days), 7776000 (90Days)
145 #rc_cache.repo_object.expiration_time = 2592000
146
147 ; redis_expiration_time needs to be greater then expiration_time
148 #rc_cache.repo_object.arguments.redis_expiration_time = 3592000
149
150 #rc_cache.repo_object.arguments.host = localhost
151 #rc_cache.repo_object.arguments.port = 6379
152 #rc_cache.repo_object.arguments.db = 5
153 #rc_cache.repo_object.arguments.socket_timeout = 30
154 ; more Redis options: https://dogpilecache.sqlalchemy.org/en/latest/api.html#redis-backends
155 #rc_cache.repo_object.arguments.distributed_lock = true
131 156
132 157
133 ################################
134 ### LOGGING CONFIGURATION ####
135 ################################
158 ; #####################
159 ; LOGGING CONFIGURATION
160 ; #####################
136 161 [loggers]
137 162 keys = root, vcsserver
138 163
139 164 [handlers]
140 165 keys = console
141 166
142 167 [formatters]
143 168 keys = generic
144 169
145 #############
146 ## LOGGERS ##
147 #############
170 ; #######
171 ; LOGGERS
172 ; #######
148 173 [logger_root]
149 174 level = NOTSET
150 175 handlers = console
151 176
152 177 [logger_vcsserver]
153 178 level = DEBUG
154 179 handlers =
155 180 qualname = vcsserver
156 181 propagate = 1
157 182
158 183
159 ##############
160 ## HANDLERS ##
161 ##############
184 ; ########
185 ; HANDLERS
186 ; ########
162 187
163 188 [handler_console]
164 189 class = StreamHandler
165 args = (sys.stderr,)
166 level = DEBUG
190 args = (sys.stderr, )
191 level = INFO
167 192 formatter = generic
168 193
169 ################
170 ## FORMATTERS ##
171 ################
194 ; ##########
195 ; FORMATTERS
196 ; ##########
172 197
173 198 [formatter_generic]
174 199 format = %(asctime)s.%(msecs)03d [%(process)d] %(levelname)-5.5s [%(name)s] %(message)s
175 200 datefmt = %Y-%m-%d %H:%M:%S
General Comments 0
You need to be logged in to leave comments. Login now