|
24 | 24 | allow(redis).to receive(:slowlog).with('get') {
|
25 | 25 | [
|
26 | 26 | [
|
27 |
| - 1, |
| 27 | + 3, |
28 | 28 | Time.utc(2020,04,20,04,19,45).to_i,
|
| 29 | + 400000, |
| 30 | + [ |
| 31 | + "eval", |
| 32 | + "", |
| 33 | + "0" |
| 34 | + ], |
| 35 | + "192.0.2.40:55700", |
| 36 | + "" |
| 37 | + ], |
| 38 | + [ |
| 39 | + 2, |
| 40 | + Time.utc(2020,04,20,04,19,15).to_i, |
| 41 | + 100000, |
| 42 | + [ |
| 43 | + "eval", |
| 44 | + "", |
| 45 | + "0" |
| 46 | + ], |
| 47 | + "192.0.2.40:55700", |
| 48 | + "" |
| 49 | + ], |
| 50 | + [ |
| 51 | + 1, |
| 52 | + Time.utc(2020,04,20,04,18,45).to_i, |
29 | 53 | 100000,
|
30 | 54 | [
|
31 | 55 | "eval",
|
|
37 | 61 | ],
|
38 | 62 | [
|
39 | 63 | 0,
|
40 |
| - Time.utc(2020,04,20,04,19,15).to_i, |
| 64 | + Time.utc(2020,04,20,04,18,15).to_i, |
41 | 65 | 200000,
|
42 | 66 | [
|
43 | 67 | "eval",
|
|
201 | 225 |
|
202 | 226 | describe '#slowlogs_by_flush_interval' do
|
203 | 227 | subject { slowlog_check.slowlogs_by_flush_interval }
|
204 |
| - let(:bucket) { |
| 228 | + let(:bucket18) { |
205 | 229 | {
|
206 | 230 | "eval" =>
|
207 | 231 | {
|
|
216 | 240 | }
|
217 | 241 | }
|
218 | 242 | }
|
| 243 | + let(:bucket19) { |
| 244 | + { |
| 245 | + "eval" => |
| 246 | + { |
| 247 | + _95percentile: 100000, |
| 248 | + avg: 250000, |
| 249 | + count: 2, |
| 250 | + max: 400000, |
| 251 | + median: 100000, |
| 252 | + min: 100000, |
| 253 | + sum: 500000, |
| 254 | + values: [400000, 100000] |
| 255 | + } |
| 256 | + } |
| 257 | + } |
219 | 258 | it { is_expected.to eq(
|
220 | 259 | {
|
221 | 260 | Time.utc(2020,04,20,04,17) => nil,
|
222 |
| - Time.utc(2020,04,20,04,18) => nil, |
223 |
| - Time.utc(2020,04,20,04,19) => bucket, |
| 261 | + Time.utc(2020,04,20,04,18) => bucket18, |
| 262 | + Time.utc(2020,04,20,04,19) => bucket19, |
224 | 263 | Time.utc(2020,04,20,04,20) => nil
|
225 | 264 | }
|
226 | 265 | )
|
|
243 | 282 |
|
244 | 283 | describe '#ship_slowlogs' do
|
245 | 284 | subject { slowlog_check.ship_slowlogs }
|
246 |
| - let(:tags) { slowlog_check.default_tags.merge(command: 'eval') } |
| 285 | + let(:options) { |
| 286 | + { |
| 287 | + :host=>"replicationgroup", |
| 288 | + :interval=>60, |
| 289 | + :type=>"gauge", |
| 290 | + :tags=> |
| 291 | + { |
| 292 | + :aws=>"true", |
| 293 | + :command=>"eval", |
| 294 | + :env=>"test", |
| 295 | + :namespace=>"rspec", |
| 296 | + :replication_group=>"replicationgroup", |
| 297 | + :service=>"replicationgroup" |
| 298 | + } |
| 299 | + } |
| 300 | + } |
| 301 | + |
247 | 302 | it 'sends the right data to datadog' do
|
248 | 303 | allow(ddog).to receive(:emit_points) {["200", { "status" => "ok" }]}
|
249 | 304 | subject
|
250 | 305 |
|
251 | 306 | expect(ddog).to have_received(:emit_points).with(
|
252 | 307 | "rspec.redis.slowlog.micros.avg",
|
253 |
| - [[Time.utc(2020,04,20,04,19), 150000]], |
254 |
| - { |
255 |
| - :host=>"replicationgroup", |
256 |
| - :interval=>60, |
257 |
| - :type=>"gauge", |
258 |
| - :tags=> |
259 |
| - { |
260 |
| - :aws=>"true", |
261 |
| - :command=>"eval", |
262 |
| - :env=>"test", |
263 |
| - :namespace=>"rspec", |
264 |
| - :replication_group=>"replicationgroup", |
265 |
| - :service=>"replicationgroup" |
266 |
| - } |
267 |
| - } |
| 308 | + [[Time.utc(2020,04,20,04,18), 150000]], |
| 309 | + options |
| 310 | + ) |
| 311 | + |
| 312 | + expect(ddog).to have_received(:emit_points).with( |
| 313 | + "rspec.redis.slowlog.micros.avg", |
| 314 | + [[Time.utc(2020,04,20,04,19), 250000]], |
| 315 | + options |
268 | 316 | )
|
269 | 317 | end
|
270 | 318 | end
|
|
0 commit comments