airbrake 3.1.15 → 3.1.16

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f5d5104d7048d7ec5ac80dc09ddbb2974e1ce942
4
- data.tar.gz: 3ad35e7f986e2bd91e4765cc5e5df9f2b30116e0
3
+ metadata.gz: 3798079c271cc435d260126593812bce5241b775
4
+ data.tar.gz: 353de11bf6b78ce210e1163edf899687ecef0db8
5
5
  SHA512:
6
- metadata.gz: 1440f68e64b64bbd0356eda8c51548b9be6da7b294567b0b21c98d7ce72a80752a7e29bcf3bae858732ab04739655ac60a8fcceafbddd6228d0e7e42faf72886
7
- data.tar.gz: b1d14e5341162d416cde27328b93b884c7f0e130b5973cd6f02a439a3fd45b5929abc8bde3218014dd369dc41dc2c7c409bea867e9627683c42c0d347ecdadf5
6
+ metadata.gz: 81be18beb2bc90e89260cc06a5f9295bddf54c7c717fea75d9731ed13d6883f8d93a01671fcfc38bd48f5d4244f2bbf1833e92de34e7492f74e884e7104beb49
7
+ data.tar.gz: 64e0c784c018f7e285b0b2bbbd8a2dae954ca97e0db04c8a1279d5ae01116ec34ddc72c0548de09def0da51339db94985b294710aa8ef4fa4aa06e08182a2c1f
data/LICENSE CHANGED
@@ -25,37 +25,37 @@ See https://github.com/jquery/jquery/blob/master/MIT-LICENSE.txt
25
25
 
26
26
 
27
27
  All other components of this product are
28
- Copyright (c) 2007-2013 Exceptional Software Inc DBA Airbrake.io. All rights reserved.
28
+ Copyright (c) 2007-2014 Rackspace, Inc.
29
29
 
30
- Subject to the terms of this notice, Exceptional Software Inc grants you a
30
+ Subject to the terms of this notice, Rackspace, Inc. grants you a
31
31
  nonexclusive, nontransferable license, without the right to
32
32
  sublicense, to (a) install and execute one copy of these files on any
33
33
  number of workstations owned or controlled by you and (b) distribute
34
- verbatim copies of these files to third parties. As a condition to the
34
+ verbatim copies eof these files to third parties. As a condition to the
35
35
  foregoing grant, you must provide this notice along with each copy you
36
36
  distribute and you must not remove, alter, or obscure this notice. All
37
37
  other use, reproduction, modification, distribution, or other
38
38
  exploitation of these files is strictly prohibited, except as may be set
39
- forth in a separate written license agreement between you and Exceptional
40
- Software Inc. The terms of any such license agreement will control over this
39
+ forth in a separate written license agreement between you and ERackspace,
40
+ Inc. The terms of any such license agreement will control over this
41
41
  notice. The license stated above will be automatically terminated and
42
42
  revoked if you exceed its scope or violate any of the terms of this
43
43
  notice.
44
44
 
45
45
  This License does not grant permission to use the trade names,
46
- trademarks, service marks, or product names of Exceptional Software Inc,
47
- DBA Airbrake, Exceptional, Airbrake.io, Exceptional.io except as
46
+ trademarks, service marks, or product names of Rackspace, Inc.,
47
+ Airbrake, Exceptional, Airbrake.io, Exceptional.io except as
48
48
  required for reasonable and customary use in describing the origin
49
49
  of this file and reproducing the content of this notice. You may
50
50
  not mark or brand this file with any trade name, trademarks,
51
51
  servicemarks, or product names other than the original brand
52
- (if any)provided by Exceptional.
52
+ (if any)provided by Rackspace, Inc.
53
53
 
54
- Unless otherwise expressly agreed by Exceptional Software Inc, in a
54
+ Unless otherwise expressly agreed by Rackspace, Inc., in a
55
55
  separate written license agreement, these files are provided AS IS,
56
56
  WITHOUT WARRANTY OF ANY KIND, including without any implied warranties
57
57
  of MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, or NON-INFRINGEMENT.
58
58
  As a condition to your use of these files, you are solely responsible for
59
- such use. Exceptional Software Inc will have no liability to you for direct,
59
+ such use. Rackspace, Inc. will have no liability to you for direct,
60
60
  indirect, consequential, incidental, special, or punitive damages or
