|
63 | 63 | expect(transaction.contexts.dig(:trace, :origin)).to eq('auto.queue.sidekiq')
|
64 | 64 | end
|
65 | 65 |
|
| 66 | + it "adds a queue.process spans" do |
| 67 | + execute_worker(processor, HappyWorker) |
| 68 | + execute_worker(processor, HappyWorker, jid: '123456') |
| 69 | + |
| 70 | + expect(transport.events.count).to eq(2) |
| 71 | + |
| 72 | + transaction = transport.events[0] |
| 73 | + expect(transaction).not_to be_nil |
| 74 | + expect(transaction.spans.count).to eq(1) |
| 75 | + expect(transaction.spans[0][:data]['messaging.message.id']).to eq('123123') # Default defined in #execute_worker |
| 76 | + expect(transaction.spans[0][:data]['messaging.destination.name']).to eq('default') |
| 77 | + expect(transaction.spans[0][:data]['messaging.message.retry.count']).to eq(0) |
| 78 | + |
| 79 | + transaction = transport.events[1] |
| 80 | + expect(transaction).not_to be_nil |
| 81 | + expect(transaction.spans.count).to eq(1) |
| 82 | + expect(transaction.spans[0][:data]['messaging.message.id']).to eq('123456') # Explicitly set above. |
| 83 | + expect(transaction.spans[0][:data]['messaging.destination.name']).to eq('default') |
| 84 | + expect(transaction.spans[0][:data]['messaging.message.retry.count']).to eq(0) |
| 85 | + end |
| 86 | + |
66 | 87 | context "with trace_propagation_headers" do
|
67 | 88 | let(:parent_transaction) { Sentry.start_transaction(op: "sidekiq") }
|
68 | 89 |
|
|
155 | 176 | expect(second_headers["sentry-trace"]).to eq(transaction.to_sentry_trace)
|
156 | 177 | expect(second_headers["baggage"]).to eq(transaction.to_baggage)
|
157 | 178 | end
|
| 179 | + |
| 180 | + it "has a queue.publish span" do |
| 181 | + message_id = client.push('queue' => 'default', 'class' => HappyWorker, 'args' => []) |
| 182 | + |
| 183 | + transaction.finish |
| 184 | + |
| 185 | + expect(transport.events.count).to eq(1) |
| 186 | + event = transport.events.last |
| 187 | + expect(event.spans.count).to eq(1) |
| 188 | + expect(event.spans[0][:op]).to eq("queue.publish") |
| 189 | + expect(event.spans[0][:data]['messaging.message.id']).to eq(message_id) |
| 190 | + expect(event.spans[0][:data]['messaging.destination.name']).to eq('default') |
| 191 | + end |
158 | 192 | end
|
159 | 193 | end
|
0 commit comments