asana_exception_notifier 0.0.6 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +2 -2
- data/examples/sinatra/Gemfile.lock +1 -1
- data/examples/sinatra/Procfile +1 -1
- data/lib/asana_exception_notifier/classes/error_page.rb +39 -26
- data/lib/asana_exception_notifier/helpers/application_helper.rb +3 -3
- data/lib/asana_exception_notifier/initializers/hash.rb +12 -0
- data/lib/asana_exception_notifier/templates/exception_details.html.erb +1 -1
- data/lib/asana_exception_notifier/templates/notes.text.erb +5 -5
- data/lib/asana_exception_notifier/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a86f7ce7e4c4e1f4ff8dc107525100e8fdd0a2ce
|
4
|
+
data.tar.gz: 1c3823e58d70cc8579595e3bab70daf49aa0f652
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 51c5bc58e1b873a1fd6472ea0fe311b04fbdb156b08837af45cc0d97f231a0eebf2b0376ac2948e3f9153a4bb4ca6ec8195f40db039dc4c54dbc7abc45230c20
|
7
|
+
data.tar.gz: bd7631649f3843c1e60d937aacc37855ba37485a57a67d8107b4474a6beb6f194bf87b0f7791c5d198f3e9b3cc7e182ac796aafe2d5203a68bf1388ab59719de
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
asana_exception_notifier (0.0.
|
4
|
+
asana_exception_notifier (0.0.7)
|
5
5
|
activesupport (>= 4.0, < 5)
|
6
6
|
em-http-request (~> 1.1, >= 1.1.2)
|
7
7
|
eventmachine (~> 1.0, >= 1.0.7)
|
@@ -172,7 +172,7 @@ DEPENDENCIES
|
|
172
172
|
rake (~> 10.5, >= 10.5)
|
173
173
|
redcarpet (~> 3.3, >= 3.3)
|
174
174
|
rspec (~> 3.4, >= 3.4)
|
175
|
-
simplecov (~> 0.
|
175
|
+
simplecov (~> 0.11, >= 0.10)
|
176
176
|
simplecov-summary (~> 0.0.4, >= 0.0.4)
|
177
177
|
yard (~> 0.8, >= 0.8.7)
|
178
178
|
|
data/examples/sinatra/Procfile
CHANGED
@@ -1 +1 @@
|
|
1
|
-
web: bundle exec thin start --port 3000
|
1
|
+
web: bundle exec thin start --port ${PORT:-3000} -e ${RACK_ENV:-development}
|
@@ -39,20 +39,33 @@ module AsanaExceptionNotifier
|
|
39
39
|
|
40
40
|
def parse_exception_options
|
41
41
|
@template_params ||= {
|
42
|
-
|
42
|
+
basic_info: fetch_basic_info,
|
43
43
|
exception: @exception,
|
44
44
|
request: @request,
|
45
|
-
|
46
|
-
rails_root: defined?(Rails) ? Rails.root : nil,
|
47
|
-
process: $PROCESS_ID,
|
45
|
+
env: @request.respond_to?(:filtered_env) ? @request.filtered_env : @env,
|
48
46
|
data: (@env.blank? ? {} : @env.fetch(:'exception_notifier.exception_data', {})).merge(@options[:data] || {}),
|
49
47
|
exception_data: exception_data,
|
50
48
|
exception_service_data: exception_service,
|
51
49
|
request_data: setup_env_params,
|
50
|
+
parameters: @request.respond_to?(:filtered_parameters) ? filter_params(@request.filtered_parameters) : filter_params(request_params),
|
51
|
+
session: session.respond_to?(:to_hash) ? session.to_hash : session.to_h,
|
52
|
+
cookies: @request.cookies.to_h
|
53
|
+
}.merge(@options).reject { |_key, value| value.blank? }
|
54
|
+
end
|
55
|
+
|
56
|
+
def session
|
57
|
+
@request.session
|
58
|
+
end
|
59
|
+
|
60
|
+
def fetch_basic_info
|
61
|
+
{
|
62
|
+
server: Socket.gethostname,
|
63
|
+
rails_root: defined?(Rails) ? Rails.root : nil,
|
64
|
+
process: $PROCESS_ID,
|
52
65
|
uname: Sys::Uname.uname,
|
53
66
|
timestamp: @timestamp,
|
54
67
|
pwd: File.expand_path($PROGRAM_NAME)
|
55
|
-
}
|
68
|
+
}
|
56
69
|
end
|
57
70
|
|
58
71
|
def exception_data
|
@@ -79,15 +92,12 @@ module AsanaExceptionNotifier
|
|
79
92
|
referrer: @request.referer,
|
80
93
|
http_method: action_dispatch? ? @request.method : @request.request_method,
|
81
94
|
ip_address: @request.respond_to?(:remote_ip) ? @request.remote_ip : @request.ip,
|
82
|
-
parameters: @request.respond_to?(:filtered_parameters) ? filter_params(@request.filtered_parameters) : filter_params(request_params),
|
83
|
-
session: @request.session,
|
84
|
-
cookies: @request.cookies,
|
85
95
|
user_agent: @request.user_agent
|
86
96
|
}
|
87
97
|
end
|
88
98
|
|
89
99
|
def filter_params(params)
|
90
|
-
AsanaExceptionNotifier::UnsafeFilter.new(params, @options.fetch(:unsafe_options, []))
|
100
|
+
AsanaExceptionNotifier::UnsafeFilter.new(params, @options.fetch(:unsafe_options, [])).arguments
|
91
101
|
end
|
92
102
|
|
93
103
|
def request_params
|
@@ -100,32 +110,35 @@ module AsanaExceptionNotifier
|
|
100
110
|
fieldsets.map { |key, _value| link_helper(key.to_s) }.join(' | ')
|
101
111
|
end
|
102
112
|
|
103
|
-
def
|
104
|
-
|
105
|
-
|
106
|
-
if value.is_a?(Hash)
|
107
|
-
fetch_fieldsets(value, links, key)
|
108
|
-
else
|
109
|
-
add_to_links(links, prefix, key: key, value: value)
|
110
|
-
end
|
111
|
-
end
|
112
|
-
links
|
113
|
+
def fieldsets
|
114
|
+
@fieldsets ||= mount_tables_for_fieldsets
|
115
|
+
@fieldsets
|
113
116
|
end
|
114
117
|
|
115
|
-
def
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
118
|
+
def mount_tables_for_fieldsets
|
119
|
+
hash = fetch_fieldsets
|
120
|
+
hash.each do |key, value|
|
121
|
+
html = mount_table_for_hash(value)
|
122
|
+
hash[key] = html if html.present?
|
123
|
+
end
|
124
|
+
hash
|
120
125
|
end
|
121
126
|
|
122
|
-
def
|
123
|
-
@
|
127
|
+
def fetch_fieldsets(hash = {})
|
128
|
+
@template_params.each_with_parent do |parent, key, value|
|
129
|
+
next if value.blank? || key.blank?
|
130
|
+
parent_name = set_fieldset_key(hash, parent, 'system_info')
|
131
|
+
hash[parent_name][key] = value
|
132
|
+
end
|
133
|
+
hash.keys.map(&:to_s).sort
|
134
|
+
hash
|
124
135
|
end
|
125
136
|
|
126
137
|
def render_template(template = nil)
|
127
138
|
execute_with_rescue do
|
128
139
|
current_template = template.present? ? template : @template_path
|
140
|
+
@template_params[:fieldsets] = fieldsets
|
141
|
+
@template_params[:fieldsets_links] = fieldsets_links
|
129
142
|
Tilt.new(current_template).render(self, @template_params.stringify_keys)
|
130
143
|
end
|
131
144
|
end
|
@@ -124,12 +124,12 @@ module AsanaExceptionNotifier
|
|
124
124
|
File.exist?(path)
|
125
125
|
end
|
126
126
|
|
127
|
-
def get_hash_rows(hash, rows = [],
|
127
|
+
def get_hash_rows(hash, rows = [], _prefix = '')
|
128
128
|
hash.each do |key, value|
|
129
129
|
if value.is_a?(Hash)
|
130
|
-
|
130
|
+
get_object_rows(value, rows)
|
131
131
|
else
|
132
|
-
rows.push([
|
132
|
+
rows.push([key.inspect, escape(inspect_value(value).inspect)])
|
133
133
|
end
|
134
134
|
end
|
135
135
|
rows
|
@@ -26,7 +26,7 @@
|
|
26
26
|
<fieldset class='ajax_exception_notifier_fieldset' id='<%= key %>' style="<%= fieldsets.keys.first != key ? "display:none" : '' %>">
|
27
27
|
<legend>Debug Information for <%= key.to_s.camelize %></legend>
|
28
28
|
<div>
|
29
|
-
<%=
|
29
|
+
<%= value %>
|
30
30
|
</div>
|
31
31
|
</fieldset>
|
32
32
|
<% end %>
|
@@ -11,11 +11,11 @@ Request URI: <%= request_data[:url] %>
|
|
11
11
|
<% if request_data[:referrer].present? %>
|
12
12
|
Referer: <%= request_data[:referrer] %>
|
13
13
|
<% end %>
|
14
|
-
PID: <%= process %>
|
15
|
-
PWD: <%= pwd %>
|
16
|
-
Uname: <%= uname %>
|
17
|
-
Server: <%= server %>
|
18
|
-
Error time: <%= timestamp %>
|
14
|
+
PID: <%= basic_info[:process] %>
|
15
|
+
PWD: <%= basic_info[:pwd] %>
|
16
|
+
Uname: <%= basic_info[:uname] %>
|
17
|
+
Server: <%= basic_info[:server] %>
|
18
|
+
Error time: <%= basic_info[:timestamp] %>
|
19
19
|
<% if request_data[:user_agent].present? %>
|
20
20
|
User Agent: <%= request_data[:user_agent] %>
|
21
21
|
<% end %>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: asana_exception_notifier
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- bogdanRada
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -422,6 +422,7 @@ files:
|
|
422
422
|
- lib/asana_exception_notifier/classes/unsafe_filter.rb
|
423
423
|
- lib/asana_exception_notifier/helpers/application_helper.rb
|
424
424
|
- lib/asana_exception_notifier/helpers/heredoc_helper.rb
|
425
|
+
- lib/asana_exception_notifier/initializers/hash.rb
|
425
426
|
- lib/asana_exception_notifier/initializers/zip.rb
|
426
427
|
- lib/asana_exception_notifier/request/client.rb
|
427
428
|
- lib/asana_exception_notifier/request/core.rb
|