61
61
  for lost profits or data.
@@ -0,0 +1,64 @@
1
+ # Defines deploy:notify_airbrake which will send information about the deploy to Airbrake.
2
+ require 'capistrano'
3
+
4
+ module Airbrake
5
+ module Capistrano
6
+ # What follows is a copy-paste backport of the shellescape method
7
+ # included in Ruby 1.9 and greater. The FSF's guidance on a snippet
8
+ # of this size indicates that such a small function is not subject
9
+ # to copyright and as such there is no risk of a license conflict:
10
+ # See www.gnu.org/prep/maintain/maintain.html#Legally-Significant
11
+ #
12
+ # Escapes a string so that it can be safely used in a Bourne shell
13
+ # command line. +str+ can be a non-string object that responds to
14
+ # +to_s+.
15
+ #
16
+ # Note that a resulted string should be used unquoted and is not
17
+ # intended for use in double quotes nor in single quotes.
18
+ #
19
+ # argv = Shellwords.escape("It's better to give than to receive")
20
+ # argv #=> "It\\'s\\ better\\ to\\ give\\ than\\ to\\ receive"
21
+ #
22
+ # String#shellescape is a shorthand for this function.
23
+ #
24
+ # argv = "It's better to give than to receive".shellescape
25
+ # argv #=> "It\\'s\\ better\\ to\\ give\\ than\\ to\\ receive"
26
+ #
27
+ # # Search files in lib for method definitions
28
+ # pattern = "^[ \t]*def "
29
+ # open("| grep -Ern #{pattern.shellescape} lib") { |grep|
30
+ # grep.each_line { |line|
31
+ # file, lineno, matched_line = line.split(':', 3)
32
+ # # ...
33
+ # }
34
+ # }
35
+ #
36
+ # It is the caller's responsibility to encode the string in the right
37
+ # encoding for the shell environment where this string is used.
38
+ #
39
+ # Multibyte characters are treated as multibyte characters, not bytes.
40
+ #
41
+ # Returns an empty quoted String if +str+ has a length of zero.
42
+ def self.shellescape(str)
43
+ str = str.to_s
44
+
45
+ # An empty argument will be skipped, so return empty quotes.
46
+ return "''" if str.empty?
47
+
48
+ str = str.dup
49
+
50
+ # Treat multibyte characters as is. It is caller's responsibility
51
+ # to encode the string in the right encoding for the shell
52
+ # environment.
53
+ str.gsub!(/([^A-Za-z0-9_\-.,:\/@\n])/, "\\\\\\1")
54
+
55
+ # A LF cannot be escaped with a backslash because a backslash + LF
56
+ # combo is regarded as line continuation and simply ignored.
57
+ str.gsub!(/\n/, "'\n'")
58
+
59
+ return str
60
+ end
61
+ end
62
+ end
63
+
64
+ load File.expand_path('../tasks/airbrake.cap', __FILE__)
@@ -2,7 +2,7 @@ require 'airbrake'
2
2
  require File.join(File.dirname(__FILE__), 'shared_tasks')
3
3
 
4
4
  def stub_rake_exception_handling!
5
- # Override error handling in Rack so we don't clutter STDERR
5
+ # Override error handling in Rake so we don't clutter STDERR
6
6
  # with unnecesarry stack trace
7
7
  Rake.application.instance_eval do
8
8
  class << self
@@ -0,0 +1,28 @@
1
+ namespace :airbrake do
2
+ desc <<-DESC
3
+ Notify Airbrake of the deployment by running the notification on the REMOTE machine.
4
+ - Run remotely so we use remote API keys, environment, etc.
5
+ DESC
6
+ task :deploy do
7
+ on roles(:all) do |host|
8
+ rails_env = fetch(:rails_env, "production")
9
+ airbrake_env = fetch(:airbrake_env, fetch(:rails_env, "production"))
10
+ local_user = ENV['USER'] || ENV['USERNAME']
11
+ executable = RUBY_PLATFORM.downcase.include?('mswin') ? fetch(:rake, 'rake.bat') : fetch(:rake, 'bundle exec rake ')
12
+ current_revision = capture("cd #{repo_path} && git rev-parse HEAD")
13
+ repository = ENV['REPO'] || ENV['REPONAME']
14
+
15
+ notify_command = "airbrake:deploy TO=#{airbrake_env} REVISION=#{current_revision} REPO=#{repo_url} USER=#{Airbrake::Capistrano::shellescape(local_user)}"
16
+ notify_command << " API_KEY=#{ENV['API_KEY']}" if ENV['API_KEY']
17
+ info "Notifying Airbrake of Deploy (#{notify_command})"
18
+ result = ""
19
+ within release_path do
20
+ execute :rake, notify_command, :once => true do |ch, stream, data|
21
+ result << data
22
+ end
23
+ end
24
+ # TODO: Check if SSL is active on account via result content.
25
+ info "Airbrake Notification Complete."
26
+ end
27
+ end
28
+ end
@@ -1,3 +1,3 @@
1
1
  module Airbrake
