semantic_logger 0.9.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +120 -122
- data/lib/semantic_logger.rb +8 -2
- data/lib/semantic_logger/appender/mongodb.rb +15 -27
- data/lib/semantic_logger/attribute.rb +45 -0
- data/lib/semantic_logger/base.rb +1 -1
- data/lib/semantic_logger/logger.rb +3 -6
- data/lib/semantic_logger/railtie.rb +7 -9
- data/lib/semantic_logger/version.rb +1 -1
- data/semantic_logger-0.9.0.gem +0 -0
- data/test.log +174 -0
- data/test/attribute_test.rb +52 -0
- metadata +8 -3
data/README.md
CHANGED
@@ -19,7 +19,10 @@ Dynamic
|
|
19
19
|
Tagged Logging
|
20
20
|
|
21
21
|
* Supply custom data to be added to every log entry within a block of code,
|
22
|
-
including libraries and existing
|
22
|
+
including libraries and existing gems
|
23
|
+
* Tagged logging is critical for any high traffic site so that one can narrow
|
24
|
+
down log entries for a single call that is mixed in with log entries
|
25
|
+
from hundreds of other log entries
|
23
26
|
|
24
27
|
High Performance
|
25
28
|
|
@@ -57,10 +60,12 @@ Rails 2 & 3 Support
|
|
57
60
|
* Just include the semantic_logger gem into Rails and it will immediately
|
58
61
|
replace the existing loggers to improve performance and information
|
59
62
|
in the log files
|
63
|
+
* The Rails 3 Tagged logging feature is already available for Rails 2 by use Semantic Logger
|
60
64
|
|
61
65
|
Thread Aware
|
62
66
|
|
63
67
|
* Includes the process and thread id information in every log entry
|
68
|
+
* If running JRuby it will also include the name of the thread for every log entry
|
64
69
|
|
65
70
|
Trace Level
|
66
71
|
|
@@ -76,8 +81,8 @@ Multiple Destinations
|
|
76
81
|
|
77
82
|
* Log to multiple destinations at the same time ( File and MongoDB, etc.. )
|
78
83
|
* Each destination can also have its own log level.
|
79
|
-
For example only
|
80
|
-
|
84
|
+
For example, only log :info and above to MongoDB, or :warn and above to a
|
85
|
+
second log file
|
81
86
|
|
82
87
|
Benchmarking
|
83
88
|
|
@@ -91,12 +96,12 @@ every log entry
|
|
91
96
|
* The application or class name is automatically included for every log entry under
|
92
97
|
a specific logging instance
|
93
98
|
* Includes the duration of blocks of code
|
94
|
-
*
|
99
|
+
* Any hash containing context specific information such as user_id or location information
|
95
100
|
|
96
101
|
Beyond Tagged Logging
|
97
102
|
|
98
103
|
* Supply entire hash of custom data to be added to the payload of every log entry
|
99
|
-
within a block of code, including libraries and existing
|
104
|
+
within a block of code, including libraries and existing gems
|
100
105
|
|
101
106
|
NOSQL Destinations
|
102
107
|
|
@@ -130,7 +135,7 @@ Thread Safe
|
|
130
135
|
|
131
136
|
### Introduction
|
132
137
|
|
133
|
-
|
138
|
+
Semantic Logger is a Logger that supports logging of meta-data, along with text messages
|
134
139
|
to multiple appenders
|
135
140
|
|
136
141
|
An appender is a Logging destination such as a File, MongoDB collection, etc..
|
@@ -140,10 +145,10 @@ to each appender.
|
|
140
145
|
Machines can understand the logged data without having to use
|
141
146
|
complex Regular Expressions or other text parsing techniques
|
142
147
|
|
143
|
-
|
148
|
+
Semantic Logger, sits on top of existing logger implementations and can also
|
144
149
|
be used as a drop in replacement for existing Ruby loggers.
|
145
150
|
This allows the existing logging to be replaced immediately with the
|
146
|
-
|
151
|
+
Semantic Logger Appenders, and over time the calls can be replaced with ones
|
147
152
|
that contain the necessary meta-data.
|
148
153
|
|
149
154
|
Example of current calls:
|
@@ -175,7 +180,7 @@ that took longer than 100 ms:
|
|
175
180
|
db.logs.find({"payload.table":"users", "payload.action":"query", "payload.duration":{$gt:100} })
|
176
181
|
```
|
177
182
|
|
178
|
-
Since
|
183
|
+
Since Semantic Logger can call existing Loggers, it does not force end-users
|
179
184
|
to have to adopt a Semantic aware adapter. Although, such adapters create
|
180
185
|
tremendous value in the problem monitoring and determination processes.
|
181
186
|
|
@@ -292,7 +297,7 @@ Parameters
|
|
292
297
|
```
|
293
298
|
:log_exception
|
294
299
|
Control whether or how an exception thrown in the block is
|
295
|
-
reported by
|
300
|
+
reported by Semantic Logger. Values:
|
296
301
|
:full
|
297
302
|
Log the exception class, message, and backtrace
|
298
303
|
:partial
|
@@ -330,7 +335,7 @@ as debug calls only if the log level is set to trace
|
|
330
335
|
|
331
336
|
#### Changing the Class name for Log Entries
|
332
337
|
|
333
|
-
When Semantic Logger is included
|
338
|
+
When Semantic Logger is included in a Rails project it automatically replaces the
|
334
339
|
loggers for Rails, ActiveRecord::Base, ActionController::Base, and ActiveResource::Base
|
335
340
|
with wrappers that set their Class name. For example in semantic_logger/railtie.rb:
|
336
341
|
|
@@ -343,24 +348,21 @@ By replacing their loggers we now get the class name in the text logging output:
|
|
343
348
|
2012-08-30 15:24:13.439 D [47900:main] ActiveRecord -- SQL (12.0ms) SELECT `schema_migrations`.`version` FROM `schema_migrations`
|
344
349
|
|
345
350
|
It is recommended to include a class specific logger for all major classes that will
|
346
|
-
be logging. For Example:
|
351
|
+
be logging using the SemanticLogger::Attribute mix-in. For Example:
|
347
352
|
|
348
353
|
```ruby
|
349
|
-
require 'sync_attr'
|
350
354
|
require 'semantic_logger'
|
351
355
|
|
352
356
|
class ExternalSupplier
|
353
|
-
#
|
354
|
-
include
|
357
|
+
# Lazy load logger class variable on first use
|
358
|
+
include SemanticLogger::Attribute
|
355
359
|
|
356
|
-
|
357
|
-
|
358
|
-
SemanticLogger::Logger.new(self)
|
359
|
-
end
|
360
|
+
def call_supplier(amount, name)
|
361
|
+
logger.debug "Calculating with amount", { :amount => amount, :name => name }
|
360
362
|
|
361
|
-
|
362
|
-
|
363
|
-
|
363
|
+
# Measure and log on completion how long the call took to the external supplier
|
364
|
+
logger.benchmark_info "Calling external interface" do
|
365
|
+
# Code to call the external supplier ...
|
364
366
|
end
|
365
367
|
end
|
366
368
|
end
|
@@ -427,6 +429,26 @@ logger.with_payload(:user => 'Jack', :zip_code => 12345) do
|
|
427
429
|
end
|
428
430
|
```
|
429
431
|
|
432
|
+
### Using SemanticLogger outside of Rails
|
433
|
+
|
434
|
+
Example:
|
435
|
+
|
436
|
+
```ruby
|
437
|
+
require 'semantic_logger'
|
438
|
+
|
439
|
+
# Set the log level to log everything
|
440
|
+
SemanticLogger::Logger.default_level = :trace
|
441
|
+
|
442
|
+
# Add a file appender to log everything to a file
|
443
|
+
SemanticLogger::Logger.appenders << SemanticLogger::Appender::File.new('dev.log')
|
444
|
+
|
445
|
+
# Add an appender to only log :info and above to standard out
|
446
|
+
SemanticLogger::Logger.appenders << SemanticLogger::Appender::File.new(STDOUT, :info)
|
447
|
+
|
448
|
+
logger = SemanticLogger::Logger.new('Example')
|
449
|
+
logger.info "Hello World"
|
450
|
+
```
|
451
|
+
|
430
452
|
### Configuration
|
431
453
|
|
432
454
|
The Semantic Logger follows the principle where multiple appenders can be active
|
@@ -477,46 +499,85 @@ config.after_initialize do
|
|
477
499
|
)
|
478
500
|
end
|
479
501
|
```
|
502
|
+
### Log Struct
|
503
|
+
|
504
|
+
Internally all log messages are passed around in a Log Struct. In order
|
505
|
+
to write your own custom formatter or log appender it is necessary to understand
|
506
|
+
the fields:
|
507
|
+
|
508
|
+
```ruby
|
509
|
+
Log = Struct.new(:level, :thread_name, :name, :message, :payload, :time, :duration, :tags, :level_index)
|
510
|
+
```
|
511
|
+
level [Symbol]
|
512
|
+
|
513
|
+
* Log level of the supplied log call
|
514
|
+
* :trace, :debug, :info, :warn, :error, :fatal
|
515
|
+
|
516
|
+
thread_name [String]
|
517
|
+
|
518
|
+
* Name or id of the thread in which the logging call was called
|
519
|
+
|
520
|
+
name [String]
|
521
|
+
|
522
|
+
* Class name supplied to the logging instance
|
523
|
+
|
524
|
+
message [String]
|
525
|
+
|
526
|
+
* Text message to be logged
|
527
|
+
|
528
|
+
payload [Hash|Exception]
|
529
|
+
|
530
|
+
* Optional Hash or Ruby Exception object to be logged
|
531
|
+
|
532
|
+
time [Time]
|
533
|
+
|
534
|
+
* The time at which the log entry was created
|
535
|
+
|
536
|
+
duration [Float]
|
537
|
+
|
538
|
+
* The time taken in milli-seconds to complete a benchmark call
|
539
|
+
|
540
|
+
tags [Array<String>]
|
541
|
+
|
542
|
+
* Any tags active on the thread when the log call was made
|
543
|
+
|
544
|
+
level_index [Integer]
|
545
|
+
|
546
|
+
* Internal use only. Index of the log level
|
480
547
|
|
481
548
|
#### Custom Formatters
|
482
549
|
|
483
550
|
The formatting for each appender can be replaced with custom code. To replace the
|
484
551
|
existing formatter supply a block of code when creating the appender.
|
485
552
|
|
486
|
-
|
553
|
+
Example: Formatter that just returns the Log Struct
|
554
|
+
|
555
|
+
```ruby
|
556
|
+
require 'semantic_logger'
|
557
|
+
|
558
|
+
SemanticLogger::Logger.default_level = :trace
|
559
|
+
|
560
|
+
appender = SemanticLogger::Appender::File.new(STDOUT) do |log|
|
561
|
+
# This formatter just returns the log struct as a string
|
562
|
+
log.inspect
|
563
|
+
end
|
564
|
+
|
565
|
+
SemanticLogger::Logger.appenders << appender
|
566
|
+
|
567
|
+
logger = SemanticLogger::Logger.new('Hello')
|
568
|
+
logger.info "Hello World"
|
569
|
+
```
|
570
|
+
Output:
|
571
|
+
|
572
|
+
#<struct SemanticLogger::Base::Log level=:info, thread_name=70167090649820, name="Hello", message="Hello World", payload=nil, time=2012-10-24 10:09:33 -0400, duration=nil, tags=nil, level_index=2>
|
573
|
+
|
574
|
+
|
575
|
+
Example: Replace the Rails log formatter, in the environment configuration file:
|
487
576
|
|
488
577
|
```ruby
|
489
578
|
config.after_initialize do
|
490
579
|
# Since the Rails logger is already initialized, replace its default formatter
|
491
580
|
config.semantic_logger.appenders.first.formatter = Proc.new do |log|
|
492
|
-
# log is a struct with the following fields:
|
493
|
-
#
|
494
|
-
# level
|
495
|
-
# Log level of the supplied log call
|
496
|
-
# :trace, :debug, :info, :warn, :error, :fatal
|
497
|
-
#
|
498
|
-
# thread_name
|
499
|
-
# Name of the thread in which the logging call was called
|
500
|
-
#
|
501
|
-
# name
|
502
|
-
# Class name supplied to the logging instance
|
503
|
-
#
|
504
|
-
# message
|
505
|
-
# Text message to be logged
|
506
|
-
#
|
507
|
-
# payload
|
508
|
-
# Optional Hash or Ruby Exception object to be logged
|
509
|
-
#
|
510
|
-
# time
|
511
|
-
# The time at which the log entry was created
|
512
|
-
#
|
513
|
-
# duration
|
514
|
-
# The time taken to complete a benchmark call
|
515
|
-
#
|
516
|
-
# tags
|
517
|
-
# Any tags active on the thread when the log call was made
|
518
|
-
#
|
519
|
-
|
520
581
|
message = log.message.to_s
|
521
582
|
tags = log.tags.collect { |tag| "[#{tag}]" }.join(" ") + " " if log.tags && (log.tags.size > 0)
|
522
583
|
|
@@ -536,7 +597,7 @@ For example to replace the Rails or Ruby text log formatter, in the environment
|
|
536
597
|
end
|
537
598
|
```
|
538
599
|
|
539
|
-
|
600
|
+
Example: Replace the MongoDB formatter, in the environment configuration file:
|
540
601
|
|
541
602
|
```ruby
|
542
603
|
config.after_initialize do
|
@@ -545,33 +606,6 @@ For example to replace the MongoDB formatter, in the environment configuration f
|
|
545
606
|
:db => Cache::Work.db,
|
546
607
|
:collection_size => 25.gigabytes
|
547
608
|
) do |log|
|
548
|
-
# log is a struct with the following fields:
|
549
|
-
# level
|
550
|
-
# Log level of the supplied log call
|
551
|
-
# :trace, :debug, :info, :warn, :error, :fatal
|
552
|
-
#
|
553
|
-
# thread_name
|
554
|
-
# Name of the thread in which the logging call was called
|
555
|
-
#
|
556
|
-
# name
|
557
|
-
# Class name supplied to the logging instance
|
558
|
-
#
|
559
|
-
# message
|
560
|
-
# Text message to be logged
|
561
|
-
#
|
562
|
-
# payload
|
563
|
-
# Optional Hash or Ruby Exception object to be logged
|
564
|
-
#
|
565
|
-
# time
|
566
|
-
# The time at which the log entry was created
|
567
|
-
#
|
568
|
-
# duration
|
569
|
-
# The time taken to complete a benchmark call
|
570
|
-
#
|
571
|
-
# tags
|
572
|
-
# Any tags active on the thread when the log call was made
|
573
|
-
#
|
574
|
-
|
575
609
|
# Return a document (Hash) of the data to be saved to MongoDB
|
576
610
|
document = {
|
577
611
|
:time => log.time,
|
@@ -679,46 +713,7 @@ To write your own appender it should meet the following requirements:
|
|
679
713
|
* Implement #flush if the resource can be flushed
|
680
714
|
* Write a test for the new appender
|
681
715
|
|
682
|
-
The #log method takes the log struct as a parameter which is
|
683
|
-
```ruby
|
684
|
-
Log = Struct.new(:level, :thread_name, :name, :message, :payload, :time, :duration, :tags, :level_index)
|
685
|
-
```
|
686
|
-
level
|
687
|
-
|
688
|
-
* Log level of the supplied log call
|
689
|
-
* :trace, :debug, :info, :warn, :error, :fatal
|
690
|
-
|
691
|
-
thread_name
|
692
|
-
|
693
|
-
* Name or id of the thread in which the logging call was called
|
694
|
-
|
695
|
-
name
|
696
|
-
|
697
|
-
* Class name supplied to the logging instance
|
698
|
-
|
699
|
-
message
|
700
|
-
|
701
|
-
* Text message to be logged
|
702
|
-
|
703
|
-
payload [Hash|Exception]
|
704
|
-
|
705
|
-
* Optional Hash or Ruby Exception object to be logged
|
706
|
-
|
707
|
-
time [Time]
|
708
|
-
|
709
|
-
* The time at which the log entry was created
|
710
|
-
|
711
|
-
duration [Float]
|
712
|
-
|
713
|
-
* The time taken in milli-seconds to complete a benchmark call
|
714
|
-
|
715
|
-
tags [Array<String>]
|
716
|
-
|
717
|
-
* Any tags active on the thread when the log call was made
|
718
|
-
|
719
|
-
level_index
|
720
|
-
|
721
|
-
* Internal use only. Index of the log level
|
716
|
+
The #log method takes the log struct as a parameter which is described above.
|
722
717
|
|
723
718
|
Basic outline for an Appender:
|
724
719
|
|
@@ -734,7 +729,7 @@ class SimpleAppender < SemanticLogger::Appender::Base
|
|
734
729
|
# Display the log struct and the text formatted output
|
735
730
|
def log(log)
|
736
731
|
p log
|
737
|
-
puts
|
732
|
+
puts formatter.call(log)
|
738
733
|
end
|
739
734
|
|
740
735
|
# Optional
|
@@ -773,15 +768,18 @@ See the [MongoDB Appender Test](https://github.com/ClarityServices/semantic_logg
|
|
773
768
|
|
774
769
|
gem install semantic_logger
|
775
770
|
|
776
|
-
To log to MongoDB
|
771
|
+
To log to MongoDB, it also needs the Ruby Mongo Driver
|
777
772
|
|
778
773
|
gem install mongo
|
779
774
|
|
780
775
|
### Future
|
781
776
|
|
777
|
+
- In V1: Move Railtie to it's own gem so that the Rails logger is not replaced
|
778
|
+
automatically
|
779
|
+
- In V1: Add support for a configuration file that can set log level by class name
|
782
780
|
- Configuration file to support setting the log level for a specific class
|
783
781
|
- Configuration file to support adding appenders
|
784
|
-
- Based on demand add
|
782
|
+
- Based on demand add appenders for: Syslog, hadoop, redis
|
785
783
|
|
786
784
|
Development
|
787
785
|
-----------
|
data/lib/semantic_logger.rb
CHANGED
@@ -1,6 +1,12 @@
|
|
1
|
+
# Place requires here to prevent issues on JRuby with global.require.lock=true
|
2
|
+
require 'thread'
|
3
|
+
require 'thread_safe'
|
4
|
+
require 'sync_attr'
|
5
|
+
|
1
6
|
module SemanticLogger
|
2
|
-
autoload :Base,
|
3
|
-
autoload :Logger,
|
7
|
+
autoload :Base, 'semantic_logger/base'
|
8
|
+
autoload :Logger, 'semantic_logger/logger'
|
9
|
+
autoload :Attribute, 'semantic_logger/attribute'
|
4
10
|
|
5
11
|
module Appender
|
6
12
|
autoload :Base, 'semantic_logger/appender/base'
|
@@ -1,17 +1,20 @@
|
|
1
1
|
require 'socket'
|
2
|
+
require 'mongo'
|
2
3
|
module SemanticLogger
|
3
4
|
module Appender
|
4
5
|
# The Mongo Appender for the SemanticLogger
|
5
|
-
#
|
6
|
+
#
|
7
|
+
# Mongo Document Schema:
|
6
8
|
# _id : ObjectId("4d9cbcbf7abb3abdaf9679cd"),
|
7
9
|
# time : ISODate("2011-04-06T19:19:27.006Z"),
|
8
10
|
# host_name : "Name of the host on which this log entry originated",
|
9
11
|
# application: 'Name of application or service logging the data - clarity_base, nginx, tomcat',
|
10
12
|
# pid : process id
|
11
|
-
#
|
12
|
-
# name : "
|
13
|
-
# level : 'trace|debug|warn|
|
14
|
-
#
|
13
|
+
# thread_name: "name or id of thread",
|
14
|
+
# name : "com.clarity.MyClass",
|
15
|
+
# level : 'trace|debug|info|warn|error|fatal'
|
16
|
+
# level_index: 0|1|2|3|4|5
|
17
|
+
# message : "Message supplied to the logging call",
|
15
18
|
# duration : ms, # Set by Logger#benchmark
|
16
19
|
# tags : "Some tracking id" | ["id1", "id2"]
|
17
20
|
# payload : {
|
@@ -21,27 +24,11 @@ module SemanticLogger
|
|
21
24
|
# # When an exception is supplied as the first or second parameter
|
22
25
|
# # If supplied as the first parameter, message='exception name'
|
23
26
|
# exception: {
|
24
|
-
# name:
|
25
|
-
#
|
27
|
+
# name: 'MyException',
|
28
|
+
# message: 'Invalid value',
|
26
29
|
# stack_trace: []
|
27
30
|
# }
|
28
31
|
#
|
29
|
-
# # For trace and debug level logging, the following can also be logged
|
30
|
-
# # for all levels. Not on for higher levels due to performance impact
|
31
|
-
# source: {
|
32
|
-
# filename:
|
33
|
-
# method:
|
34
|
-
# line_number:
|
35
|
-
# }
|
36
|
-
#
|
37
|
-
# # Future, the Rails around filter can log the following additional data
|
38
|
-
# controller:
|
39
|
-
# action:
|
40
|
-
# duration: 'ms'
|
41
|
-
# http_verb: 'get|post|..'
|
42
|
-
# params: Hash
|
43
|
-
#
|
44
|
-
# tracking_number: 'user defined tracking number'
|
45
32
|
class MongoDB < SemanticLogger::Appender::Base
|
46
33
|
attr_reader :db, :collection_name
|
47
34
|
attr_accessor :host_name, :safe, :application
|
@@ -151,6 +138,7 @@ module SemanticLogger
|
|
151
138
|
:thread_name => log.thread_name,
|
152
139
|
:name => log.name,
|
153
140
|
:level => log.level,
|
141
|
+
:level_index => log.level_index,
|
154
142
|
}
|
155
143
|
document[:application] = application if application
|
156
144
|
document[:message] = self.class.strip_colorizing(log.message) if log.message
|
@@ -160,10 +148,10 @@ module SemanticLogger
|
|
160
148
|
if log.payload
|
161
149
|
if log.payload.is_a?(Exception)
|
162
150
|
exception = log.payload
|
163
|
-
document[:
|
164
|
-
:
|
165
|
-
:message
|
166
|
-
:
|
151
|
+
document[:exception] = {
|
152
|
+
:name => exception.class.name,
|
153
|
+
:message => exception.message,
|
154
|
+
:stack_trace => exception.backtrace
|
167
155
|
}
|
168
156
|
else
|
169
157
|
document[:payload] = log.payload
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# Logger class variable mix-in
|
2
|
+
#
|
3
|
+
# Lazy initialize and a logger class variable with instance accessor
|
4
|
+
#
|
5
|
+
# By including this mix-in into any class it will define a class level logger
|
6
|
+
# and make it accessible via instance methods
|
7
|
+
#
|
8
|
+
# Example
|
9
|
+
#
|
10
|
+
# require 'semantic_logger'
|
11
|
+
#
|
12
|
+
# class ExternalSupplier
|
13
|
+
# # Lazy load 'logger' class variable on first use
|
14
|
+
# include SemanticLogger::Attribute
|
15
|
+
#
|
16
|
+
# def call_supplier(amount, name)
|
17
|
+
# logger.debug "Calculating with amount", { :amount => amount, :name => name }
|
18
|
+
#
|
19
|
+
# # Measure and log on completion how long the call took to the external supplier
|
20
|
+
# logger.benchmark_info "Calling external interface" do
|
21
|
+
# # Code to call the external supplier ...
|
22
|
+
# end
|
23
|
+
# end
|
24
|
+
# end
|
25
|
+
module SemanticLogger
|
26
|
+
module Attribute
|
27
|
+
|
28
|
+
def self.included(base)
|
29
|
+
base.class_eval do
|
30
|
+
# Thread safe class variable initialization
|
31
|
+
include SyncAttr
|
32
|
+
|
33
|
+
sync_cattr_reader :logger do
|
34
|
+
SemanticLogger::Logger.new(self)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
# Also make the logger available as an instance method MixIn
|
40
|
+
def logger
|
41
|
+
self.class.logger
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
45
|
+
end
|
data/lib/semantic_logger/base.rb
CHANGED
@@ -199,7 +199,7 @@ module SemanticLogger
|
|
199
199
|
|
200
200
|
# Write log data to underlying data storage
|
201
201
|
def log(log_)
|
202
|
-
raise "Logging Appender must implement #log(log)"
|
202
|
+
raise NotImplementedError.new("Logging Appender must implement #log(log)")
|
203
203
|
end
|
204
204
|
|
205
205
|
# Return the level index for fast comparisons
|
@@ -1,7 +1,3 @@
|
|
1
|
-
require 'thread'
|
2
|
-
require 'thread_safe'
|
3
|
-
require 'sync_attr'
|
4
|
-
|
5
1
|
# Logger is the interface used by
|
6
2
|
#
|
7
3
|
# Logger maintains the logging name to be used for all log entries generated
|
@@ -189,6 +185,7 @@ module SemanticLogger
|
|
189
185
|
when :flush
|
190
186
|
appenders.each do |appender|
|
191
187
|
begin
|
188
|
+
logger.debug "SemanticLogger::Logger Appender thread: Flushing appender: #{appender.name}"
|
192
189
|
appender.flush
|
193
190
|
rescue Exception => exc
|
194
191
|
logger.error "SemanticLogger::Logger Appender thread: Failed to flush appender: #{appender.inspect}", exc
|
@@ -196,7 +193,7 @@ module SemanticLogger
|
|
196
193
|
end
|
197
194
|
|
198
195
|
message[:reply_queue] << true if message[:reply_queue]
|
199
|
-
logger.debug "SemanticLogger::Logger appenders flushed"
|
196
|
+
logger.debug "SemanticLogger::Logger Appender thread: All appenders flushed"
|
200
197
|
else
|
201
198
|
logger.warn "SemanticLogger::Logger Appender thread: Ignoring unknown command: #{message[:command]}"
|
202
199
|
end
|
@@ -211,7 +208,7 @@ module SemanticLogger
|
|
211
208
|
end
|
212
209
|
|
213
210
|
at_exit do
|
214
|
-
logger.debug "SemanticLogger::Logger
|
211
|
+
logger.debug "SemanticLogger::Logger Process terminating, flushing appenders"
|
215
212
|
flush
|
216
213
|
end
|
217
214
|
end
|
@@ -38,22 +38,20 @@ module SemanticLogger #:nodoc:
|
|
38
38
|
FileUtils.mkdir_p File.dirname path
|
39
39
|
end
|
40
40
|
|
41
|
-
# Add the log file to the list of appenders
|
42
|
-
file_appender = SemanticLogger::Appender::File.new(path)
|
43
|
-
|
44
41
|
# Set internal logger to log to file only, in case another appender
|
45
42
|
# experiences logging problems
|
46
|
-
SemanticLogger::Logger.logger =
|
47
|
-
|
48
|
-
|
43
|
+
SemanticLogger::Logger.logger = SemanticLogger::Appender::File.new(path)
|
44
|
+
|
45
|
+
# Add the log file to the list of appenders
|
46
|
+
SemanticLogger::Logger.appenders << SemanticLogger::Appender::File.new(path)
|
47
|
+
|
49
48
|
SemanticLogger::Logger.new(Rails)
|
50
49
|
rescue StandardError
|
51
50
|
# If not able to log to file, log to standard error with warning level only
|
52
51
|
SemanticLogger::Logger.default_level = :warn
|
53
52
|
|
54
|
-
|
55
|
-
SemanticLogger::Logger.
|
56
|
-
SemanticLogger::Logger.appenders << file_appender
|
53
|
+
SemanticLogger::Logger.logger = SemanticLogger::Appender::File.new(STDERR)
|
54
|
+
SemanticLogger::Logger.appenders << SemanticLogger::Appender::File.new(STDERR)
|
57
55
|
|
58
56
|
logger = SemanticLogger::Logger.new(Rails)
|
59
57
|
logger.warn(
|
Binary file
|
data/test.log
ADDED
@@ -0,0 +1,174 @@
|
|
1
|
+
2012-10-30 08:21:46.695100 D [82468:70310993025760] TestAttribute -- hello debug -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
2
|
+
2012-10-30 08:21:46.696208 E [82468:70310993025760] TestAttribute -- hello error -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
3
|
+
2012-10-30 08:21:46.696208 E [82468:70310993025760] TestAttribute -- hello error -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
4
|
+
2012-10-30 08:21:46.697406 F [82468:70310993025760] TestAttribute -- hello fatal -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
5
|
+
2012-10-30 08:21:46.697406 F [82468:70310993025760] TestAttribute -- hello fatal -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
6
|
+
2012-10-30 08:21:46.697406 F [82468:70310993025760] TestAttribute -- hello fatal -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
7
|
+
2012-10-30 08:21:46.699044 I [82468:70310993025760] TestAttribute -- hello info -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
8
|
+
2012-10-30 08:21:46.699044 I [82468:70310993025760] TestAttribute -- hello info -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
9
|
+
2012-10-30 08:21:46.699044 I [82468:70310993025760] TestAttribute -- hello info -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
10
|
+
2012-10-30 08:21:46.699044 I [82468:70310993025760] TestAttribute -- hello info -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
11
|
+
2012-10-30 08:21:46.701108 T [82468:70310993025760] TestAttribute -- hello trace -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
12
|
+
2012-10-30 08:21:46.701108 T [82468:70310993025760] TestAttribute -- hello trace -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
13
|
+
2012-10-30 08:21:46.701108 T [82468:70310993025760] TestAttribute -- hello trace -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
14
|
+
2012-10-30 08:21:46.701108 T [82468:70310993025760] TestAttribute -- hello trace -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
15
|
+
2012-10-30 08:21:46.701108 T [82468:70310993025760] TestAttribute -- hello trace -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
16
|
+
2012-10-30 08:21:46.702796 W [82468:70310993025760] TestAttribute -- hello warn -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
17
|
+
2012-10-30 08:21:46.702796 W [82468:70310993025760] TestAttribute -- hello warn -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
18
|
+
2012-10-30 08:21:46.702796 W [82468:70310993025760] TestAttribute -- hello warn -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
19
|
+
2012-10-30 08:21:46.702796 W [82468:70310993025760] TestAttribute -- hello warn -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
20
|
+
2012-10-30 08:21:46.702796 W [82468:70310993025760] TestAttribute -- hello warn -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
21
|
+
2012-10-30 08:21:46.702796 W [82468:70310993025760] TestAttribute -- hello warn -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
22
|
+
2012-10-30 08:21:46.805950 D [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
23
|
+
2012-10-30 08:21:46.805950 D [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
24
|
+
2012-10-30 08:21:46.805950 D [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
25
|
+
2012-10-30 08:21:46.805950 D [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
26
|
+
2012-10-30 08:21:46.805950 D [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
27
|
+
2012-10-30 08:21:46.805950 D [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
28
|
+
2012-10-30 08:21:46.819839 E [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
29
|
+
2012-10-30 08:21:46.819839 E [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
30
|
+
2012-10-30 08:21:46.819839 E [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
31
|
+
2012-10-30 08:21:46.819839 E [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
32
|
+
2012-10-30 08:21:46.819839 E [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
33
|
+
2012-10-30 08:21:46.819839 E [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
34
|
+
2012-10-30 08:21:46.821148 F [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
35
|
+
2012-10-30 08:21:46.821148 F [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
36
|
+
2012-10-30 08:21:46.821148 F [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
37
|
+
2012-10-30 08:21:46.821148 F [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
38
|
+
2012-10-30 08:21:46.821148 F [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
39
|
+
2012-10-30 08:21:46.821148 F [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
40
|
+
2012-10-30 08:21:46.822405 I [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
41
|
+
2012-10-30 08:21:46.822405 I [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
42
|
+
2012-10-30 08:21:46.822405 I [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
43
|
+
2012-10-30 08:21:46.822405 I [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
44
|
+
2012-10-30 08:21:46.822405 I [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
45
|
+
2012-10-30 08:21:46.822405 I [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
46
|
+
2012-10-30 08:21:46.823690 T [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
47
|
+
2012-10-30 08:21:46.823690 T [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
48
|
+
2012-10-30 08:21:46.823690 T [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
49
|
+
2012-10-30 08:21:46.823690 T [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
50
|
+
2012-10-30 08:21:46.823690 T [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
51
|
+
2012-10-30 08:21:46.823690 T [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
52
|
+
2012-10-30 08:21:46.824966 W [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
53
|
+
2012-10-30 08:21:46.824966 W [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
54
|
+
2012-10-30 08:21:46.824966 W [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
55
|
+
2012-10-30 08:21:46.824966 W [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
56
|
+
2012-10-30 08:21:46.824966 W [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
57
|
+
2012-10-30 08:21:46.824966 W [82468:70310993025760] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
58
|
+
2012-10-30 08:21:46.827644 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
59
|
+
2012-10-30 08:21:46.827644 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
60
|
+
2012-10-30 08:21:46.827644 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
61
|
+
2012-10-30 08:21:46.827644 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
62
|
+
2012-10-30 08:21:46.827644 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
63
|
+
2012-10-30 08:21:46.827644 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
64
|
+
2012-10-30 08:21:46.829193 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
65
|
+
2012-10-30 08:21:46.829193 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
66
|
+
2012-10-30 08:21:46.829193 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
67
|
+
2012-10-30 08:21:46.829193 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
68
|
+
2012-10-30 08:21:46.829193 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
69
|
+
2012-10-30 08:21:46.829193 D [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
70
|
+
2012-10-30 08:21:46.830324 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
71
|
+
2012-10-30 08:21:46.830324 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
72
|
+
2012-10-30 08:21:46.830324 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
73
|
+
2012-10-30 08:21:46.830324 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
74
|
+
2012-10-30 08:21:46.830324 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
75
|
+
2012-10-30 08:21:46.830324 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
76
|
+
2012-10-30 08:21:46.831945 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
77
|
+
2012-10-30 08:21:46.831945 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
78
|
+
2012-10-30 08:21:46.831945 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
79
|
+
2012-10-30 08:21:46.831945 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
80
|
+
2012-10-30 08:21:46.831945 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
81
|
+
2012-10-30 08:21:46.831945 E [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
82
|
+
2012-10-30 08:21:46.833299 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
83
|
+
2012-10-30 08:21:46.833299 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
84
|
+
2012-10-30 08:21:46.833299 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
85
|
+
2012-10-30 08:21:46.833299 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
86
|
+
2012-10-30 08:21:46.833299 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
87
|
+
2012-10-30 08:21:46.833299 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
88
|
+
2012-10-30 08:21:46.834824 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
89
|
+
2012-10-30 08:21:46.834824 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
90
|
+
2012-10-30 08:21:46.834824 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
91
|
+
2012-10-30 08:21:46.834824 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
92
|
+
2012-10-30 08:21:46.834824 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
93
|
+
2012-10-30 08:21:46.834824 F [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
94
|
+
2012-10-30 08:21:46.835965 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
95
|
+
2012-10-30 08:21:46.835965 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
96
|
+
2012-10-30 08:21:46.835965 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
97
|
+
2012-10-30 08:21:46.835965 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
98
|
+
2012-10-30 08:21:46.835965 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
99
|
+
2012-10-30 08:21:46.835965 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
100
|
+
2012-10-30 08:21:46.837372 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
101
|
+
2012-10-30 08:21:46.837372 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
102
|
+
2012-10-30 08:21:46.837372 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
103
|
+
2012-10-30 08:21:46.837372 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
104
|
+
2012-10-30 08:21:46.837372 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
105
|
+
2012-10-30 08:21:46.837372 I [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
106
|
+
2012-10-30 08:21:46.838511 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
107
|
+
2012-10-30 08:21:46.838511 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
108
|
+
2012-10-30 08:21:46.838511 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
109
|
+
2012-10-30 08:21:46.838511 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
110
|
+
2012-10-30 08:21:46.838511 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
111
|
+
2012-10-30 08:21:46.838511 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
112
|
+
2012-10-30 08:21:46.840070 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
113
|
+
2012-10-30 08:21:46.840070 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
114
|
+
2012-10-30 08:21:46.840070 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
115
|
+
2012-10-30 08:21:46.840070 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
116
|
+
2012-10-30 08:21:46.840070 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
117
|
+
2012-10-30 08:21:46.840070 T [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
118
|
+
2012-10-30 08:21:46.841187 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
119
|
+
2012-10-30 08:21:46.841187 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
120
|
+
2012-10-30 08:21:46.841187 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
121
|
+
2012-10-30 08:21:46.841187 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
122
|
+
2012-10-30 08:21:46.841187 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
123
|
+
2012-10-30 08:21:46.841187 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
124
|
+
2012-10-30 08:21:46.842603 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
125
|
+
2012-10-30 08:21:46.842603 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
126
|
+
2012-10-30 08:21:46.842603 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
127
|
+
2012-10-30 08:21:46.842603 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
128
|
+
2012-10-30 08:21:46.842603 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
129
|
+
2012-10-30 08:21:46.842603 W [82468:70310993025760] (0.0ms) LoggerTest -- hello world
|
130
|
+
2012-10-30 08:21:46.847564 I [82468:70310993025760] [First Level] [tags] [Second Level] LoggerTest -- Hello world
|
131
|
+
2012-10-30 08:21:46.847564 I [82468:70310993025760] [First Level] [tags] [Second Level] LoggerTest -- Hello world
|
132
|
+
2012-10-30 08:21:46.847564 I [82468:70310993025760] [First Level] [tags] [Second Level] LoggerTest -- Hello world
|
133
|
+
2012-10-30 08:21:46.847564 I [82468:70310993025760] [First Level] [tags] [Second Level] LoggerTest -- Hello world
|
134
|
+
2012-10-30 08:21:46.847564 I [82468:70310993025760] [First Level] [tags] [Second Level] LoggerTest -- Hello world
|
135
|
+
2012-10-30 08:21:46.847564 I [82468:70310993025760] [First Level] [tags] [Second Level] LoggerTest -- Hello world
|
136
|
+
2012-10-30 08:21:46.848778 I [82468:70310993025760] LoggerTest -- Hello world -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"}
|
137
|
+
2012-10-30 08:21:46.848778 I [82468:70310993025760] LoggerTest -- Hello world -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"}
|
138
|
+
2012-10-30 08:21:46.848778 I [82468:70310993025760] LoggerTest -- Hello world -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"}
|
139
|
+
2012-10-30 08:21:46.848778 I [82468:70310993025760] LoggerTest -- Hello world -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"}
|
140
|
+
2012-10-30 08:21:46.848778 I [82468:70310993025760] LoggerTest -- Hello world -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"}
|
141
|
+
2012-10-30 08:21:46.848778 I [82468:70310993025760] LoggerTest -- Hello world -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"}
|
142
|
+
2012-10-30 08:21:46.850103 I [82468:70310993025760] [12345] [DJHSFK] LoggerTest -- Hello world
|
143
|
+
2012-10-30 08:21:46.850103 I [82468:70310993025760] [12345] [DJHSFK] LoggerTest -- Hello world
|
144
|
+
2012-10-30 08:21:46.850103 I [82468:70310993025760] [12345] [DJHSFK] LoggerTest -- Hello world
|
145
|
+
2012-10-30 08:21:46.850103 I [82468:70310993025760] [12345] [DJHSFK] LoggerTest -- Hello world
|
146
|
+
2012-10-30 08:21:46.850103 I [82468:70310993025760] [12345] [DJHSFK] LoggerTest -- Hello world
|
147
|
+
2012-10-30 08:21:46.850103 I [82468:70310993025760] [12345] [DJHSFK] LoggerTest -- Hello world
|
148
|
+
2012-10-30 08:23:26.684692 D [82688:70351665191640] TestAttribute -- hello debug -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
149
|
+
2012-10-30 08:23:26.686144 E [82688:70351665191640] TestAttribute -- hello error -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
150
|
+
2012-10-30 08:23:26.687150 F [82688:70351665191640] TestAttribute -- hello fatal -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
151
|
+
2012-10-30 08:23:26.688004 I [82688:70351665191640] TestAttribute -- hello info -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
152
|
+
2012-10-30 08:23:26.688895 T [82688:70351665191640] TestAttribute -- hello trace -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
153
|
+
2012-10-30 08:23:26.689699 W [82688:70351665191640] TestAttribute -- hello warn -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
154
|
+
2012-10-30 08:23:26.790375 D [82688:70351665191640] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
155
|
+
2012-10-30 08:23:26.791120 E [82688:70351665191640] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
156
|
+
2012-10-30 08:23:26.791801 F [82688:70351665191640] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
157
|
+
2012-10-30 08:23:26.792506 I [82688:70351665191640] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
158
|
+
2012-10-30 08:23:26.793247 T [82688:70351665191640] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
159
|
+
2012-10-30 08:23:26.794157 W [82688:70351665191640] LoggerTest -- hello world -- Calculations -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
160
|
+
2012-10-30 08:23:26.801723 D [82688:70351665191640] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
161
|
+
2012-10-30 08:23:26.802661 D [82688:70351665191640] (0.0ms) LoggerTest -- hello world
|
162
|
+
2012-10-30 08:23:26.803349 E [82688:70351665191640] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
163
|
+
2012-10-30 08:23:26.804361 E [82688:70351665191640] (0.0ms) LoggerTest -- hello world
|
164
|
+
2012-10-30 08:23:26.814555 F [82688:70351665191640] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
165
|
+
2012-10-30 08:23:26.815328 F [82688:70351665191640] (0.0ms) LoggerTest -- hello world
|
166
|
+
2012-10-30 08:23:26.815944 I [82688:70351665191640] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
167
|
+
2012-10-30 08:23:26.816661 I [82688:70351665191640] (0.0ms) LoggerTest -- hello world
|
168
|
+
2012-10-30 08:23:26.817266 T [82688:70351665191640] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
169
|
+
2012-10-30 08:23:26.817979 T [82688:70351665191640] (0.0ms) LoggerTest -- hello world
|
170
|
+
2012-10-30 08:23:26.818582 W [82688:70351665191640] (0.0ms) LoggerTest -- hello world -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345} -- {:session_id=>"HSSKLEU@JDK767", :tracking_number=>12345}
|
171
|
+
2012-10-30 08:23:26.819292 W [82688:70351665191640] (0.0ms) LoggerTest -- hello world
|
172
|
+
2012-10-30 08:23:26.822628 I [82688:70351665191640] [First Level] [tags] [Second Level] LoggerTest -- Hello world
|
173
|
+
2012-10-30 08:23:26.823397 I [82688:70351665191640] LoggerTest -- Hello world -- {:tracking_number=>"123456", :even=>2, :more=>"data"} -- {:tracking_number=>"123456", :even=>2, :more=>"data"}
|
174
|
+
2012-10-30 08:23:26.824122 I [82688:70351665191640] [12345] [DJHSFK] LoggerTest -- Hello world
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# Allow test to be run in-place without requiring a gem install
|
2
|
+
$LOAD_PATH.unshift File.dirname(__FILE__) + '/../lib'
|
3
|
+
|
4
|
+
require 'rubygems'
|
5
|
+
require 'test/unit'
|
6
|
+
require 'shoulda'
|
7
|
+
require 'logger'
|
8
|
+
require 'semantic_logger'
|
9
|
+
require 'stringio'
|
10
|
+
|
11
|
+
class TestAttribute
|
12
|
+
include SemanticLogger::Attribute
|
13
|
+
end
|
14
|
+
|
15
|
+
|
16
|
+
# Unit Test for SemanticLogger::Appender::File
|
17
|
+
#
|
18
|
+
class AppenderFileTest < Test::Unit::TestCase
|
19
|
+
context SemanticLogger::Attribute do
|
20
|
+
setup do
|
21
|
+
@time = Time.new
|
22
|
+
@io = StringIO.new
|
23
|
+
@appender = SemanticLogger::Appender::File.new(@io)
|
24
|
+
SemanticLogger::Logger.default_level = :trace
|
25
|
+
SemanticLogger::Logger.appenders << @appender
|
26
|
+
@hash = { :session_id => 'HSSKLEU@JDK767', :tracking_number => 12345 }
|
27
|
+
@hash_str = @hash.inspect.sub("{", "\\{").sub("}", "\\}")
|
28
|
+
@thread_name = SemanticLogger::Base.thread_name
|
29
|
+
end
|
30
|
+
|
31
|
+
teardown do
|
32
|
+
SemanticLogger::Logger.appenders.delete(@appender)
|
33
|
+
end
|
34
|
+
|
35
|
+
context "for each log level" do
|
36
|
+
# Ensure that any log level can be logged
|
37
|
+
SemanticLogger::LEVELS.each do |level|
|
38
|
+
should "log #{level} information with class attribute" do
|
39
|
+
TestAttribute.logger.send(level, "hello #{level}", @hash)
|
40
|
+
SemanticLogger::Logger.flush
|
41
|
+
assert_match /\d+-\d+-\d+ \d+:\d+:\d+.\d+ \w \[\d+:#{@thread_name}\] TestAttribute -- hello #{level} -- #{@hash_str}\n/, @io.string
|
42
|
+
end
|
43
|
+
should "log #{level} information with instance attribute" do
|
44
|
+
TestAttribute.new.logger.send(level, "hello #{level}", @hash)
|
45
|
+
SemanticLogger::Logger.flush
|
46
|
+
assert_match /\d+-\d+-\d+ \d+:\d+:\d+.\d+ \w \[\d+:#{@thread_name}\] TestAttribute -- hello #{level} -- #{@hash_str}\n/, @io.string
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
52
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: semantic_logger
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.10.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-10-
|
12
|
+
date: 2012-10-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sync_attr
|
@@ -76,6 +76,7 @@ files:
|
|
76
76
|
- lib/semantic_logger/appender/file.rb
|
77
77
|
- lib/semantic_logger/appender/mongodb.rb
|
78
78
|
- lib/semantic_logger/appender/wrapper.rb
|
79
|
+
- lib/semantic_logger/attribute.rb
|
79
80
|
- lib/semantic_logger/base.rb
|
80
81
|
- lib/semantic_logger/logger.rb
|
81
82
|
- lib/semantic_logger/railtie.rb
|
@@ -90,15 +91,19 @@ files:
|
|
90
91
|
- nbproject/project.xml
|
91
92
|
- Rakefile
|
92
93
|
- README.md
|
94
|
+
- semantic_logger-0.10.0.gem
|
93
95
|
- semantic_logger-0.7.0.gem
|
94
96
|
- semantic_logger-0.7.1.gem
|
95
97
|
- semantic_logger-0.8.0.gem
|
96
98
|
- semantic_logger-0.8.1.gem
|
99
|
+
- semantic_logger-0.9.0.gem
|
97
100
|
- test/appender_file_test.rb
|
98
101
|
- test/appender_mongodb_test.rb
|
99
102
|
- test/appender_wrapper_test.rb
|
103
|
+
- test/attribute_test.rb
|
100
104
|
- test/logger_test.rb
|
101
105
|
- test/mock_logger.rb
|
106
|
+
- test.log
|
102
107
|
homepage: https://github.com/ClarityServices/semantic_logger
|
103
108
|
licenses: []
|
104
109
|
post_install_message:
|
@@ -113,7 +118,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
113
118
|
version: '0'
|
114
119
|
segments:
|
115
120
|
- 0
|
116
|
-
hash:
|
121
|
+
hash: 472346735142331014
|
117
122
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
118
123
|
none: false
|
119
124
|
requirements:
|