Respect running_job_log_records_to_fetch in JobsController#logs.
[arvados.git] / apps / workbench / app / controllers / jobs_controller.rb
index 11a4e99edb6d8a7c7c6a13b2070995c75c72a4f8..f18a79d646c4a0a1dc774e52f0c2d4da1c8f9346 100644 (file)
@@ -1,5 +1,8 @@
 class JobsController < ApplicationController
-  include JobsHelper
+  skip_around_filter :require_thread_api_token, if: proc { |ctrl|
+    Rails.configuration.anonymous_user_token and
+    'show' == ctrl.action_name
+  }
 
   def generate_provenance(jobs)
     return if params['tab_pane'] != "Provenance"
@@ -57,9 +60,12 @@ class JobsController < ApplicationController
     super
   end
 
-  def push_logs
-    @push_logs = stderr_log_records([@object.uuid]).select do |log_record|
-      log_record.properties[:text] =~ /crunchstat: (mem.*swap.*rss|.*-- interval)/
+  def logs
+    @logs = @object.
+      stderr_log_query(Rails.configuration.running_job_log_records_to_fetch).
+      map { |e| e.serializable_hash.merge({ 'prepend' => true }) }
+    respond_to do |format|
+      format.json { render json: @logs }
     end
   end