Class: RailsErrorDashboard::Plugins::JiraIntegrationPlugin
Overview
Example plugin: Jira integration Automatically creates Jira tickets for critical errors
Usage:
RailsErrorDashboard.register_plugin(
RailsErrorDashboard::Plugins::JiraIntegrationPlugin.new(
jira_url: ENV['JIRA_URL'],
jira_username: ENV['JIRA_USERNAME'],
jira_api_token: ENV['JIRA_API_TOKEN'],
jira_project_key: ENV['JIRA_PROJECT_KEY'],
only_critical: true
)
)
Instance Method Summary
collapse
#on_error_recurred, #on_error_resolved, #on_error_viewed, #on_errors_batch_deleted, #on_errors_batch_resolved, #on_register, #safe_execute
Constructor Details
#initialize(jira_url: nil, jira_username: nil, jira_api_token: nil, jira_project_key: nil, only_critical: true) ⇒ JiraIntegrationPlugin
Returns a new instance of JiraIntegrationPlugin.
20
21
22
23
24
25
26
|
# File 'lib/rails_error_dashboard/plugins/jira_integration_plugin.rb', line 20
def initialize(jira_url: nil, jira_username: nil, jira_api_token: nil, jira_project_key: nil, only_critical: true)
@jira_url = jira_url
@jira_username = jira_username
@jira_api_token = jira_api_token
@jira_project_key = jira_project_key
@only_critical = only_critical
end
|
Instance Method Details
#description ⇒ Object
32
33
34
|
# File 'lib/rails_error_dashboard/plugins/jira_integration_plugin.rb', line 32
def description
"Automatically creates Jira tickets for critical errors"
end
|
#enabled? ⇒ Boolean
40
41
42
|
# File 'lib/rails_error_dashboard/plugins/jira_integration_plugin.rb', line 40
def enabled?
@jira_url.present? && @jira_username.present? && @jira_api_token.present? && @jira_project_key.present?
end
|
#name ⇒ Object
28
29
30
|
# File 'lib/rails_error_dashboard/plugins/jira_integration_plugin.rb', line 28
def name
"Jira Integration"
end
|
#on_error_logged(error_log) ⇒ Object
44
45
46
47
48
|
# File 'lib/rails_error_dashboard/plugins/jira_integration_plugin.rb', line 44
def on_error_logged(error_log)
return if @only_critical && !error_log.critical?
create_jira_ticket(error_log)
end
|
#version ⇒ Object
36
37
38
|
# File 'lib/rails_error_dashboard/plugins/jira_integration_plugin.rb', line 36
def version
"1.0.0"
end
|