2
- VERSION = "3.1.15"
2
+ VERSION = "3.1.16"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: airbrake
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.15
4
+ version: 3.1.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Airbrake
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-01-03 00:00:00.000000000 Z
11
+ date: 2014-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: builder
@@ -283,53 +283,54 @@ executables:
283
283
  extensions: []
284
284
  extra_rdoc_files: []
285
285
  files:
286
- - generators/airbrake/lib/rake_commands.rb
286
+ - generators/airbrake/airbrake_generator.rb
287
287
  - generators/airbrake/lib/insert_commands.rb
288
- - generators/airbrake/templates/initializer.rb
289
- - generators/airbrake/templates/capistrano_hook.rb
288
+ - generators/airbrake/lib/rake_commands.rb
290
289
  - generators/airbrake/templates/airbrake_tasks.rake
291
- - generators/airbrake/airbrake_generator.rb
292
- - lib/templates/rescue.erb
293
- - lib/templates/javascript_notifier_configuration
294
- - lib/templates/javascript_notifier_loader
295
- - lib/airbrake_tasks.rb
296
- - lib/airbrake.rb
297
- - lib/airbrake/rails3_tasks.rb
298
- - lib/airbrake/cli/runner.rb
299
- - lib/airbrake/cli/options.rb
300
- - lib/airbrake/cli/validator.rb
290
+ - generators/airbrake/templates/capistrano_hook.rb
291
+ - generators/airbrake/templates/initializer.rb
292
+ - lib/airbrake/backtrace.rb
293
+ - lib/airbrake/capistrano.rb
294
+ - lib/airbrake/capistrano3.rb
301
295
  - lib/airbrake/cli/client.rb
302
- - lib/airbrake/cli/project_factory.rb
303
- - lib/airbrake/cli/project.rb
296
+ - lib/airbrake/cli/options.rb
304
297
  - lib/airbrake/cli/printer.rb
305
- - lib/airbrake/sinatra.rb
306
- - lib/airbrake/utils/rack_filters.rb
307
- - lib/airbrake/utils/params_cleaner.rb
298
+ - lib/airbrake/cli/project.rb
299
+ - lib/airbrake/cli/project_factory.rb
300
+ - lib/airbrake/cli/runner.rb
301
+ - lib/airbrake/cli/validator.rb
308
302
  - lib/airbrake/configuration.rb
309
- - lib/airbrake/railtie.rb
303
+ - lib/airbrake/jobs/send_job.rb
304
+ - lib/airbrake/notice.rb
310
305
  - lib/airbrake/rack.rb
311
- - lib/airbrake/user_informer.rb
312
- - lib/airbrake/response.rb
313
- - lib/airbrake/rake_handler.rb
314
- - lib/airbrake/sender.rb
315
- - lib/airbrake/capistrano.rb
316
- - lib/airbrake/tasks.rb
317
- - lib/airbrake/shared_tasks.rb
306
+ - lib/airbrake/rails/action_controller_catcher.rb
307
+ - lib/airbrake/rails/controller_methods.rb
318
308
  - lib/airbrake/rails/error_lookup.rb
319
309
  - lib/airbrake/rails/javascript_notifier.rb
320
- - lib/airbrake/rails/action_controller_catcher.rb
321
310
  - lib/airbrake/rails/middleware.rb
322
- - lib/airbrake/rails/controller_methods.rb
323
- - lib/airbrake/jobs/send_job.rb
324
- - lib/airbrake/notice.rb
325
311
  - lib/airbrake/rails.rb
