Module: SolidQueueMonitor::JobsHelper
- Defined in:
- app/helpers/solid_queue_monitor/jobs_helper.rb
Instance Method Summary collapse
- #failed_error_message(error) ⇒ Object
- #format_arguments(arguments) ⇒ Object
- #format_hash(hash) ⇒ Object
- #job_status(job) ⇒ Object
- #job_status_badge(job) ⇒ Object
- #mini_job_status_badge(job) ⇒ Object
- #parsed_failed_error(error) ⇒ Object
Instance Method Details
#failed_error_message(error) ⇒ Object
49 50 51 |
# File 'app/helpers/solid_queue_monitor/jobs_helper.rb', line 49 def (error) parsed_failed_error(error)[:message].to_s end |
#format_arguments(arguments) ⇒ Object
5 6 7 8 9 10 11 12 13 14 |
# File 'app/helpers/solid_queue_monitor/jobs_helper.rb', line 5 def format_arguments(arguments) return '-' if arguments.blank? formatted = unwrap_arguments(arguments) if formatted.length <= 50 tag.code(formatted, class: 'args-single-line') else tag.div(tag.code(formatted, class: 'args-content'), class: 'args-container') end end |
#format_hash(hash) ⇒ Object
16 17 18 19 20 21 22 23 |
# File 'app/helpers/solid_queue_monitor/jobs_helper.rb', line 16 def format_hash(hash) return '-' if hash.blank? parts = hash.map do |key, value| safe_join([tag.strong("#{key}:"), ' ', truncate(value.to_s, length: 50)]) end tag.code(safe_join(parts, ', ')) end |
#job_status(job) ⇒ Object
25 26 27 |
# File 'app/helpers/solid_queue_monitor/jobs_helper.rb', line 25 def job_status(job) SolidQueueMonitor::StatusCalculator.new(job).calculate end |
#job_status_badge(job) ⇒ Object
29 30 31 32 |
# File 'app/helpers/solid_queue_monitor/jobs_helper.rb', line 29 def job_status_badge(job) status = job_status(job) tag.span(status, class: "status-badge status-#{status}") end |
#mini_job_status_badge(job) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'app/helpers/solid_queue_monitor/jobs_helper.rb', line 34 def mini_job_status_badge(job) status = mini_job_status(job) labels = { failed: 'Failed', completed: 'Completed', in_progress: 'In Progress', scheduled: 'Scheduled', ready: 'Ready', pending: 'Pending' } css_status = status == :ready ? :pending : status tag.span(labels[status], class: "mini-status-badge status-#{css_status}") end |
#parsed_failed_error(error) ⇒ Object
53 54 55 56 57 58 59 60 61 62 |
# File 'app/helpers/solid_queue_monitor/jobs_helper.rb', line 53 def parsed_failed_error(error) return { type: 'Unknown', message: 'Unknown error', backtrace: [] } unless error error_hash = deserialize_failed_error(error) { type: failed_error_type(error_hash), message: failed_error_text(error_hash), backtrace: failed_error_backtrace(error_hash) } end |