semantic_logger 0.9.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
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 Gems
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 write :info and above to MongoDB
80
- Or have a second log file for :warn and above log entries
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
- * any Hash containing context specific information such as user_id or location information
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 Gems
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
- SemanticLogger is a Logger that supports logging of meta-data, along with text messages
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
- SemanticLogger, sits on top of existing logger implementations and can also
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
- SemanticLogger Appenders, and over time the calls can be replaced with ones
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 SemanticLogger can call existing Loggers, it does not force end-users
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 SemanticLogger. Values:
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 on a Rails project it automatically replaces the
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
- # Gem sync_attr is a dependency of semantic_logger so is already installed
354
- include SyncAttr
357
+ # Lazy load logger class variable on first use
358
+ include SemanticLogger::Attribute
355
359
 
356
- # Lazy initializes the class logger on it's first call in a thread-safe way
357
- sync_cattr_reader :logger do
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
- def call(params)
362
- self.class.logger.benchmark_info "Calling external interface" do
363
- # Code to call external service ...
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
- For example to replace the Rails or Ruby text log formatter, in the environment configuration file:
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
- For example to replace the MongoDB formatter, in the environment configuration file:
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 defined as follows:
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 @formatter.call(log)
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 direct appenders for: Syslog, hadoop, redis
782
+ - Based on demand add appenders for: Syslog, hadoop, redis
785
783
 
786
784
  Development
787
785
  -----------
@@ -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, 'semantic_logger/base'
3
- autoload :Logger, 'semantic_logger/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
- # clarity_log Schema:
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
- # thread : "name of thread",
12
- # name : "ch.qos.logback.classic.db.mongo.MongoDBAppenderTest",
13
- # level : 'trace|debug|warn|info|error',
14
- # message : "blah blah",
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: 'MyException',
25
- # description: 'blah',
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[:payload] = {
164
- :exception => exception.class.name,
165
- :message => exception.message,
166
- :backtrace => exception.backtrace
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
@@ -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 process terminating, flushing appenders"
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 = file_appender
47
- SemanticLogger::Logger.appenders << file_appender
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
- file_appender = SemanticLogger::Appender::File.new(STDERR)
55
- SemanticLogger::Logger.logger = file_appender
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(
@@ -1,3 +1,3 @@
1
1
  module SemanticLogger #:nodoc
2
- VERSION = "0.9.0"
2
+ VERSION = "0.10.0"
3
3
  end
Binary file
@@ -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.9.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-24 00:00:00.000000000 Z
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: 3745819161206359497
121
+ hash: 472346735142331014
117
122
  required_rubygems_version: !ruby/object:Gem::Requirement
118
123
  none: false
119
124
  requirements: