lumberjack 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. data/MIT_LICENSE +20 -0
  2. data/README.rdoc +86 -0
  3. data/Rakefile +56 -0
  4. data/VERSION +1 -0
  5. data/lib/lumberjack.rb +39 -0
  6. data/lib/lumberjack/device.rb +26 -0
  7. data/lib/lumberjack/device/date_rolling_log_file.rb +58 -0
  8. data/lib/lumberjack/device/log_file.rb +18 -0
  9. data/lib/lumberjack/device/null.rb +15 -0
  10. data/lib/lumberjack/device/rolling_log_file.rb +109 -0
  11. data/lib/lumberjack/device/size_rolling_log_file.rb +58 -0
  12. data/lib/lumberjack/device/writer.rb +119 -0
  13. data/lib/lumberjack/formatter.rb +76 -0
  14. data/lib/lumberjack/formatter/exception_formatter.rb +12 -0
  15. data/lib/lumberjack/formatter/inspect_formatter.rb +10 -0
  16. data/lib/lumberjack/formatter/pretty_print_formatter.rb +23 -0
  17. data/lib/lumberjack/formatter/string_formatter.rb +10 -0
  18. data/lib/lumberjack/log_entry.rb +36 -0
  19. data/lib/lumberjack/logger.rb +302 -0
  20. data/lib/lumberjack/rack.rb +5 -0
  21. data/lib/lumberjack/rack/unit_of_work.rb +15 -0
  22. data/lib/lumberjack/severity.rb +23 -0
  23. data/lib/lumberjack/template.rb +71 -0
  24. data/spec/device/date_rolling_log_file_spec.rb +66 -0
  25. data/spec/device/date_rolling_log_file_spec.rbc +2118 -0
  26. data/spec/device/log_file_spec.rb +26 -0
  27. data/spec/device/log_file_spec.rbc +727 -0
  28. data/spec/device/null_spec.rb +12 -0
  29. data/spec/device/null_spec.rbc +362 -0
  30. data/spec/device/rolling_log_file_spec.rb +117 -0
  31. data/spec/device/rolling_log_file_spec.rbc +2894 -0
  32. data/spec/device/size_rolling_log_file_spec.rb +54 -0
  33. data/spec/device/size_rolling_log_file_spec.rbc +1961 -0
  34. data/spec/device/stream_spec.rbc +3310 -0
  35. data/spec/device/writer_spec.rb +118 -0
  36. data/spec/entry_spec.rbc +2333 -0
  37. data/spec/formatter/exception_formatter_spec.rb +20 -0
  38. data/spec/formatter/exception_formatter_spec.rbc +620 -0
  39. data/spec/formatter/inspect_formatter_spec.rb +13 -0
  40. data/spec/formatter/inspect_formatter_spec.rbc +360 -0
  41. data/spec/formatter/pretty_print_formatter_spec.rb +14 -0
  42. data/spec/formatter/pretty_print_formatter_spec.rbc +380 -0
  43. data/spec/formatter/string_formatter_spec.rb +12 -0
  44. data/spec/formatter/string_formatter_spec.rbc +314 -0
  45. data/spec/formatter_spec.rb +45 -0
  46. data/spec/formatter_spec.rbc +1431 -0
  47. data/spec/log_entry_spec.rb +69 -0
  48. data/spec/logger_spec.rb +390 -0
  49. data/spec/logger_spec.rbc +10043 -0
  50. data/spec/lumberjack_spec.rb +22 -0
  51. data/spec/lumberjack_spec.rbc +523 -0
  52. data/spec/rack/unit_of_work_spec.rb +26 -0
  53. data/spec/rack/unit_of_work_spec.rbc +697 -0
  54. data/spec/severity_spec.rb +23 -0
  55. data/spec/spec_helper.rb +16 -0
  56. data/spec/spec_helper.rbc +391 -0
  57. data/spec/template_spec.rb +34 -0
  58. data/spec/template_spec.rbc +1563 -0
  59. data/spec/unique_identifier_spec.rbc +329 -0
  60. metadata +128 -0
@@ -0,0 +1,118 @@
1
+ require 'spec_helper'
2
+
3
+ describe Lumberjack::Device::Writer do
4
+
5
+ let(:time_string){ "2011-01-15T14:23:45.123" }
6
+ let(:time){ Time.parse(time_string) }
7
+ let(:stream){ StringIO.new }
8
+ let(:entry){ Lumberjack::LogEntry.new(time, Lumberjack::Severity::INFO, "test message", "app", 12345, "ABCD") }
9
+
10
+ it "should buffer output and not write directly to the stream" do
11
+ device = Lumberjack::Device::Writer.new(stream, :template => ":message")
12
+ device.write(entry)
13
+ stream.string.should == ""
14
+ device.flush
15
+ stream.string.should == "test message#{Lumberjack::LINE_SEPARATOR}"
16
+ end
17
+
18
+ it "should flush the buffer when it gets to the specified size" do
19
+ device = Lumberjack::Device::Writer.new(stream, :buffer_size => 15, :template => ":message")
20
+ device.write(entry)
21
+ stream.string.should == ""
22
+ device.write(entry)
23
+ stream.string.should == "test message#{Lumberjack::LINE_SEPARATOR}test message#{Lumberjack::LINE_SEPARATOR}"
24
+ end
25
+
26
+ it "should sync the stream and flush it when the device is flushed" do
27
+ # Create an IO like object that require flush to be called
28
+ io = Object.new
29
+ def io.init; @string = ""; @buffer = ""; @sync = false; end
30
+ def io.write(string); @buffer << string; end
31
+ def io.flush; @string << @buffer; @buffer = ""; end
32
+ def io.string; @string; end
33
+ def io.sync=(val); @sync = val; end
34
+ def io.sync; @sync; end
35
+ io.init
36
+
37
+ device = Lumberjack::Device::Writer.new(io, :template => ":message")
38
+ device.write(entry)
39
+ io.string.should == ""
40
+ device.flush
41
+ io.string.should == "test message#{Lumberjack::LINE_SEPARATOR}"
42
+ io.sync.should == true
43
+ end
44
+
45
+ it "should be able to set the buffer size" do
46
+ device = Lumberjack::Device::Writer.new(stream, :buffer_size => 15)
47
+ device.buffer_size.should == 15
48
+ device.buffer_size = 100
49
+ device.buffer_size.should == 100
50
+ end
51
+
52
+ it "should have a default buffer size of 32K" do
53
+ device = Lumberjack::Device::Writer.new(stream)
54
+ device.buffer_size.should == 32768
55
+ end
56
+
57
+ it "should write entries out to the stream with a default template" do
58
+ device = Lumberjack::Device::Writer.new(stream)
59
+ device.write(entry)
60
+ device.flush
61
+ stream.string.should == "[2011-01-15T14:23:45.123 INFO app(12345) #ABCD] test message#{Lumberjack::LINE_SEPARATOR}"
62
+ end
63
+
64
+ it "should write entries out to the stream with a custom template" do
65
+ device = Lumberjack::Device::Writer.new(stream, :template => ":message")
66
+ device.write(entry)
67
+ device.flush
68
+ stream.string.should == "test message#{Lumberjack::LINE_SEPARATOR}"
69
+ end
70
+
71
+ it "should be able to specify the time format for the template" do
72
+ device = Lumberjack::Device::Writer.new(stream, :time_format => :microseconds)
73
+ device.write(entry)
74
+ device.flush
75
+ stream.string.should == "[2011-01-15T14:23:45.123000 INFO app(12345) #ABCD] test message#{Lumberjack::LINE_SEPARATOR}"
76
+ end
77
+
78
+ it "should be able to specify a block template for log entries" do
79
+ device = Lumberjack::Device::Writer.new(stream, :template => lambda{|e| e.message.upcase})
80
+ device.write(entry)
81
+ device.flush
82
+ stream.string.should == "TEST MESSAGE#{Lumberjack::LINE_SEPARATOR}"
83
+ end
84
+
85
+ it "should write to STDERR if an error is raised when flushing to the stream" do
86
+ stderr = $stderr
87
+ $stderr = StringIO.new
88
+ begin
89
+ device = Lumberjack::Device::Writer.new(stream, :template => ":message")
90
+ stream.should_receive(:write).and_raise(StandardError.new("Cannot write to stream"))
91
+ device.write(entry)
92
+ device.flush
93
+ $stderr.string.should include("test message#{Lumberjack::LINE_SEPARATOR}")
94
+ $stderr.string.should include("StandardError: Cannot write to stream")
95
+ ensure
96
+ $stderr = stderr
97
+ end
98
+ end
99
+
100
+ context "multi line messages" do
101
+ let(:message){ "line 1#{Lumberjack::LINE_SEPARATOR}line 2#{Lumberjack::LINE_SEPARATOR}line 3" }
102
+ let(:entry){ Lumberjack::LogEntry.new(time, Lumberjack::Severity::INFO, message, "app", 12345, "ABCD") }
103
+
104
+ it "should have a default template for multiline messages" do
105
+ device = Lumberjack::Device::Writer.new(stream)
106
+ device.write(entry)
107
+ device.flush
108
+ stream.string.split(Lumberjack::LINE_SEPARATOR).should == ["[2011-01-15T14:23:45.123 INFO app(12345) #ABCD] line 1", "> [#ABCD] line 2", "> [#ABCD] line 3"]
109
+ end
110
+
111
+ it "should be able to specify a template for multiple line messages" do
112
+ device = Lumberjack::Device::Writer.new(stream, :additional_lines => " // :message")
113
+ device.write(entry)
114
+ device.flush
115
+ stream.string.should == "[2011-01-15T14:23:45.123 INFO app(12345) #ABCD] line 1 // line 2 // line 3#{Lumberjack::LINE_SEPARATOR}"
116
+ end
117
+ end
118
+ end
@@ -0,0 +1,2333 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 24
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 5
23
+ 45
24
+ 2
25
+ 3
26
+ 43
27
+ 4
28
+ 56
29
+ 5
30
+ 47
31
+ 50
32
+ 6
33
+ 1
34
+ 15
35
+ 2
36
+ 11
37
+ I
38
+ 3
39
+ I
40
+ 0
41
+ I
42
+ 0
43
+ I
44
+ 0
45
+ n
46
+ p
47
+ 7
48
+ s
49
+ 11
50
+ spec_helper
51
+ x
52
+ 7
53
+ require
54
+ x
55
+ 10
56
+ Lumberjack
57
+ n
58
+ x
59
+ 5
60
+ Entry
61
+ M
62
+ 1
63
+ p
64
+ 2
65
+ x
66
+ 9
67
+ for_block
68
+ t
69
+ n
70
+ x
71
+ 9
72
+ __block__
73
+ i
74
+ 88
75
+ 5
76
+ 7
77
+ 0
78
+ 64
79
+ 56
80
+ 1
81
+ 47
82
+ 50
83
+ 2
84
+ 1
85
+ 15
86
+ 5
87
+ 7
88
+ 3
89
+ 64
90
+ 56
91
+ 4
92
+ 47
93
+ 50
94
+ 2
95
+ 1
96
+ 15
97
+ 5
98
+ 7
99
+ 5
100
+ 64
101
+ 56
102
+ 6
103
+ 47
104
+ 50
105
+ 2
106
+ 1
107
+ 15
108
+ 5
109
+ 7
110
+ 7
111
+ 64
112
+ 56
113
+ 8
114
+ 47
115
+ 50
116
+ 2
117
+ 1
118
+ 15
119
+ 5
120
+ 7
121
+ 9
122
+ 64
123
+ 56
124
+ 10
125
+ 47
126
+ 50
127
+ 2
128
+ 1
129
+ 15
130
+ 5
131
+ 7
132
+ 11
133
+ 64
134
+ 56
135
+ 12
136
+ 47
137
+ 50
138
+ 2
139
+ 1
140
+ 15
141
+ 5
142
+ 7
143
+ 13
144
+ 64
145
+ 56
146
+ 14
147
+ 47
148
+ 50
149
+ 2
150
+ 1
151
+ 15
152
+ 5
153
+ 7
154
+ 15
155
+ 64
156
+ 56
157
+ 16
158
+ 47
159
+ 50
160
+ 2
161
+ 1
162
+ 11
163
+ I
164
+ 4
165
+ I
166
+ 0
167
+ I
168
+ 0
169
+ I
170
+ 0
171
+ I
172
+ -2
173
+ p
174
+ 17
175
+ s
176
+ 18
177
+ should have a time
178
+ M
179
+ 1
180
+ p
181
+ 2
182
+ x
183
+ 9
184
+ for_block
185
+ t
186
+ n
187
+ x
188
+ 9
189
+ __block__
190
+ i
191
+ 91
192
+ 45
193
+ 0
194
+ 1
195
+ 49
196
+ 2
197
+ 0
198
+ 19
199
+ 0
200
+ 15
201
+ 45
202
+ 3
203
+ 4
204
+ 43
205
+ 5
206
+ 13
207
+ 71
208
+ 6
209
+ 47
210
+ 9
211
+ 52
212
+ 47
213
+ 49
214
+ 7
215
+ 0
216
+ 13
217
+ 20
218
+ 0
219
+ 45
220
+ 3
221
+ 8
222
+ 43
223
+ 9
224
+ 43
225
+ 10
226
+ 7
227
+ 11
228
+ 64
229
+ 7
230
+ 12
231
+ 64
232
+ 7
233
+ 13
234
+ 7
235
+ 14
236
+ 64
237
+ 47
238
+ 49
239
+ 15
240
+ 6
241
+ 15
242
+ 8
243
+ 75
244
+ 20
245
+ 0
246
+ 45
247
+ 3
248
+ 16
249
+ 43
250
+ 9
251
+ 43
252
+ 10
253
+ 7
254
+ 11
255
+ 64
256
+ 7
257
+ 12
258
+ 64
259
+ 7
260
+ 13
261
+ 7
262
+ 14
263
+ 64
264
+ 49
265
+ 6
266
+ 6
267
+ 19
268
+ 1
269
+ 15
270
+ 20
271
+ 1
272
+ 49
273
+ 17
274
+ 0
275
+ 49
276
+ 18
277
+ 0
278
+ 20
279
+ 0
280
+ 83
281
+ 19
282
+ 11
283
+ I
284
+ b
285
+ I
286
+ 2
287
+ I
288
+ 0
289
+ I
290
+ 0
291
+ I
292
+ -2
293
+ p
294
+ 20
295
+ x
296
+ 4
297
+ Time
298
+ n
299
+ x
300
+ 3
301
+ now
302
+ x
303
+ 10
304
+ Lumberjack
305
+ n
306
+ x
307
+ 5
308
+ Entry
309
+ x
310
+ 3
311
+ new
312
+ x
313
+ 8
314
+ allocate
315
+ n
316
+ x
317
+ 6
318
+ Logger
319
+ x
320
+ 4
321
+ INFO
322
+ s
323
+ 4
324
+ test
325
+ s
326
+ 3
327
+ app
328
+ I
329
+ 5dc
330
+ s
331
+ 4
332
+ ABCD
333
+ x
334
+ 10
335
+ initialize
336
+ n
337
+ x
338
+ 4
339
+ time
340
+ x
341
+ 6
342
+ should
343
+ x
344
+ 2
345
+ ==
346
+ p
347
+ 7
348
+ I
349
+ 0
350
+ I
351
+ 6
352
+ I
353
+ 9
354
+ I
355
+ 7
356
+ I
357
+ 4e
358
+ I
359
+ 8
360
+ I
361
+ 5b
362
+ x
363
+ 57
364
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
365
+ p
366
+ 2
367
+ x
368
+ 1
369
+ t
370
+ x
371
+ 5
372
+ entry
373
+ x
374
+ 2
375
+ it
376
+ s
377
+ 22
378
+ should have a severity
379
+ M
380
+ 1
381
+ p
382
+ 2
383
+ x
384
+ 9
385
+ for_block
386
+ t
387
+ n
388
+ x
389
+ 9
390
+ __block__
391
+ i
392
+ 95
393
+ 45
394
+ 0
395
+ 1
396
+ 43
397
+ 2
398
+ 13
399
+ 71
400
+ 3
401
+ 47
402
+ 9
403
+ 47
404
+ 47
405
+ 49
406
+ 4
407
+ 0
408
+ 13
409
+ 45
410
+ 5
411
+ 6
412
+ 49
413
+ 7
414
+ 0
415
+ 45
416
+ 0
417
+ 8
418
+ 43
419
+ 9
420
+ 43
421
+ 10
422
+ 7
423
+ 11
424
+ 64
425
+ 7
426
+ 12
427
+ 64
428
+ 7
429
+ 13
430
+ 7
431
+ 14
432
+ 64
433
+ 47
434
+ 49
435
+ 15
436
+ 6
437
+ 15
438
+ 8
439
+ 74
440
+ 45
441
+ 5
442
+ 16
443
+ 49
444
+ 7
445
+ 0
446
+ 45
447
+ 0
448
+ 17
449
+ 43
450
+ 9
451
+ 43
452
+ 10
453
+ 7
454
+ 11
455
+ 64
456
+ 7
457
+ 12
458
+ 64
459
+ 7
460
+ 13
461
+ 7
462
+ 14
463
+ 64
464
+ 49
465
+ 3
466
+ 6
467
+ 19
468
+ 0
469
+ 15
470
+ 20
471
+ 0
472
+ 49
473
+ 18
474
+ 0
475
+ 49
476
+ 19
477
+ 0
478
+ 45
479
+ 0
480
+ 20
481
+ 43
482
+ 9
483
+ 43
484
+ 10
485
+ 83
486
+ 21
487
+ 11
488
+ I
489
+ a
490
+ I
491
+ 1
492
+ I
493
+ 0
494
+ I
495
+ 0
496
+ I
497
+ -2
498
+ p
499
+ 22
500
+ x
501
+ 10
502
+ Lumberjack
503
+ n
504
+ x
505
+ 5
506
+ Entry
507
+ x
508
+ 3
509
+ new
510
+ x
511
+ 8
512
+ allocate
513
+ x
514
+ 4
515
+ Time
516
+ n
517
+ x
518
+ 3
519
+ now
520
+ n
521
+ x
522
+ 6
523
+ Logger
524
+ x
525
+ 4
526
+ INFO
527
+ s
528
+ 4
529
+ test
530
+ s
531
+ 3
532
+ app
533
+ I
534
+ 5dc
535
+ s
536
+ 4
537
+ ABCD
538
+ x
539
+ 10
540
+ initialize
541
+ n
542
+ n
543
+ x
544
+ 8
545
+ severity
546
+ x
547
+ 6
548
+ should
549
+ n
550
+ x
551
+ 2
552
+ ==
553
+ p
554
+ 5
555
+ I
556
+ 0
557
+ I
558
+ c
559
+ I
560
+ 4d
561
+ I
562
+ d
563
+ I
564
+ 5f
565
+ x
566
+ 57
567
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
568
+ p
569
+ 1
570
+ x
571
+ 5
572
+ entry
573
+ s
574
+ 35
575
+ should get the severity as a string
576
+ M
577
+ 1
578
+ p
579
+ 2
580
+ x
581
+ 9
582
+ for_block
583
+ t
584
+ n
585
+ x
586
+ 9
587
+ __block__
588
+ i
589
+ 552
590
+ 45
591
+ 0
592
+ 1
593
+ 43
594
+ 2
595
+ 13
596
+ 71
597
+ 3
598
+ 47
599
+ 9
600
+ 45
601
+ 47
602
+ 49
603
+ 4
604
+ 0
605
+ 13
606
+ 45
607
+ 5
608
+ 6
609
+ 49
610
+ 7
611
+ 0
612
+ 45
613
+ 0
614
+ 8
615
+ 43
616
+ 9
617
+ 43
618
+ 10
619
+ 7
620
+ 11
621
+ 64
622
+ 7
623
+ 12
624
+ 64
625
+ 7
626
+ 13
627
+ 1
628
+ 47
629
+ 49
630
+ 14
631
+ 6
632
+ 15
633
+ 8
634
+ 70
635
+ 45
636
+ 5
637
+ 15
638
+ 49
639
+ 7
640
+ 0
641
+ 45
642
+ 0
643
+ 16
644
+ 43
645
+ 9
646
+ 43
647
+ 10
648
+ 7
649
+ 11
650
+ 64
651
+ 7
652
+ 12
653
+ 64
654
+ 7
655
+ 13
656
+ 1
657
+ 49
658
+ 3
659
+ 6
660
+ 49
661
+ 17
662
+ 0
663
+ 49
664
+ 18
665
+ 0
666
+ 7
667
+ 19
668
+ 64
669
+ 83
670
+ 20
671
+ 15
672
+ 45
673
+ 0
674
+ 21
675
+ 43
676
+ 2
677
+ 13
678
+ 71
679
+ 3
680
+ 47
681
+ 9
682
+ 127
683
+ 47
684
+ 49
685
+ 4
686
+ 0
687
+ 13
688
+ 45
689
+ 5
690
+ 22
691
+ 49
692
+ 7
693
+ 0
694
+ 45
695
+ 0
696
+ 23
697
+ 43
698
+ 9
699
+ 43
700
+ 24
701
+ 7
702
+ 11
703
+ 64
704
+ 7
705
+ 12
706
+ 64
707
+ 7
708
+ 13
709
+ 1
710
+ 47
711
+ 49
712
+ 14
713
+ 6
714
+ 15
715
+ 8
716
+ 152
717
+ 45
718
+ 5
719
+ 25
720
+ 49
721
+ 7
722
+ 0
723
+ 45
724
+ 0
725
+ 26
726
+ 43
727
+ 9
728
+ 43
729
+ 24
730
+ 7
731
+ 11
732
+ 64
733
+ 7
734
+ 12
735
+ 64
736
+ 7
737
+ 13
738
+ 1
739
+ 49
740
+ 3
741
+ 6
742
+ 49
743
+ 17
744
+ 0
745
+ 49
746
+ 18
747
+ 0
748
+ 7
749
+ 27
750
+ 64
751
+ 83
752
+ 20
753
+ 15
754
+ 45
755
+ 0
756
+ 28
757
+ 43
758
+ 2
759
+ 13
760
+ 71
761
+ 3
762
+ 47
763
+ 9
764
+ 209
765
+ 47
766
+ 49
767
+ 4
768
+ 0
769
+ 13
770
+ 45
771
+ 5
772
+ 29
773
+ 49
774
+ 7
775
+ 0
776
+ 45
777
+ 0
778
+ 30
779
+ 43
780
+ 9
781
+ 43
782
+ 31
783
+ 7
784
+ 11
785
+ 64
786
+ 7
787
+ 12
788
+ 64
789
+ 7
790
+ 13
791
+ 1
792
+ 47
793
+ 49
794
+ 14
795
+ 6
796
+ 15
797
+ 8
798
+ 234
799
+ 45
800
+ 5
801
+ 32
802
+ 49
803
+ 7
804
+ 0
805
+ 45
806
+ 0
807
+ 33
808
+ 43
809
+ 9
810
+ 43
811
+ 31
812
+ 7
813
+ 11
814
+ 64
815
+ 7
816
+ 12
817
+ 64
818
+ 7
819
+ 13
820
+ 1
821
+ 49
822
+ 3
823
+ 6
824
+ 49
825
+ 17
826
+ 0
827
+ 49
828
+ 18
829
+ 0
830
+ 7
831
+ 34
832
+ 64
833
+ 83
834
+ 20
835
+ 15
836
+ 45
837
+ 0
838
+ 35
839
+ 43
840
+ 2
841
+ 13
842
+ 71
843
+ 3
844
+ 47
845
+ 9
846
+ 291
847
+ 47
848
+ 49
849
+ 4
850
+ 0
851
+ 13
852
+ 45
853
+ 5
854
+ 36
855
+ 49
856
+ 7
857
+ 0
858
+ 45
859
+ 0
860
+ 37
861
+ 43
862
+ 9
863
+ 43
864
+ 38
865
+ 7
866
+ 11
867
+ 64
868
+ 7
869
+ 12
870
+ 64
871
+ 7
872
+ 13
873
+ 1
874
+ 47
875
+ 49
876
+ 14
877
+ 6
878
+ 15
879
+ 8
880
+ 316
881
+ 45
882
+ 5
883
+ 39
884
+ 49
885
+ 7
886
+ 0
887
+ 45
888
+ 0
889
+ 40
890
+ 43
891
+ 9
892
+ 43
893
+ 38
894
+ 7
895
+ 11
896
+ 64
897
+ 7
898
+ 12
899
+ 64
900
+ 7
901
+ 13
902
+ 1
903
+ 49
904
+ 3
905
+ 6
906
+ 49
907
+ 17
908
+ 0
909
+ 49
910
+ 18
911
+ 0
912
+ 7
913
+ 41
914
+ 64
915
+ 83
916
+ 20
917
+ 15
918
+ 45
919
+ 0
920
+ 42
921
+ 43
922
+ 2
923
+ 13
924
+ 71
925
+ 3
926
+ 47
927
+ 9
928
+ 373
929
+ 47
930
+ 49
931
+ 4
932
+ 0
933
+ 13
934
+ 45
935
+ 5
936
+ 43
937
+ 49
938
+ 7
939
+ 0
940
+ 45
941
+ 0
942
+ 44
943
+ 43
944
+ 9
945
+ 43
946
+ 45
947
+ 7
948
+ 11
949
+ 64
950
+ 7
951
+ 12
952
+ 64
953
+ 7
954
+ 13
955
+ 1
956
+ 47
957
+ 49
958
+ 14
959
+ 6
960
+ 15
961
+ 8
962
+ 398
963
+ 45
964
+ 5
965
+ 46
966
+ 49
967
+ 7
968
+ 0
969
+ 45
970
+ 0
971
+ 47
972
+ 43
973
+ 9
974
+ 43
975
+ 45
976
+ 7
977
+ 11
978
+ 64
979
+ 7
980
+ 12
981
+ 64
982
+ 7
983
+ 13
984
+ 1
985
+ 49
986
+ 3
987
+ 6
988
+ 49
989
+ 17
990
+ 0
991
+ 49
992
+ 18
993
+ 0
994
+ 7
995
+ 48
996
+ 64
997
+ 83
998
+ 20
999
+ 15
1000
+ 45
1001
+ 0
1002
+ 49
1003
+ 43
1004
+ 2
1005
+ 13
1006
+ 71
1007
+ 3
1008
+ 47
1009
+ 9
1010
+ 449
1011
+ 47
1012
+ 49
1013
+ 4
1014
+ 0
1015
+ 13
1016
+ 45
1017
+ 5
1018
+ 50
1019
+ 49
1020
+ 7
1021
+ 0
1022
+ 77
1023
+ 7
1024
+ 11
1025
+ 64
1026
+ 7
1027
+ 12
1028
+ 64
1029
+ 7
1030
+ 13
1031
+ 1
1032
+ 47
1033
+ 49
1034
+ 14
1035
+ 6
1036
+ 15
1037
+ 8
1038
+ 468
1039
+ 45
1040
+ 5
1041
+ 51
1042
+ 49
1043
+ 7
1044
+ 0
1045
+ 77
1046
+ 7
1047
+ 11
1048
+ 64
1049
+ 7
1050
+ 12
1051
+ 64
1052
+ 7
1053
+ 13
1054
+ 1
1055
+ 49
1056
+ 3
1057
+ 6
1058
+ 49
1059
+ 17
1060
+ 0
1061
+ 49
1062
+ 18
1063
+ 0
1064
+ 7
1065
+ 52
1066
+ 64
1067
+ 83
1068
+ 20
1069
+ 15
1070
+ 45
1071
+ 0
1072
+ 53
1073
+ 43
1074
+ 2
1075
+ 13
1076
+ 71
1077
+ 3
1078
+ 47
1079
+ 9
1080
+ 520
1081
+ 47
1082
+ 49
1083
+ 4
1084
+ 0
1085
+ 13
1086
+ 45
1087
+ 5
1088
+ 54
1089
+ 49
1090
+ 7
1091
+ 0
1092
+ 7
1093
+ 55
1094
+ 7
1095
+ 11
1096
+ 64
1097
+ 7
1098
+ 12
1099
+ 64
1100
+ 7
1101
+ 13
1102
+ 1
1103
+ 47
1104
+ 49
1105
+ 14
1106
+ 6
1107
+ 15
1108
+ 8
1109
+ 540
1110
+ 45
1111
+ 5
1112
+ 56
1113
+ 49
1114
+ 7
1115
+ 0
1116
+ 7
1117
+ 55
1118
+ 7
1119
+ 11
1120
+ 64
1121
+ 7
1122
+ 12
1123
+ 64
1124
+ 7
1125
+ 13
1126
+ 1
1127
+ 49
1128
+ 3
1129
+ 6
1130
+ 49
1131
+ 17
1132
+ 0
1133
+ 49
1134
+ 18
1135
+ 0
1136
+ 7
1137
+ 52
1138
+ 64
1139
+ 83
1140
+ 20
1141
+ 11
1142
+ I
1143
+ 9
1144
+ I
1145
+ 0
1146
+ I
1147
+ 0
1148
+ I
1149
+ 0
1150
+ I
1151
+ -2
1152
+ p
1153
+ 57
1154
+ x
1155
+ 10
1156
+ Lumberjack
1157
+ n
1158
+ x
1159
+ 5
1160
+ Entry
1161
+ x
1162
+ 3
1163
+ new
1164
+ x
1165
+ 8
1166
+ allocate
1167
+ x
1168
+ 4
1169
+ Time
1170
+ n
1171
+ x
1172
+ 3
1173
+ now
1174
+ n
1175
+ x
1176
+ 6
1177
+ Logger
1178
+ x
1179
+ 5
1180
+ DEBUG
1181
+ s
1182
+ 4
1183
+ test
1184
+ s
1185
+ 3
1186
+ app
1187
+ I
1188
+ 5dc
1189
+ x
1190
+ 10
1191
+ initialize
1192
+ n
1193
+ n
1194
+ x
1195
+ 13
1196
+ severity_to_s
1197
+ x
1198
+ 6
1199
+ should
1200
+ s
1201
+ 5
1202
+ DEBUG
1203
+ x
1204
+ 2
1205
+ ==
1206
+ n
1207
+ n
1208
+ n
1209
+ x
1210
+ 4
1211
+ INFO
1212
+ n
1213
+ n
1214
+ s
1215
+ 4
1216
+ INFO
1217
+ n
1218
+ n
1219
+ n
1220
+ x
1221
+ 4
1222
+ WARN
1223
+ n
1224
+ n
1225
+ s
1226
+ 4
1227
+ WARN
1228
+ n
1229
+ n
1230
+ n
1231
+ x
1232
+ 5
1233
+ ERROR
1234
+ n
1235
+ n
1236
+ s
1237
+ 5
1238
+ ERROR
1239
+ n
1240
+ n
1241
+ n
1242
+ x
1243
+ 5
1244
+ FATAL
1245
+ n
1246
+ n
1247
+ s
1248
+ 5
1249
+ FATAL
1250
+ n
1251
+ n
1252
+ n
1253
+ s
1254
+ 7
1255
+ UNKNOWN
1256
+ n
1257
+ n
1258
+ I
1259
+ 3e8
1260
+ n
1261
+ p
1262
+ 15
1263
+ I
1264
+ 0
1265
+ I
1266
+ 11
1267
+ I
1268
+ 52
1269
+ I
1270
+ 12
1271
+ I
1272
+ a4
1273
+ I
1274
+ 13
1275
+ I
1276
+ f6
1277
+ I
1278
+ 14
1279
+ I
1280
+ 148
1281
+ I
1282
+ 15
1283
+ I
1284
+ 19a
1285
+ I
1286
+ 16
1287
+ I
1288
+ 1e0
1289
+ I
1290
+ 17
1291
+ I
1292
+ 228
1293
+ x
1294
+ 57
1295
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
1296
+ p
1297
+ 0
1298
+ s
1299
+ 21
1300
+ should have a message
1301
+ M
1302
+ 1
1303
+ p
1304
+ 2
1305
+ x
1306
+ 9
1307
+ for_block
1308
+ t
1309
+ n
1310
+ x
1311
+ 9
1312
+ __block__
1313
+ i
1314
+ 91
1315
+ 45
1316
+ 0
1317
+ 1
1318
+ 43
1319
+ 2
1320
+ 13
1321
+ 71
1322
+ 3
1323
+ 47
1324
+ 9
1325
+ 47
1326
+ 47
1327
+ 49
1328
+ 4
1329
+ 0
1330
+ 13
1331
+ 45
1332
+ 5
1333
+ 6
1334
+ 49
1335
+ 7
1336
+ 0
1337
+ 45
1338
+ 0
1339
+ 8
1340
+ 43
1341
+ 9
1342
+ 43
1343
+ 10
1344
+ 7
1345
+ 11
1346
+ 64
1347
+ 7
1348
+ 12
1349
+ 64
1350
+ 7
1351
+ 13
1352
+ 7
1353
+ 14
1354
+ 64
1355
+ 47
1356
+ 49
1357
+ 15
1358
+ 6
1359
+ 15
1360
+ 8
1361
+ 74
1362
+ 45
1363
+ 5
1364
+ 16
1365
+ 49
1366
+ 7
1367
+ 0
1368
+ 45
1369
+ 0
1370
+ 17
1371
+ 43
1372
+ 9
1373
+ 43
1374
+ 10
1375
+ 7
1376
+ 11
1377
+ 64
1378
+ 7
1379
+ 12
1380
+ 64
1381
+ 7
1382
+ 13
1383
+ 7
1384
+ 14
1385
+ 64
1386
+ 49
1387
+ 3
1388
+ 6
1389
+ 19
1390
+ 0
1391
+ 15
1392
+ 20
1393
+ 0
1394
+ 49
1395
+ 18
1396
+ 0
1397
+ 49
1398
+ 19
1399
+ 0
1400
+ 7
1401
+ 11
1402
+ 64
1403
+ 83
1404
+ 20
1405
+ 11
1406
+ I
1407
+ a
1408
+ I
1409
+ 1
1410
+ I
1411
+ 0
1412
+ I
1413
+ 0
1414
+ I
1415
+ -2
1416
+ p
1417
+ 21
1418
+ x
1419
+ 10
1420
+ Lumberjack
1421
+ n
1422
+ x
1423
+ 5
1424
+ Entry
1425
+ x
1426
+ 3
1427
+ new
1428
+ x
1429
+ 8
1430
+ allocate
1431
+ x
1432
+ 4
1433
+ Time
1434
+ n
1435
+ x
1436
+ 3
1437
+ now
1438
+ n
1439
+ x
1440
+ 6
1441
+ Logger
1442
+ x
1443
+ 4
1444
+ INFO
1445
+ s
1446
+ 4
1447
+ test
1448
+ s
1449
+ 3
1450
+ app
1451
+ I
1452
+ 5dc
1453
+ s
1454
+ 4
1455
+ ABCD
1456
+ x
1457
+ 10
1458
+ initialize
1459
+ n
1460
+ n
1461
+ x
1462
+ 7
1463
+ message
1464
+ x
1465
+ 6
1466
+ should
1467
+ x
1468
+ 2
1469
+ ==
1470
+ p
1471
+ 5
1472
+ I
1473
+ 0
1474
+ I
1475
+ 1b
1476
+ I
1477
+ 4d
1478
+ I
1479
+ 1c
1480
+ I
1481
+ 5b
1482
+ x
1483
+ 57
1484
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
1485
+ p
1486
+ 1
1487
+ x
1488
+ 5
1489
+ entry
1490
+ s
1491
+ 22
1492
+ should have a progname
1493
+ M
1494
+ 1
1495
+ p
1496
+ 2
1497
+ x
1498
+ 9
1499
+ for_block
1500
+ t
1501
+ n
1502
+ x
1503
+ 9
1504
+ __block__
1505
+ i
1506
+ 91
1507
+ 45
1508
+ 0
1509
+ 1
1510
+ 43
1511
+ 2
1512
+ 13
1513
+ 71
1514
+ 3
1515
+ 47
1516
+ 9
1517
+ 47
1518
+ 47
1519
+ 49
1520
+ 4
1521
+ 0
1522
+ 13
1523
+ 45
1524
+ 5
1525
+ 6
1526
+ 49
1527
+ 7
1528
+ 0
1529
+ 45
1530
+ 0
1531
+ 8
1532
+ 43
1533
+ 9
1534
+ 43
1535
+ 10
1536
+ 7
1537
+ 11
1538
+ 64
1539
+ 7
1540
+ 12
1541
+ 64
1542
+ 7
1543
+ 13
1544
+ 7
1545
+ 14
1546
+ 64
1547
+ 47
1548
+ 49
1549
+ 15
1550
+ 6
1551
+ 15
1552
+ 8
1553
+ 74
1554
+ 45
1555
+ 5
1556
+ 16
1557
+ 49
1558
+ 7
1559
+ 0
1560
+ 45
1561
+ 0
1562
+ 17
1563
+ 43
1564
+ 9
1565
+ 43
1566
+ 10
1567
+ 7
1568
+ 11
1569
+ 64
1570
+ 7
1571
+ 12
1572
+ 64
1573
+ 7
1574
+ 13
1575
+ 7
1576
+ 14
1577
+ 64
1578
+ 49
1579
+ 3
1580
+ 6
1581
+ 19
1582
+ 0
1583
+ 15
1584
+ 20
1585
+ 0
1586
+ 49
1587
+ 18
1588
+ 0
1589
+ 49
1590
+ 19
1591
+ 0
1592
+ 7
1593
+ 12
1594
+ 64
1595
+ 83
1596
+ 20
1597
+ 11
1598
+ I
1599
+ a
1600
+ I
1601
+ 1
1602
+ I
1603
+ 0
1604
+ I
1605
+ 0
1606
+ I
1607
+ -2
1608
+ p
1609
+ 21
1610
+ x
1611
+ 10
1612
+ Lumberjack
1613
+ n
1614
+ x
1615
+ 5
1616
+ Entry
1617
+ x
1618
+ 3
1619
+ new
1620
+ x
1621
+ 8
1622
+ allocate
1623
+ x
1624
+ 4
1625
+ Time
1626
+ n
1627
+ x
1628
+ 3
1629
+ now
1630
+ n
1631
+ x
1632
+ 6
1633
+ Logger
1634
+ x
1635
+ 4
1636
+ INFO
1637
+ s
1638
+ 4
1639
+ test
1640
+ s
1641
+ 3
1642
+ app
1643
+ I
1644
+ 5dc
1645
+ s
1646
+ 4
1647
+ ABCD
1648
+ x
1649
+ 10
1650
+ initialize
1651
+ n
1652
+ n
1653
+ x
1654
+ 8
1655
+ progname
1656
+ x
1657
+ 6
1658
+ should
1659
+ x
1660
+ 2
1661
+ ==
1662
+ p
1663
+ 5
1664
+ I
1665
+ 0
1666
+ I
1667
+ 20
1668
+ I
1669
+ 4d
1670
+ I
1671
+ 21
1672
+ I
1673
+ 5b
1674
+ x
1675
+ 57
1676
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
1677
+ p
1678
+ 1
1679
+ x
1680
+ 5
1681
+ entry
1682
+ s
1683
+ 17
1684
+ should have a pid
1685
+ M
1686
+ 1
1687
+ p
1688
+ 2
1689
+ x
1690
+ 9
1691
+ for_block
1692
+ t
1693
+ n
1694
+ x
1695
+ 9
1696
+ __block__
1697
+ i
1698
+ 90
1699
+ 45
1700
+ 0
1701
+ 1
1702
+ 43
1703
+ 2
1704
+ 13
1705
+ 71
1706
+ 3
1707
+ 47
1708
+ 9
1709
+ 47
1710
+ 47
1711
+ 49
1712
+ 4
1713
+ 0
1714
+ 13
1715
+ 45
1716
+ 5
1717
+ 6
1718
+ 49
1719
+ 7
1720
+ 0
1721
+ 45
1722
+ 0
1723
+ 8
1724
+ 43
1725
+ 9
1726
+ 43
1727
+ 10
1728
+ 7
1729
+ 11
1730
+ 64
1731
+ 7
1732
+ 12
1733
+ 64
1734
+ 7
1735
+ 13
1736
+ 7
1737
+ 14
1738
+ 64
1739
+ 47
1740
+ 49
1741
+ 15
1742
+ 6
1743
+ 15
1744
+ 8
1745
+ 74
1746
+ 45
1747
+ 5
1748
+ 16
1749
+ 49
1750
+ 7
1751
+ 0
1752
+ 45
1753
+ 0
1754
+ 17
1755
+ 43
1756
+ 9
1757
+ 43
1758
+ 10
1759
+ 7
1760
+ 11
1761
+ 64
1762
+ 7
1763
+ 12
1764
+ 64
1765
+ 7
1766
+ 13
1767
+ 7
1768
+ 14
1769
+ 64
1770
+ 49
1771
+ 3
1772
+ 6
1773
+ 19
1774
+ 0
1775
+ 15
1776
+ 20
1777
+ 0
1778
+ 49
1779
+ 18
1780
+ 0
1781
+ 49
1782
+ 19
1783
+ 0
1784
+ 7
1785
+ 13
1786
+ 83
1787
+ 20
1788
+ 11
1789
+ I
1790
+ a
1791
+ I
1792
+ 1
1793
+ I
1794
+ 0
1795
+ I
1796
+ 0
1797
+ I
1798
+ -2
1799
+ p
1800
+ 21
1801
+ x
1802
+ 10
1803
+ Lumberjack
1804
+ n
1805
+ x
1806
+ 5
1807
+ Entry
1808
+ x
1809
+ 3
1810
+ new
1811
+ x
1812
+ 8
1813
+ allocate
1814
+ x
1815
+ 4
1816
+ Time
1817
+ n
1818
+ x
1819
+ 3
1820
+ now
1821
+ n
1822
+ x
1823
+ 6
1824
+ Logger
1825
+ x
1826
+ 4
1827
+ INFO
1828
+ s
1829
+ 4
1830
+ test
1831
+ s
1832
+ 3
1833
+ app
1834
+ I
1835
+ 5dc
1836
+ s
1837
+ 4
1838
+ ABCD
1839
+ x
1840
+ 10
1841
+ initialize
1842
+ n
1843
+ n
1844
+ x
1845
+ 3
1846
+ pid
1847
+ x
1848
+ 6
1849
+ should
1850
+ x
1851
+ 2
1852
+ ==
1853
+ p
1854
+ 5
1855
+ I
1856
+ 0
1857
+ I
1858
+ 25
1859
+ I
1860
+ 4d
1861
+ I
1862
+ 26
1863
+ I
1864
+ 5a
1865
+ x
1866
+ 57
1867
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
1868
+ p
1869
+ 1
1870
+ x
1871
+ 5
1872
+ entry
1873
+ s
1874
+ 29
1875
+ should have a unit_of_work_id
1876
+ M
1877
+ 1
1878
+ p
1879
+ 2
1880
+ x
1881
+ 9
1882
+ for_block
1883
+ t
1884
+ n
1885
+ x
1886
+ 9
1887
+ __block__
1888
+ i
1889
+ 91
1890
+ 45
1891
+ 0
1892
+ 1
1893
+ 43
1894
+ 2
1895
+ 13
1896
+ 71
1897
+ 3
1898
+ 47
1899
+ 9
1900
+ 47
1901
+ 47
1902
+ 49
1903
+ 4
1904
+ 0
1905
+ 13
1906
+ 45
1907
+ 5
1908
+ 6
1909
+ 49
1910
+ 7
1911
+ 0
1912
+ 45
1913
+ 0
1914
+ 8
1915
+ 43
1916
+ 9
1917
+ 43
1918
+ 10
1919
+ 7
1920
+ 11
1921
+ 64
1922
+ 7
1923
+ 12
1924
+ 64
1925
+ 7
1926
+ 13
1927
+ 7
1928
+ 14
1929
+ 64
1930
+ 47
1931
+ 49
1932
+ 15
1933
+ 6
1934
+ 15
1935
+ 8
1936
+ 74
1937
+ 45
1938
+ 5
1939
+ 16
1940
+ 49
1941
+ 7
1942
+ 0
1943
+ 45
1944
+ 0
1945
+ 17
1946
+ 43
1947
+ 9
1948
+ 43
1949
+ 10
1950
+ 7
1951
+ 11
1952
+ 64
1953
+ 7
1954
+ 12
1955
+ 64
1956
+ 7
1957
+ 13
1958
+ 7
1959
+ 14
1960
+ 64
1961
+ 49
1962
+ 3
1963
+ 6
1964
+ 19
1965
+ 0
1966
+ 15
1967
+ 20
1968
+ 0
1969
+ 49
1970
+ 18
1971
+ 0
1972
+ 49
1973
+ 19
1974
+ 0
1975
+ 7
1976
+ 14
1977
+ 64
1978
+ 83
1979
+ 20
1980
+ 11
1981
+ I
1982
+ a
1983
+ I
1984
+ 1
1985
+ I
1986
+ 0
1987
+ I
1988
+ 0
1989
+ I
1990
+ -2
1991
+ p
1992
+ 21
1993
+ x
1994
+ 10
1995
+ Lumberjack
1996
+ n
1997
+ x
1998
+ 5
1999
+ Entry
2000
+ x
2001
+ 3
2002
+ new
2003
+ x
2004
+ 8
2005
+ allocate
2006
+ x
2007
+ 4
2008
+ Time
2009
+ n
2010
+ x
2011
+ 3
2012
+ now
2013
+ n
2014
+ x
2015
+ 6
2016
+ Logger
2017
+ x
2018
+ 4
2019
+ INFO
2020
+ s
2021
+ 4
2022
+ test
2023
+ s
2024
+ 3
2025
+ app
2026
+ I
2027
+ 5dc
2028
+ s
2029
+ 4
2030
+ ABCD
2031
+ x
2032
+ 10
2033
+ initialize
2034
+ n
2035
+ n
2036
+ x
2037
+ 15
2038
+ unit_of_work_id
2039
+ x
2040
+ 6
2041
+ should
2042
+ x
2043
+ 2
2044
+ ==
2045
+ p
2046
+ 5
2047
+ I
2048
+ 0
2049
+ I
2050
+ 2a
2051
+ I
2052
+ 4d
2053
+ I
2054
+ 2b
2055
+ I
2056
+ 5b
2057
+ x
2058
+ 57
2059
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
2060
+ p
2061
+ 1
2062
+ x
2063
+ 5
2064
+ entry
2065
+ s
2066
+ 31
2067
+ should be converted to a string
2068
+ M
2069
+ 1
2070
+ p
2071
+ 2
2072
+ x
2073
+ 9
2074
+ for_block
2075
+ t
2076
+ n
2077
+ x
2078
+ 9
2079
+ __block__
2080
+ i
2081
+ 95
2082
+ 45
2083
+ 0
2084
+ 1
2085
+ 7
2086
+ 2
2087
+ 64
2088
+ 49
2089
+ 3
2090
+ 1
2091
+ 19
2092
+ 0
2093
+ 15
2094
+ 45
2095
+ 4
2096
+ 5
2097
+ 43
2098
+ 6
2099
+ 13
2100
+ 71
2101
+ 7
2102
+ 47
2103
+ 9
2104
+ 55
2105
+ 47
2106
+ 49
2107
+ 8
2108
+ 0
2109
+ 13
2110
+ 20
2111
+ 0
2112
+ 45
2113
+ 4
2114
+ 9
2115
+ 43
2116
+ 10
2117
+ 43
2118
+ 11
2119
+ 7
2120
+ 12
2121
+ 64
2122
+ 7
2123
+ 13
2124
+ 64
2125
+ 7
2126
+ 14
2127
+ 7
2128
+ 15
2129
+ 64
2130
+ 47
2131
+ 49
2132
+ 16
2133
+ 6
2134
+ 15
2135
+ 8
2136
+ 78
2137
+ 20
2138
+ 0
2139
+ 45
2140
+ 4
2141
+ 17
2142
+ 43
2143
+ 10
2144
+ 43
2145
+ 11
2146
+ 7
2147
+ 12
2148
+ 64
2149
+ 7
2150
+ 13
2151
+ 64
2152
+ 7
2153
+ 14
2154
+ 7
2155
+ 15
2156
+ 64
2157
+ 49
2158
+ 7
2159
+ 6
2160
+ 19
2161
+ 1
2162
+ 15
2163
+ 20
2164
+ 1
2165
+ 49
2166
+ 18
2167
+ 0
2168
+ 49
2169
+ 19
2170
+ 0
2171
+ 7
2172
+ 20
2173
+ 64
2174
+ 83
2175
+ 21
2176
+ 11
2177
+ I
2178
+ b
2179
+ I
2180
+ 2
2181
+ I
2182
+ 0
2183
+ I
2184
+ 0
2185
+ I
2186
+ -2
2187
+ p
2188
+ 22
2189
+ x
2190
+ 4
2191
+ Time
2192
+ n
2193
+ s
2194
+ 19
2195
+ 2011-01-29T12:15:32
2196
+ x
2197
+ 5
2198
+ parse
2199
+ x
2200
+ 10
2201
+ Lumberjack
2202
+ n
2203
+ x
2204
+ 5
2205
+ Entry
2206
+ x
2207
+ 3
2208
+ new
2209
+ x
2210
+ 8
2211
+ allocate
2212
+ n
2213
+ x
2214
+ 6
2215
+ Logger
2216
+ x
2217
+ 4
2218
+ INFO
2219
+ s
2220
+ 4
2221
+ test
2222
+ s
2223
+ 3
2224
+ app
2225
+ I
2226
+ 5dc
2227
+ s
2228
+ 4
2229
+ ABCD
2230
+ x
2231
+ 10
2232
+ initialize
2233
+ n
2234
+ x
2235
+ 4
2236
+ to_s
2237
+ x
2238
+ 6
2239
+ should
2240
+ s
2241
+ 47
2242
+ 2011-01-29T12:15:32 INFO [app(1500) #ABCD] test
2243
+ x
2244
+ 2
2245
+ ==
2246
+ p
2247
+ 7
2248
+ I
2249
+ 0
2250
+ I
2251
+ 2f
2252
+ I
2253
+ c
2254
+ I
2255
+ 30
2256
+ I
2257
+ 51
2258
+ I
2259
+ 31
2260
+ I
2261
+ 5f
2262
+ x
2263
+ 57
2264
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
2265
+ p
2266
+ 2
2267
+ x
2268
+ 1
2269
+ t
2270
+ x
2271
+ 5
2272
+ entry
2273
+ p
2274
+ 17
2275
+ I
2276
+ 0
2277
+ I
2278
+ 5
2279
+ I
2280
+ b
2281
+ I
2282
+ b
2283
+ I
2284
+ 16
2285
+ I
2286
+ 10
2287
+ I
2288
+ 21
2289
+ I
2290
+ 1a
2291
+ I
2292
+ 2c
2293
+ I
2294
+ 1f
2295
+ I
2296
+ 37
2297
+ I
2298
+ 24
2299
+ I
2300
+ 42
2301
+ I
2302
+ 29
2303
+ I
2304
+ 4d
2305
+ I
2306
+ 2e
2307
+ I
2308
+ 58
2309
+ x
2310
+ 57
2311
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
2312
+ p
2313
+ 0
2314
+ x
2315
+ 8
2316
+ describe
2317
+ p
2318
+ 5
2319
+ I
2320
+ 0
2321
+ I
2322
+ 1
2323
+ I
2324
+ 9
2325
+ I
2326
+ 3
2327
+ I
2328
+ 18
2329
+ x
2330
+ 57
2331
+ /Users/bdurand/dev/projects/lumberjack/spec/entry_spec.rb
2332
+ p
2333
+ 0