mail_spy 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/app/assets/images/mail_spy/background_tile.gif +0 -0
- data/app/assets/images/mail_spy/mailspy_sprite.png +0 -0
- data/app/assets/images/mail_spy/spy.ico +0 -0
- data/app/assets/javascripts/mail_spy/lib/backbone.js +1256 -0
- data/app/assets/javascripts/mail_spy/lib/underscore.js +999 -0
- data/app/assets/javascripts/mail_spy/reports.js +2 -0
- data/app/assets/stylesheets/mail_spy/application.css +62 -0
- data/app/assets/stylesheets/mail_spy/reports.css.scss +128 -0
- data/app/controllers/mail_spy/reports_controller.rb +29 -0
- data/app/helpers/mail_spy/reports_helper.rb +4 -0
- data/app/models/mail_spy/email.rb +24 -2
- data/app/views/layouts/mail_spy/application.html.erb +3 -0
- data/app/views/mail_spy/reports/campaigns.html.erb +123 -33
- data/lib/mail_spy.rb +1 -0
- data/lib/mail_spy/manager.rb +12 -31
- data/lib/mail_spy/version.rb +1 -1
- data/test/dummy/db/schema.rb +16 -0
- data/test/dummy/log/test.log +443 -0
- data/test/functional/mail_spy/reports_controller_test.rb +9 -0
- data/test/unit/helpers/mail_spy/reports_helper_test.rb +6 -0
- metadata +67 -31
- data/app/assets/stylesheets/mail_spy/global.css.scss +0 -0
data/lib/mail_spy.rb
CHANGED
data/lib/mail_spy/manager.rb
CHANGED
@@ -79,51 +79,32 @@ module MailSpy
|
|
79
79
|
# Batches through all the emails that were scheduled and have come due
|
80
80
|
# sends them out (step many at a time). Don't thread this method, instead
|
81
81
|
# use the parameters to control concurrency
|
82
|
-
def send_outstanding_emails(step=
|
82
|
+
def send_outstanding_emails(step=200, num_threads=100, num_workers=1)
|
83
83
|
success = false
|
84
84
|
raise "No Email service providers installed" unless MailSpy.esps.present?
|
85
85
|
|
86
86
|
return if MailSpy::ProcessLog.currently_processing?
|
87
|
+
current_time = DateTime.now
|
87
88
|
current_process = MailSpy::ProcessLog.create!(
|
88
89
|
{
|
89
|
-
:start =>
|
90
|
+
:start => current_time,
|
90
91
|
:running => true,
|
91
92
|
})
|
92
93
|
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
processed = 0
|
97
|
-
|
98
|
-
# Helper function for setting present values
|
99
|
-
def set_if_present(email, pony_hash, pony_key, email_key=nil)
|
100
|
-
email_key = pony_key if email_key.nil?
|
101
|
-
value = email.send("#{email_key}")
|
102
|
-
pony_hash[pony_key] = value if value.present?
|
103
|
-
end
|
94
|
+
count = MailSpy::Email.where(:schedule_at.lte => current_time, :sent => false, :failed => false).count
|
95
|
+
first = MailSpy::Email.where(:schedule_at.lte => current_time, :sent => false, :failed => false).first
|
96
|
+
division = (count / num_workers).to_i
|
104
97
|
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
emails.each do |email|
|
111
|
-
processed += 1
|
112
|
-
wq.enqueue_b do
|
113
|
-
MailSpy.using_delayed_job ? email.delay.deliver : email.deliver
|
114
|
-
end
|
98
|
+
num_workers.times do |i|
|
99
|
+
if MailSpy.using_delayed_job
|
100
|
+
Email.delay.deliver_batch(current_time, first._id, (i - 1) * division, division, step, num_threads)
|
101
|
+
else
|
102
|
+
Email.deliver_batch(current_time, first._id, (i - 1) * division, division, step, num_threads)
|
115
103
|
end
|
116
|
-
|
117
|
-
# We must join here otherwise the next loop email lookup will be in a
|
118
|
-
# race condition with the results of our worker_queue.
|
119
|
-
wq.join
|
120
|
-
|
121
|
-
offset += step
|
122
104
|
end
|
123
105
|
|
124
106
|
success = true
|
125
|
-
return
|
126
|
-
|
107
|
+
return count
|
127
108
|
ensure
|
128
109
|
if current_process
|
129
110
|
end_time = Time.now
|
data/lib/mail_spy/version.rb
CHANGED
@@ -0,0 +1,16 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
# This file is auto-generated from the current state of the database. Instead
|
3
|
+
# of editing this file, please use the migrations feature of Active Record to
|
4
|
+
# incrementally modify your database, and then regenerate this schema definition.
|
5
|
+
#
|
6
|
+
# Note that this schema.rb definition is the authoritative source for your
|
7
|
+
# database schema. If you need to create the application database on another
|
8
|
+
# system, you should be using db:schema:load, not running all the migrations
|
9
|
+
# from scratch. The latter is a flawed and unsustainable approach (the more migrations
|
10
|
+
# you'll amass, the slower it'll run and the greater likelihood for issues).
|
11
|
+
#
|
12
|
+
# It's strongly recommended to check this file into your version control system.
|
13
|
+
|
14
|
+
ActiveRecord::Schema.define(:version => 0) do
|
15
|
+
|
16
|
+
end
|
data/test/dummy/log/test.log
CHANGED
@@ -16348,3 +16348,446 @@ MONGODB dummy_test['mail_spy_emails'].remove({})
|
|
16348
16348
|
[1m[35m (0.0ms)[0m rollback transaction
|
16349
16349
|
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
16350
16350
|
[1m[35m (0.0ms)[0m rollback transaction
|
16351
|
+
MONGODB [WARNING] Please note that logging negatively impacts client-side performance. You should set your logging level no lower than :info in production.
|
16352
|
+
MONGODB admin['$cmd'].find({:ismaster=>1}).limit(-1)
|
16353
|
+
[1m[36m (0.3ms)[0m [1mbegin transaction[0m
|
16354
|
+
[AWS S3 200 0.804889] get_bucket_versioning(:bucket_name=>"daviacalendar-mailspy")
|
16355
|
+
|
16356
|
+
[AWS S3 200 0.096094] head_object(:bucket_name=>"daviacalendar-mailspy",:key=>"tests/a-stream/a-helper_test.html.erb")
|
16357
|
+
|
16358
|
+
[AWS S3 200 0.146586] get_object(:bucket_name=>"daviacalendar-mailspy",:key=>"tests/a-stream/a-helper_test.html.erb")
|
16359
|
+
|
16360
|
+
[AWS S3 200 0.090667] get_bucket_versioning(:bucket_name=>"daviacalendar-mailspy")
|
16361
|
+
|
16362
|
+
[AWS S3 200 0.093591] head_object(:bucket_name=>"daviacalendar-mailspy",:key=>"tests/a-stream/a-helper_test.text.erb")
|
16363
|
+
|
16364
|
+
[AWS S3 200 0.112830] get_object(:bucket_name=>"daviacalendar-mailspy",:key=>"tests/a-stream/a-helper_test.text.erb")
|
16365
|
+
|
16366
|
+
MONGODB dummy_test['system.namespaces'].find({})
|
16367
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad58ba12eb8a08000001'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:26:16 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:26:19 UTC, "created_at"=>2012-02-09 11:26:19 UTC}])
|
16368
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad58ba12eb8a08000001')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad58ba12eb8a08000001\"}}"}}})
|
16369
|
+
Rendered inline template (23.2ms)
|
16370
|
+
Rendered inline template (1.3ms)
|
16371
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16372
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16373
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16374
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16375
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad5cba12eb8a08000002'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:26:20 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:26:20 UTC, "created_at"=>2012-02-09 11:26:20 UTC}])
|
16376
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5cba12eb8a08000002')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad5cba12eb8a08000002\"}}"}}})
|
16377
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16378
|
+
Rendered inline template (1.6ms)
|
16379
|
+
Rendered inline template (1.3ms)
|
16380
|
+
|
16381
|
+
Sent mail to trcarden@gmail.com (1343ms)
|
16382
|
+
Date: Thu, 09 Feb 2012 03:26:20 -0800
|
16383
|
+
From: test@test.com
|
16384
|
+
Reply-To: testGuy
|
16385
|
+
To: trcarden@gmail.com
|
16386
|
+
Message-ID: <4f33ad5cc7d6c_8a0880434f4c906c4@toms-iphone-4.mail>
|
16387
|
+
Subject: test subject
|
16388
|
+
Mime-Version: 1.0
|
16389
|
+
Content-Type: multipart/alternative;
|
16390
|
+
boundary="--==_mimepart_4f33ad5caa318_8a0880434f4c90334";
|
16391
|
+
charset=UTF-8
|
16392
|
+
Content-Transfer-Encoding: 7bit
|
16393
|
+
X-SMTPAPI: {"unique_args": {"eid": "4f33ad5cba12eb8a08000002"}}
|
16394
|
+
|
16395
|
+
|
16396
|
+
|
16397
|
+
----==_mimepart_4f33ad5caa318_8a0880434f4c90334
|
16398
|
+
Date: Thu, 09 Feb 2012 03:26:20 -0800
|
16399
|
+
Mime-Version: 1.0
|
16400
|
+
Content-Type: text/plain;
|
16401
|
+
charset=UTF-8
|
16402
|
+
Content-Transfer-Encoding: 7bit
|
16403
|
+
Content-ID: <4f33ad5cb9fe7_8a0880434f4c904c3@toms-iphone-4.mail>
|
16404
|
+
|
16405
|
+
You should be able to click on the link and have the server record the even
|
16406
|
+
and forward you to the correct place.
|
16407
|
+
|
16408
|
+
A link : <a href="http://localhost:5000/mail/t?eid=4f33ad5cba12eb8a08000002&n=1&url=www.google.com">My home</a>
|
16409
|
+
---------------------------
|
16410
|
+
|
16411
|
+
You should be able to show images in the email client and have the server
|
16412
|
+
track the open
|
16413
|
+
A Bug is in the parenthesis (<img src='http://localhost:5000/mail/b?eid=4f33ad5cba12eb8a08000002' style='display:none' width='1' height='1' border='0' />)
|
16414
|
+
|
16415
|
+
|
16416
|
+
|
16417
|
+
|
16418
|
+
----==_mimepart_4f33ad5caa318_8a0880434f4c90334
|
16419
|
+
Date: Thu, 09 Feb 2012 03:26:20 -0800
|
16420
|
+
Mime-Version: 1.0
|
16421
|
+
Content-Type: text/html;
|
16422
|
+
charset=UTF-8
|
16423
|
+
Content-Transfer-Encoding: 7bit
|
16424
|
+
Content-ID: <4f33ad5cc2acb_8a0880434f4c9054c@toms-iphone-4.mail>
|
16425
|
+
|
16426
|
+
<p>
|
16427
|
+
You should be able to click on the link and have the server record the even
|
16428
|
+
and forward you to the correct place.
|
16429
|
+
|
16430
|
+
A link : <a href="http://localhost:5000/mail/t?eid=4f33ad5cba12eb8a08000002&n=1&url=www.google.com">My home</a>
|
16431
|
+
</p>
|
16432
|
+
|
16433
|
+
<br>
|
16434
|
+
|
16435
|
+
<p>
|
16436
|
+
You should be able to show images in the email client and have the server
|
16437
|
+
track the open
|
16438
|
+
A Bug is in the parenthesis (<img src='http://localhost:5000/mail/b?eid=4f33ad5cba12eb8a08000002' style='display:none' width='1' height='1' border='0' />)
|
16439
|
+
</p>
|
16440
|
+
|
16441
|
+
|
16442
|
+
|
16443
|
+
----==_mimepart_4f33ad5caa318_8a0880434f4c90334--
|
16444
|
+
|
16445
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16446
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16447
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16448
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16449
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16450
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16451
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
16452
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16453
|
+
MONGODB dummy_test['system.namespaces'].find({})
|
16454
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16455
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16456
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16457
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16458
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000003'), "to"=>"test@test.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:26:22 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}])
|
16459
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000003')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad5eba12eb8a08000003\"}}"}}})
|
16460
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16461
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16462
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16463
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16464
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16465
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16466
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16467
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16468
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16469
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16470
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
16471
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16472
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16473
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16474
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16475
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16476
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16477
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16478
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16479
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16480
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16481
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16482
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16483
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16484
|
+
[AWS S3 200 0.090151] get_bucket_versioning(:bucket_name=>"daviacalendar-mailspy")
|
16485
|
+
|
16486
|
+
[AWS S3 404 0.097776] head_object(:bucket_name=>"daviacalendar-mailspy",:key=>"NO SUCH CAMPAIGN/NO SUCH STREAM/NO SUCH COMPONENT.html.erb") AWS::S3::Errors::NoSuchKey: No Such Key
|
16487
|
+
|
16488
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16489
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16490
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16491
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16492
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16493
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16494
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16495
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16496
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000005'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:26:22 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}])
|
16497
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000005')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad5eba12eb8a08000005\"}}"}}})
|
16498
|
+
MONGODB dummy_test['mail_spy_process_logs'].find({:running=>true}).limit(-1).sort([[:_id, :asc]])
|
16499
|
+
MONGODB dummy_test['mail_spy_process_logs'].insert([{"success"=>false, "running"=>true, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000006'), "start"=>2012-02-09 11:26:22 UTC, "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}])
|
16500
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{:schedule_at=>{"$lte"=>2012-02-09 11:26:22 UTC}, :sent=>false, :failed=>false}, "fields"=>nil}).limit(-1)
|
16501
|
+
MONGODB dummy_test['mail_spy_emails'].find({:schedule_at=>{"$lte"=>2012-02-09 11:26:22 UTC}, :sent=>false, :failed=>false}).limit(-1).sort([[:_id, :asc]])
|
16502
|
+
MONGODB dummy_test['mail_spy_process_logs'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000006')}, {"$set"=>{"end"=>2012-02-09 11:26:22 UTC, "seconds_elapsed"=>0, "running"=>false}})
|
16503
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16504
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16505
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16506
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16507
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16508
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16509
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16510
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16511
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16512
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16513
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
16514
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
16515
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16516
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16517
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000007'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:26:22 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}])
|
16518
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000007')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad5eba12eb8a08000007\"}}"}}})
|
16519
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16520
|
+
Processing by MailSpy::TrackingController#action as HTML
|
16521
|
+
Parameters: {"eid"=>"4f33ad5eba12eb8a08000007", "action_type"=>"Conversion", "count"=>"3"}
|
16522
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad5eba12eb8a08000007')}).limit(-1).sort([[:_id, :asc]])
|
16523
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000007')}, {"$push"=>{"actions"=>{"count"=>3, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000008'), "action_type"=>"Conversion", "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}}})
|
16524
|
+
Completed 200 OK in 4ms (ActiveRecord: 0.0ms)
|
16525
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad5eba12eb8a08000007')}).limit(-1)
|
16526
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16527
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16528
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16529
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16530
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16531
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16532
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000009'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:26:22 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}])
|
16533
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000009')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad5eba12eb8a08000009\"}}"}}})
|
16534
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16535
|
+
Processing by MailSpy::TrackingController#bug as HTML
|
16536
|
+
Parameters: {"eid"=>"4f33ad5eba12eb8a08000009"}
|
16537
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad5eba12eb8a08000009')}).limit(-1).sort([[:_id, :asc]])
|
16538
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a08000009')}, {"$push"=>{"actions"=>{"count"=>1, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a0800000a'), "action_type"=>"open", "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}}})
|
16539
|
+
Completed 200 OK in 3ms (ActiveRecord: 0.0ms)
|
16540
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad5eba12eb8a08000009')}).limit(-1)
|
16541
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16542
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16543
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16544
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16545
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16546
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16547
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a0800000b'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:26:22 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}])
|
16548
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a0800000b')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad5eba12eb8a0800000b\"}}"}}})
|
16549
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16550
|
+
Processing by MailSpy::TrackingController#link as HTML
|
16551
|
+
Parameters: {"eid"=>"4f33ad5eba12eb8a0800000b", "url"=>"http://google.com", "n"=>"0"}
|
16552
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad5eba12eb8a0800000b')}).limit(-1).sort([[:_id, :asc]])
|
16553
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a0800000b')}, {"$push"=>{"actions"=>{"count"=>1, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a0800000c'), "action_type"=>"click", "details"=>{:url=>"http://google.com", :link_number=>"0"}, "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}}})
|
16554
|
+
Redirected to http://google.com?utm_campaign=tests&utm_content=a-helper_test&utm_medium=email&utm_source=mailspy&utm_term=a-stream
|
16555
|
+
Completed 302 Found in 3ms (ActiveRecord: 0.0ms)
|
16556
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16557
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad5eba12eb8a0800000b')}).limit(-1)
|
16558
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16559
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16560
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16561
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16562
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16563
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16564
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad5eba12eb8a0800000d'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:26:22 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:26:22 UTC, "created_at"=>2012-02-09 11:26:22 UTC}])
|
16565
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad5eba12eb8a0800000d')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad5eba12eb8a0800000d\"}}"}}})
|
16566
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16567
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16568
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16569
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
16570
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
16571
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16572
|
+
MONGODB [WARNING] Please note that logging negatively impacts client-side performance. You should set your logging level no lower than :info in production.
|
16573
|
+
MONGODB admin['$cmd'].find({:ismaster=>1}).limit(-1)
|
16574
|
+
[1m[36m (0.3ms)[0m [1mbegin transaction[0m
|
16575
|
+
[AWS S3 200 0.758318] get_bucket_versioning(:bucket_name=>"daviacalendar-mailspy")
|
16576
|
+
|
16577
|
+
[AWS S3 200 0.091158] head_object(:bucket_name=>"daviacalendar-mailspy",:key=>"tests/a-stream/a-helper_test.html.erb")
|
16578
|
+
|
16579
|
+
[AWS S3 200 0.098760] get_object(:bucket_name=>"daviacalendar-mailspy",:key=>"tests/a-stream/a-helper_test.html.erb")
|
16580
|
+
|
16581
|
+
[AWS S3 200 0.084134] get_bucket_versioning(:bucket_name=>"daviacalendar-mailspy")
|
16582
|
+
|
16583
|
+
[AWS S3 200 0.093085] head_object(:bucket_name=>"daviacalendar-mailspy",:key=>"tests/a-stream/a-helper_test.text.erb")
|
16584
|
+
|
16585
|
+
[AWS S3 200 0.135305] get_object(:bucket_name=>"daviacalendar-mailspy",:key=>"tests/a-stream/a-helper_test.text.erb")
|
16586
|
+
|
16587
|
+
MONGODB dummy_test['system.namespaces'].find({})
|
16588
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad91ba12eb8a17000001'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:27:13 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:27:15 UTC, "created_at"=>2012-02-09 11:27:15 UTC}])
|
16589
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad91ba12eb8a17000001')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad91ba12eb8a17000001\"}}"}}})
|
16590
|
+
Rendered inline template (22.3ms)
|
16591
|
+
Rendered inline template (1.3ms)
|
16592
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16593
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16594
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16595
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16596
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad95ba12eb8a17000002'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:27:17 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:27:17 UTC, "created_at"=>2012-02-09 11:27:17 UTC}])
|
16597
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad95ba12eb8a17000002')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad95ba12eb8a17000002\"}}"}}})
|
16598
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16599
|
+
Rendered inline template (1.5ms)
|
16600
|
+
Rendered inline template (1.3ms)
|
16601
|
+
|
16602
|
+
Sent mail to trcarden@gmail.com (1358ms)
|
16603
|
+
Date: Thu, 09 Feb 2012 03:27:17 -0800
|
16604
|
+
From: test@test.com
|
16605
|
+
Reply-To: testGuy
|
16606
|
+
To: trcarden@gmail.com
|
16607
|
+
Message-ID: <4f33ad95459a5_8a1780434f4c67347@toms-iphone-4.mail>
|
16608
|
+
Subject: test subject
|
16609
|
+
Mime-Version: 1.0
|
16610
|
+
Content-Type: multipart/alternative;
|
16611
|
+
boundary="--==_mimepart_4f33ad95291fa_8a1780434f4c670db";
|
16612
|
+
charset=UTF-8
|
16613
|
+
Content-Transfer-Encoding: 7bit
|
16614
|
+
X-SMTPAPI: {"unique_args": {"eid": "4f33ad95ba12eb8a17000002"}}
|
16615
|
+
|
16616
|
+
|
16617
|
+
|
16618
|
+
----==_mimepart_4f33ad95291fa_8a1780434f4c670db
|
16619
|
+
Date: Thu, 09 Feb 2012 03:27:17 -0800
|
16620
|
+
Mime-Version: 1.0
|
16621
|
+
Content-Type: text/plain;
|
16622
|
+
charset=UTF-8
|
16623
|
+
Content-Transfer-Encoding: 7bit
|
16624
|
+
Content-ID: <4f33ad9538628_8a1780434f4c671ce@toms-iphone-4.mail>
|
16625
|
+
|
16626
|
+
You should be able to click on the link and have the server record the even
|
16627
|
+
and forward you to the correct place.
|
16628
|
+
|
16629
|
+
A link : <a href="http://localhost:5000/mail/t?eid=4f33ad95ba12eb8a17000002&n=1&url=www.google.com">My home</a>
|
16630
|
+
---------------------------
|
16631
|
+
|
16632
|
+
You should be able to show images in the email client and have the server
|
16633
|
+
track the open
|
16634
|
+
A Bug is in the parenthesis (<img src='http://localhost:5000/mail/b?eid=4f33ad95ba12eb8a17000002' style='display:none' width='1' height='1' border='0' />)
|
16635
|
+
|
16636
|
+
|
16637
|
+
|
16638
|
+
|
16639
|
+
----==_mimepart_4f33ad95291fa_8a1780434f4c670db
|
16640
|
+
Date: Thu, 09 Feb 2012 03:27:17 -0800
|
16641
|
+
Mime-Version: 1.0
|
16642
|
+
Content-Type: text/html;
|
16643
|
+
charset=UTF-8
|
16644
|
+
Content-Transfer-Encoding: 7bit
|
16645
|
+
Content-ID: <4f33ad9540be6_8a1780434f4c6722d@toms-iphone-4.mail>
|
16646
|
+
|
16647
|
+
<p>
|
16648
|
+
You should be able to click on the link and have the server record the even
|
16649
|
+
and forward you to the correct place.
|
16650
|
+
|
16651
|
+
A link : <a href="http://localhost:5000/mail/t?eid=4f33ad95ba12eb8a17000002&n=1&url=www.google.com">My home</a>
|
16652
|
+
</p>
|
16653
|
+
|
16654
|
+
<br>
|
16655
|
+
|
16656
|
+
<p>
|
16657
|
+
You should be able to show images in the email client and have the server
|
16658
|
+
track the open
|
16659
|
+
A Bug is in the parenthesis (<img src='http://localhost:5000/mail/b?eid=4f33ad95ba12eb8a17000002' style='display:none' width='1' height='1' border='0' />)
|
16660
|
+
</p>
|
16661
|
+
|
16662
|
+
|
16663
|
+
|
16664
|
+
----==_mimepart_4f33ad95291fa_8a1780434f4c670db--
|
16665
|
+
|
16666
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16667
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16668
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16669
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16670
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16671
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16672
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
16673
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16674
|
+
MONGODB dummy_test['system.namespaces'].find({})
|
16675
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16676
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16677
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16678
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16679
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000003'), "to"=>"test@test.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:27:18 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}])
|
16680
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000003')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad96ba12eb8a17000003\"}}"}}})
|
16681
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16682
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16683
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16684
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16685
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16686
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16687
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16688
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16689
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16690
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16691
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
16692
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16693
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16694
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16695
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16696
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16697
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16698
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16699
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16700
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16701
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16702
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16703
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16704
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16705
|
+
[AWS S3 200 0.091778] get_bucket_versioning(:bucket_name=>"daviacalendar-mailspy")
|
16706
|
+
|
16707
|
+
[AWS S3 404 0.092340] head_object(:bucket_name=>"daviacalendar-mailspy",:key=>"NO SUCH CAMPAIGN/NO SUCH STREAM/NO SUCH COMPONENT.html.erb") AWS::S3::Errors::NoSuchKey: No Such Key
|
16708
|
+
|
16709
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16710
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16711
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16712
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16713
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16714
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16715
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16716
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16717
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000005'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:27:18 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}])
|
16718
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000005')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad96ba12eb8a17000005\"}}"}}})
|
16719
|
+
MONGODB dummy_test['mail_spy_process_logs'].find({:running=>true}).limit(-1).sort([[:_id, :asc]])
|
16720
|
+
MONGODB dummy_test['mail_spy_process_logs'].insert([{"success"=>false, "running"=>true, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000006'), "start"=>2012-02-09 11:27:18 UTC, "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}])
|
16721
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{:schedule_at=>{"$lte"=>2012-02-09 11:27:18 UTC}, :sent=>false, :failed=>false}, "fields"=>nil}).limit(-1)
|
16722
|
+
MONGODB dummy_test['mail_spy_emails'].find({:schedule_at=>{"$lte"=>2012-02-09 11:27:18 UTC}, :sent=>false, :failed=>false}).limit(-1).sort([[:_id, :asc]])
|
16723
|
+
MONGODB dummy_test['mail_spy_process_logs'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000006')}, {"$set"=>{"end"=>2012-02-09 11:27:18 UTC, "seconds_elapsed"=>0, "running"=>false, "success"=>true}})
|
16724
|
+
MONGODB dummy_test['mail_spy_process_logs'].find({}).limit(-1).sort([[:_id, :asc]])
|
16725
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16726
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16727
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16728
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16729
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16730
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16731
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16732
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16733
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_process_logs", "query"=>{}, "fields"=>nil}).limit(-1)
|
16734
|
+
MONGODB dummy_test['mail_spy_process_logs'].remove({})
|
16735
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
16736
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
16737
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16738
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16739
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000007'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:27:18 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}])
|
16740
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000007')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad96ba12eb8a17000007\"}}"}}})
|
16741
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16742
|
+
Processing by MailSpy::TrackingController#action as HTML
|
16743
|
+
Parameters: {"eid"=>"4f33ad96ba12eb8a17000007", "action_type"=>"Conversion", "count"=>"3"}
|
16744
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad96ba12eb8a17000007')}).limit(-1).sort([[:_id, :asc]])
|
16745
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000007')}, {"$push"=>{"actions"=>{"count"=>3, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000008'), "action_type"=>"Conversion", "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}}})
|
16746
|
+
Completed 200 OK in 5ms (ActiveRecord: 0.0ms)
|
16747
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad96ba12eb8a17000007')}).limit(-1)
|
16748
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16749
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16750
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16751
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16752
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16753
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16754
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000009'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:27:18 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}])
|
16755
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000009')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad96ba12eb8a17000009\"}}"}}})
|
16756
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16757
|
+
Processing by MailSpy::TrackingController#bug as HTML
|
16758
|
+
Parameters: {"eid"=>"4f33ad96ba12eb8a17000009"}
|
16759
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad96ba12eb8a17000009')}).limit(-1).sort([[:_id, :asc]])
|
16760
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a17000009')}, {"$push"=>{"actions"=>{"count"=>1, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a1700000a'), "action_type"=>"open", "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}}})
|
16761
|
+
Completed 200 OK in 3ms (ActiveRecord: 0.0ms)
|
16762
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad96ba12eb8a17000009')}).limit(-1)
|
16763
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16764
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16765
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16766
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16767
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16768
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16769
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a1700000b'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:27:18 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}])
|
16770
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a1700000b')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad96ba12eb8a1700000b\"}}"}}})
|
16771
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16772
|
+
Processing by MailSpy::TrackingController#link as HTML
|
16773
|
+
Parameters: {"eid"=>"4f33ad96ba12eb8a1700000b", "url"=>"http://google.com", "n"=>"0"}
|
16774
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad96ba12eb8a1700000b')}).limit(-1).sort([[:_id, :asc]])
|
16775
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a1700000b')}, {"$push"=>{"actions"=>{"count"=>1, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a1700000c'), "action_type"=>"click", "details"=>{:url=>"http://google.com", :link_number=>"0"}, "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}}})
|
16776
|
+
Redirected to http://google.com?utm_campaign=tests&utm_content=a-helper_test&utm_medium=email&utm_source=mailspy&utm_term=a-stream
|
16777
|
+
Completed 302 Found in 3ms (ActiveRecord: 0.0ms)
|
16778
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16779
|
+
MONGODB dummy_test['mail_spy_emails'].find({:_id=>BSON::ObjectId('4f33ad96ba12eb8a1700000b')}).limit(-1)
|
16780
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16781
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16782
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
16783
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16784
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16785
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16786
|
+
MONGODB dummy_test['mail_spy_emails'].insert([{"headers"=>{}, "template_values"=>{}, "sent"=>false, "failed"=>false, "_id"=>BSON::ObjectId('4f33ad96ba12eb8a1700000d'), "to"=>"trcarden@gmail.com", "from"=>"test@test.com", "reply_to"=>"testGuy", "subject"=>"test subject", "campaign"=>"tests", "stream"=>"a-stream", "component"=>"a-helper_test", "schedule_at"=>2012-02-09 11:27:18 UTC, "email_service_provider"=>"sendgrid", "utm_source"=>"mailspy", "utm_medium"=>"email", "utm_campaign"=>"tests", "utm_term"=>"a-stream", "utm_content"=>"a-helper_test", "updated_at"=>2012-02-09 11:27:18 UTC, "created_at"=>2012-02-09 11:27:18 UTC}])
|
16787
|
+
MONGODB dummy_test['mail_spy_emails'].update({"_id"=>BSON::ObjectId('4f33ad96ba12eb8a1700000d')}, {"$set"=>{"headers"=>{"X-SMTPAPI"=>"{\"unique_args\": {\"eid\": \"4f33ad96ba12eb8a1700000d\"}}"}}})
|
16788
|
+
MONGODB dummy_test['mail_spy_emails'].find({}).limit(-1).sort([[:_id, :asc]])
|
16789
|
+
MONGODB dummy_test['$cmd'].find({"count"=>"mail_spy_emails", "query"=>{}, "fields"=>nil}).limit(-1)
|
16790
|
+
MONGODB dummy_test['mail_spy_emails'].remove({})
|
16791
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
16792
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
16793
|
+
[1m[35m (0.0ms)[0m rollback transaction
|