326
- - lib/airbrake/backtrace.rb
312
+ - lib/airbrake/rails3_tasks.rb
313
+ - lib/airbrake/railtie.rb
314
+ - lib/airbrake/rake_handler.rb
315
+ - lib/airbrake/response.rb
316
+ - lib/airbrake/sender.rb
317
+ - lib/airbrake/shared_tasks.rb
318
+ - lib/airbrake/sinatra.rb
319
+ - lib/airbrake/tasks/airbrake.cap
320
+ - lib/airbrake/tasks.rb
321
+ - lib/airbrake/user_informer.rb
322
+ - lib/airbrake/utils/params_cleaner.rb
323
+ - lib/airbrake/utils/rack_filters.rb
327
324
  - lib/airbrake/version.rb
325
+ - lib/airbrake.rb
326
+ - lib/airbrake_tasks.rb
328
327
  - lib/rails/generators/airbrake/airbrake_generator.rb
328
+ - lib/templates/javascript_notifier_configuration
329
+ - lib/templates/javascript_notifier_loader
330
+ - lib/templates/rescue.erb
329
331
  - rails/init.rb
330
- - resources/ca-bundle.crt
331
- - resources/notice.xml
332
332
  - resources/airbrake_3_0.json
333
+ - resources/ca-bundle.crt
333
334
  - resources/README.md
334
335
  - script/integration_test.rb
335
336
  - airbrake.gemspec
@@ -343,43 +344,43 @@ files:
343
344
  - README.md
344
345
  - TESTED_AGAINST
345
346
  - install.rb
346
- - test/rails_initializer_test.rb
347
- - test/integration/javascript_notifier_test.rb
348
- - test/integration/catcher_test.rb
349
- - test/support/response_shim.xml
350
- - test/logger_test.rb
351
- - test/rack_test.rb
352
- - test/configuration_test.rb
353
- - test/controller_methods_test.rb
354
- - test/notifier_test.rb
355
347
  - test/airbrake_tasks_test.rb
356
- - test/sender_test.rb
348
+ - test/backtrace_test.rb
357
349
  - test/capistrano_test.rb
358
- - test/recursion_test.rb
350
+ - test/configuration_test.rb
351
+ - test/controller_methods_test.rb
352
+ - test/helper.rb
353
+ - test/integration/catcher_test.rb
354
+ - test/integration/javascript_notifier_test.rb
355
+ - test/integration.rb
356
+ - test/logger_test.rb
359
357
  - test/notice_test.rb
358
+ - test/notifier_test.rb
360
359
  - test/params_cleaner_test.rb
361
- - test/backtrace_test.rb
360
+ - test/rack_test.rb
361
+ - test/rails_initializer_test.rb
362
+ - test/recursion_test.rb
362
363
  - test/response_test.rb
363
- - test/helper.rb
364
- - test/integration.rb
364
+ - test/sender_test.rb
365
+ - test/support/response_shim.xml
365
366
  - test/user_informer_test.rb
367
+ - features/metal.feature
368
+ - features/rack.feature
369
+ - features/rails.feature
370
+ - features/rails_with_js_notifier.feature
371
+ - features/rake.feature
372
+ - features/sinatra.feature
373
+ - features/step_definitions/file_steps.rb
374
+ - features/step_definitions/rack_steps.rb
375
+ - features/step_definitions/rails_application_steps.rb
376
+ - features/step_definitions/rake_steps.rb
366
377
  - features/support/airbrake_shim.rb.template
367
- - features/support/rake/Rakefile
368
378
  - features/support/aruba.rb
379
+ - features/support/env.rb
369
380
  - features/support/matchers.rb
370
381
  - features/support/rails.rb
371
- - features/support/env.rb
382
+ - features/support/rake/Rakefile
372
383
  - features/user_informer.feature
373
- - features/rails.feature
374
- - features/rake.feature
375
- - features/rack.feature
376
- - features/step_definitions/rack_steps.rb
377
- - features/step_definitions/rake_steps.rb
378
- - features/step_definitions/rails_application_steps.rb
379
- - features/step_definitions/file_steps.rb
380
- - features/metal.feature
381
- - features/sinatra.feature
382
- - features/rails_with_js_notifier.feature
383
384
  - bin/airbrake
384
385
  homepage: http://www.airbrake.io
385
386
  licenses: []
@@ -400,45 +401,46 @@ required_rubygems_version: !ruby/object:Gem::Requirement
400
401
  version: '0'
401
402
  requirements: []
