4266: Fix log processing performance.
[arvados.git] / services / api / config / application.default.yml
index fb19dbc01467d9ac7ee40033ed61f8f10bbeb229..0df93a0631a03edc406f708a060e2d281ba20998 100644 (file)
@@ -15,6 +15,7 @@ development:
   active_record.auto_explain_threshold_in_seconds: 0.5
   assets.compress: false
   assets.debug: true
+  local_modified: <%= '-modified' if `git status -s` %>
 
 production:
   force_ssl: true
@@ -42,13 +43,18 @@ test:
   uuid_prefix: zzzzz
   secret_token: <%= rand(2**512).to_s(36) %>
   blob_signing_key: zfhgfenhffzltr9dixws36j1yhksjoll2grmku38mi7yxd66h5j4q9w4jzanezacp8s6q0ro3hxakfye02152hncy6zml2ed0uc
-
-  # email address to which mail should be sent when the user creates profile for the first time
   user_profile_notification_address: arvados@example.com
+  workbench_address: https://localhost:3001/
 
 common:
   uuid_prefix: <%= Digest::MD5.hexdigest(`hostname`).to_i(16).to_s(36)[0..4] %>
 
+  # If this is not false, HTML requests at the API server's root URL
+  # are redirected to this location, and it is provided in the text of
+  # user activation notification email messages to remind them where
+  # to log in.
+  workbench_address: false
+
   # Git repositories must be readable by api server, or you won't be
   # able to submit crunch jobs. To pass the test suites, put a clone
   # of the arvados tree in {git_repositories_dir}/arvados.git or
@@ -71,19 +77,28 @@ common:
   # crunch-job must be able to stat() it.
   crunch_refresh_trigger: /tmp/crunch_refresh_trigger
 
-  # Maximum number of log events that may be generated by a single job.
-  crunch_limit_log_events_per_job: 65536
-
-  # Maximum number of total bytes that may be logged by a single job.
-  crunch_limit_log_event_bytes_per_job: 67108864
-
-  # These two settings control how frequently log events are flushed
-  # to the database.  If a job generates two or more events within
-  # crunch_log_seconds_between_events, the log data is not flushed
-  # until crunch_log_bytes_per_event has been reached.
+  # These two settings control how frequently log events are flushed to the
+  # database.  Log lines are buffered until either crunch_log_bytes_per_event
+  # has been reached or crunch_log_seconds_between_events has elapsed since
+  # the last flush.
   crunch_log_bytes_per_event: 4096
   crunch_log_seconds_between_events: 1
 
+  # The sample period for throttling logs, in seconds.
+  crunch_log_throttle_period: 60
+
+  # Maximum number of bytes that job can log over crunch_log_throttle_period
+  # before being silenced until the end of the period.
+  crunch_log_throttle_bytes: 65536
+
+  # Maximum number of lines that job can log over crunch_log_throttle_period
+  # before being silenced until the end of the period.
+  crunch_log_throttle_lines: 1024
+
+  # Maximum bytes that may be logged by a single job.  Log bytes that are
+  # silenced by throttling are not counted against this total.
+  crunch_limit_log_bytes_per_job: 67108864
+
   # Path to /etc/dnsmasq.d, or false = do not update dnsmasq data.
   dnsmasq_conf_dir: false
 
@@ -117,9 +132,6 @@ common:
   new_user_notification_recipients: [ ]
   new_inactive_user_notification_recipients: [ ]
 
-  # Visitors to the API server will be redirected to the workbench
-  workbench_address: https://workbench.local:3001/
-
   # The e-mail address of the user you would like to become marked as an admin
   # user on their first login.
   # In the default configuration, authentication happens through the Arvados SSO
@@ -191,3 +203,10 @@ common:
   auto_setup_new_users_with_vm_uuid: false
   auto_setup_new_users_with_repository: false
   auto_setup_name_blacklist: [arvados, git, gitolite, gitolite-admin, root, syslog]
+
+  # source_version
+  source_version: "<%= `git log -n 1 --format=%h` %>"
+  local_modified: false
+
+  # Default lifetime for ephemeral collections: 2 weeks.
+  default_trash_lifetime: 1209600