402
403
  rubyforge_project:
403
- rubygems_version: 2.0.14
404
+ rubygems_version: 2.1.11
404
405
  signing_key:
405
406
  specification_version: 4
406
407
  summary: Send your application errors to our hosted service and reclaim your inbox.
407
408
  test_files:
408
- - test/rails_initializer_test.rb
409
- - test/integration/javascript_notifier_test.rb
410
- - test/integration/catcher_test.rb
411
- - test/support/response_shim.xml
412
- - test/logger_test.rb
413
- - test/rack_test.rb
414
- - test/configuration_test.rb
415
- - test/controller_methods_test.rb
416
- - test/notifier_test.rb
417
409
  - test/airbrake_tasks_test.rb
418
- - test/sender_test.rb
410
+ - test/backtrace_test.rb
419
411
  - test/capistrano_test.rb
420
- - test/recursion_test.rb
412
+ - test/configuration_test.rb
413
+ - test/controller_methods_test.rb
414
+ - test/helper.rb
415
+ - test/integration/catcher_test.rb
416
+ - test/integration/javascript_notifier_test.rb
417
+ - test/integration.rb
418
+ - test/logger_test.rb
421
419
  - test/notice_test.rb
420
+ - test/notifier_test.rb
422
421
  - test/params_cleaner_test.rb
423
- - test/backtrace_test.rb
422
+ - test/rack_test.rb
423
+ - test/rails_initializer_test.rb
424
+ - test/recursion_test.rb
424
425
  - test/response_test.rb
425
- - test/helper.rb
426
- - test/integration.rb
426
+ - test/sender_test.rb
427
+ - test/support/response_shim.xml
427
428
  - test/user_informer_test.rb
429
+ - features/metal.feature
430
+ - features/rack.feature
431
+ - features/rails.feature
432
+ - features/rails_with_js_notifier.feature
433
+ - features/rake.feature
434
+ - features/sinatra.feature
435
+ - features/step_definitions/file_steps.rb
436
+ - features/step_definitions/rack_steps.rb
437
+ - features/step_definitions/rails_application_steps.rb
438
+ - features/step_definitions/rake_steps.rb
428
439
  - features/support/airbrake_shim.rb.template
429
- - features/support/rake/Rakefile
430
440
  - features/support/aruba.rb
441
+ - features/support/env.rb
431
442
  - features/support/matchers.rb
432
443
  - features/support/rails.rb
433
- - features/support/env.rb
444
+ - features/support/rake/Rakefile
434
445
  - features/user_informer.feature
435
- - features/rails.feature
436
- - features/rake.feature
437
- - features/rack.feature
438
- - features/step_definitions/rack_steps.rb
439
- - features/step_definitions/rake_steps.rb
440
- - features/step_definitions/rails_application_steps.rb
441
- - features/step_definitions/file_steps.rb
442
- - features/metal.feature
443
- - features/sinatra.feature
444
- - features/rails_with_js_notifier.feature
446
+ has_rdoc:
@@ -1 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?><notice version="2.4"><api-key/><notifier><name>Airbrake Notifier</name><version>3.1.15</version><url>https://github.com/airbrake/airbrake</url></notifier><error><class>RuntimeError</class><message>RuntimeError: Explode!</message><backtrace><line number="3" file="[PROJECT_ROOT]/app/metal/exploder.rb" method="call"/><line number="71" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/journey/router.rb" method="block in call"/><line number="59" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/journey/router.rb" method="each"/><line number="59" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/journey/router.rb" method="call"/><line number="680" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/routing/route_set.rb" method="call"/><line number="23" file="[GEM_ROOT]/gems/rack-1.5.2/lib/rack/etag.rb" method="call"/><line number="25" file="[GEM_ROOT]/gems/rack-1.5.2/lib/rack/conditionalget.rb" method="call"/><line number="11" file="[GEM_ROOT]/gems/rack-1.5.2/lib/rack/head.rb" method="call"/><line number="27" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/middleware/params_parser.rb" method="call"/><line number="241" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/middleware/flash.rb" method="call"/><line number="225" file="[GEM_ROOT]/gems/rack-1.5.2/lib/rack/session/abstract/id.rb" method="context"/><line number="220" file="[GEM_ROOT]/gems/rack-1.5.2/lib/rack/session/abstract/id.rb" method="call"/><line number="486" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/middleware/cookies.rb" method="call"/><line number="29" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/middleware/callbacks.rb" method="block in call"/><line number="373" file="[GEM_ROOT]/gems/activesupport-4.0.1/lib/active_support/callbacks.rb" method="_run__819093073471175117__call__callbacks"/><line number="80" file="[GEM_ROOT]/gems/activesupport-4.0.1/lib/active_support/callbacks.rb" method="run_callbacks"/><line number="27" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/middleware/callbacks.rb" method="call"/><line number="76" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/middleware/remote_ip.rb" method="call"/><line number="17" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/middleware/debug_exceptions.rb" method="call"/><line number="30" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/middleware/show_exceptions.rb" method="call"/><line number="38" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/rack/logger.rb" method="call_app"/><line number="20" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/rack/logger.rb" method="block in call"/><line number="67" file="[GEM_ROOT]/gems/activesupport-4.0.1/lib/active_support/tagged_logging.rb" method="block in tagged"/><line number="25" file="[GEM_ROOT]/gems/activesupport-4.0.1/lib/active_support/tagged_logging.rb" method="tagged"/><line number="67" file="[GEM_ROOT]/gems/activesupport-4.0.1/lib/active_support/tagged_logging.rb" method="tagged"/><line number="20" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/rack/logger.rb" method="call"/><line number="21" file="[GEM_ROOT]/gems/actionpack-4.0.1/lib/action_dispatch/middleware/request_id.rb" method="call"/><line number="21" file="[GEM_ROOT]/gems/rack-1.5.2/lib/rack/methodoverride.rb" method="call"/><line number="17" file="[GEM_ROOT]/gems/rack-1.5.2/lib/rack/runtime.rb" method="call"/><line number="83" file="[GEM_ROOT]/gems/activesupport-4.0.1/lib/active_support/cache/strategy/local_cache.rb" method="call"/><line number="112" file="[GEM_ROOT]/gems/rack-1.5.2/lib/rack/sendfile.rb" method="call"/><line number="511" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/engine.rb" method="call"/><line number="97" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/application.rb" method="call"/><line number="30" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/railtie/configurable.rb" method="method_missing"/><line number="4" file="request.rb" method="&lt;top (required)&gt;"/><line number="51" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/commands/runner.rb" method="eval"/><line number="51" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/commands/runner.rb" method="&lt;top (required)&gt;"/><line number="84" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/commands.rb" method="require"/><line number="84" file="[GEM_ROOT]/gems/railties-4.0.1/lib/rails/commands.rb" method="&lt;top (required)&gt;"/><line number="4" file="bin/rails" method="require"/><line number="4" file="bin/rails" method="&lt;main&gt;"/></backtrace></error><request><url>http://example.com:123metal/index?param=value</url><component/><action/><params><var key="param">value</var></params><cgi-data><var key="rack.version">["1", "2"]</var><var key="rack.multithread">true</var><var key="rack.multiprocess">true</var><var key="rack.run_once">false</var><var key="REQUEST_METHOD">GET</var><var key="SERVER_NAME">example.com</var><var key="SERVER_PORT">123</var><var key="QUERY_STRING">param=value</var><var key="PATH_INFO">metal/index</var><var key="rack.url_scheme">http</var><var key="HTTPS">off</var><var key="SCRIPT_NAME"></var><var key="CONTENT_LENGTH">0</var><var key="ORIGINAL_FULLPATH">/metal/index?param=value</var><var key="ORIGINAL_SCRIPT_NAME"></var><var key="action_dispatch.parameter_filter">["password"]</var><var key="action_dispatch.redirect_filter">[]</var><var key="action_dispatch.show_exceptions">true</var><var key="action_dispatch.show_detailed_exceptions">false</var><var key="ROUTES_69827320290920_SCRIPT_NAME"></var><var key="action_dispatch.request_id">64c13a82-6970-45d3-92be-41bd70360734</var><var key="action_dispatch.remote_ip"></var><var key="action_dispatch.request.path_parameters"></var><var key="rack.request.query_string">param=value</var><var key="rack.request.query_hash"><var key="param">value</var></var></cgi-data></request><server-environment><project-root>/home/shime/code/work/airbrake/tmp/rails_root</project-root><environment-name>production</environment-name><hostname>SyntaxError</hostname></server-environment><framework>Rails: 4.0.1</framework></notice>