From 431028811eaee85f470ab6f59b918ed185208724 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 14 May 2012 12:02:50 +0200 Subject: [PATCH 01/30] semlogger --- .gitignore | 3 +- README.md | 4 +- Rakefile | 6 +-- lib/{slogger.rb => semlogger.rb} | 14 +++---- lib/{slogger => semlogger}/filter.rb | 6 +-- lib/{slogger => semlogger}/formatter.rb | 2 +- lib/{slogger => semlogger}/multiplex.rb | 2 +- lib/{slogger => semlogger}/rack.rb | 2 +- lib/{slogger => semlogger}/rotate.rb | 2 +- lib/{slogger => semlogger}/tailer.rb | 2 +- lib/{slogger => semlogger}/writer.rb | 8 ++-- lib/slogger/transaction.rb | 28 -------------- semlogger.gemspec | 51 +++++++++++++++++++++++++ 13 files changed, 76 insertions(+), 54 deletions(-) rename lib/{slogger.rb => semlogger.rb} (85%) rename lib/{slogger => semlogger}/filter.rb (71%) rename lib/{slogger => semlogger}/formatter.rb (93%) rename lib/{slogger => semlogger}/multiplex.rb (95%) rename lib/{slogger => semlogger}/rack.rb (93%) rename lib/{slogger => semlogger}/rotate.rb (95%) rename lib/{slogger => semlogger}/tailer.rb (95%) rename lib/{slogger => semlogger}/writer.rb (75%) delete mode 100644 lib/slogger/transaction.rb create mode 100644 semlogger.gemspec diff --git a/.gitignore b/.gitignore index adcda08..a985dbd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ -*.gemspec -*.gem +t*.gem *.rbc .bundle .config diff --git a/README.md b/README.md index 765a3c5..2ac383d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Slogger +Semlogger ======= -(Semi-)Structured Logger for Ruby (and Rails) \ No newline at end of file +(Semi-)Structured Logger for Ruby (and Rails) diff --git a/Rakefile b/Rakefile index e5fad5a..68654fb 100644 --- a/Rakefile +++ b/Rakefile @@ -4,11 +4,11 @@ require 'rake' begin require 'jeweler' Jeweler::Tasks.new do |gem| - gem.name = "slogger" + gem.name = "semlogger" gem.summary = %Q{(Semi-)Structured Logger} gem.description = %Q{(Semi-)Structured Logger for Ruby (and Rails)} gem.email = %w[Denis.Knauf@gmail.com] - gem.homepage = "http://github.com/DenisKnauf/Slogger" + gem.homepage = "http://github.com/DenisKnauf/semlogger" gem.authors = ["Denis Knauf"] gem.files = %w[AUTHORS README.md VERSION LICENSE lib/**/*.rb] gem.require_paths = %w[lib] @@ -52,7 +52,7 @@ Rake::RDocTask.new do |rdoc| end rdoc.rdoc_dir = 'rdoc' - rdoc.title = "Slogger #{version}" + rdoc.title = "semlogger #{version}" rdoc.rdoc_files.include 'README.md' rdoc.rdoc_files.include 'AUTHORS' rdoc.rdoc_files.include 'LICENSE' diff --git a/lib/slogger.rb b/lib/semlogger.rb similarity index 85% rename from lib/slogger.rb rename to lib/semlogger.rb index a3dc744..57b17e9 100644 --- a/lib/slogger.rb +++ b/lib/semlogger.rb @@ -1,9 +1,9 @@ require 'json' -class Slogger < ::Logger +class Semlogger < ::Logger def initialize logdev = nil, *a, &e case logdev - when String, nil then logdev = ::Slogger::Writer.new logdev + when String, nil then logdev = ::Semlogger::Writer.new logdev end @level, @data, @tags, @logdev = DEBUG, {}, [], logdev end @@ -75,8 +75,8 @@ class Slogger < ::Logger end end -require 'slogger/rotate' -require 'slogger/multiplex' -require 'slogger/rack' -require 'slogger/filter' -require 'slogger/writer' +require 'semlogger/rotate' +require 'semlogger/multiplex' +require 'semlogger/rack' +require 'semlogger/filter' +require 'semlogger/writer' diff --git a/lib/slogger/filter.rb b/lib/semlogger/filter.rb similarity index 71% rename from lib/slogger/filter.rb rename to lib/semlogger/filter.rb index 8e68265..cf3dde8 100644 --- a/lib/slogger/filter.rb +++ b/lib/semlogger/filter.rb @@ -1,4 +1,4 @@ -class Slogger::Filter +class Semlogger::Filter attr_accessor :level, :logdev def initialize level, logdev @@ -15,9 +15,9 @@ end %w[debug info warn error fatal].each do |level| eval <<-EOC - class ::Slogger::F#{level.camelcase} < Slogger::Filter + class ::Semlogger::F#{level.camelcase} < Semlogger::Filter def initialize *a - super Slogger::#{level.upcase}, *a + super Semlogger::#{level.upcase}, *a end end EOC diff --git a/lib/slogger/formatter.rb b/lib/semlogger/formatter.rb similarity index 93% rename from lib/slogger/formatter.rb rename to lib/semlogger/formatter.rb index 5acfaf1..d0379dc 100644 --- a/lib/slogger/formatter.rb +++ b/lib/semlogger/formatter.rb @@ -1,4 +1,4 @@ -class Slogger::Formatter < ::Logger::Formatter +class Semlogger::Formatter < ::Logger::Formatter def initialize tags, data @tags, @data = tags, data end diff --git a/lib/slogger/multiplex.rb b/lib/semlogger/multiplex.rb similarity index 95% rename from lib/slogger/multiplex.rb rename to lib/semlogger/multiplex.rb index e10bb84..4c8430a 100644 --- a/lib/slogger/multiplex.rb +++ b/lib/semlogger/multiplex.rb @@ -1,4 +1,4 @@ -class Slogger::Multiplex +class Semlogger::Multiplex def initialize( *dests) @__dests__ = dests end def write( *a, &e) @__dests__.each {|d| d.write *a, &e } end diff --git a/lib/slogger/rack.rb b/lib/semlogger/rack.rb similarity index 93% rename from lib/slogger/rack.rb rename to lib/semlogger/rack.rb index f0cf227..3032726 100644 --- a/lib/slogger/rack.rb +++ b/lib/semlogger/rack.rb @@ -1,4 +1,4 @@ -class Slogger::Rack < Rails::Rack::Logger +class Semlogger::Rack < Rails::Rack::Logger def initialize app, tags = nil, data = nil super app, tags @data = data diff --git a/lib/slogger/rotate.rb b/lib/semlogger/rotate.rb similarity index 95% rename from lib/slogger/rotate.rb rename to lib/semlogger/rotate.rb index 35142e0..a658477 100644 --- a/lib/slogger/rotate.rb +++ b/lib/semlogger/rotate.rb @@ -1,4 +1,4 @@ -class Slogger::Rotate +class Semlogger::Rotate attr_reader :file def filename() @filename.dup end diff --git a/lib/slogger/tailer.rb b/lib/semlogger/tailer.rb similarity index 95% rename from lib/slogger/tailer.rb rename to lib/semlogger/tailer.rb index 2afbc24..bf823ef 100644 --- a/lib/slogger/tailer.rb +++ b/lib/semlogger/tailer.rb @@ -1,4 +1,4 @@ -class Slogger::Tailer < Rails::Rack::LogTailer +class Semlogger::Tailer < Rails::Rack::LogTailer def initialize app, log = nil @app = app log ||= Rails.root.join( 'log', Rails.env).to_s.gsub('%', '%%') + '.%Y-%m-%d.%$.log' diff --git a/lib/slogger/writer.rb b/lib/semlogger/writer.rb similarity index 75% rename from lib/slogger/writer.rb rename to lib/semlogger/writer.rb index a41a9af..a7dd419 100644 --- a/lib/slogger/writer.rb +++ b/lib/semlogger/writer.rb @@ -1,9 +1,9 @@ -class Slogger::Output +class Semlogger::Output end -class Slogger::Writer < Slogger::Output +class Semlogger::Writer < Semlogger::Output def initialize logdev = nil - @logdev = logdev || ::Slogger::Rotate.new( ::Rails.root.join( 'log', ::Rails.env).to_s.gsub('%', '%%') + '.%Y-%m-%d.%$.log') + @logdev = logdev || ::Semlogger::Rotate.new( ::Rails.root.join( 'log', ::Rails.env).to_s.gsub('%', '%%') + '.%Y-%m-%d.%$.log') end def add severity, time, progname, data, tags, message @@ -11,7 +11,7 @@ class Slogger::Writer < Slogger::Output end end -class Slogger::Printer < Slogger::Output +class Semlogger::Printer < Semlogger::Output def initialize logdev = nil @logdev = logdev || $stdout @last_reqid = nil diff --git a/lib/slogger/transaction.rb b/lib/slogger/transaction.rb deleted file mode 100644 index 5ea8676..0000000 --- a/lib/slogger/transaction.rb +++ /dev/null @@ -1,28 +0,0 @@ -class Slogger::Transaction - include UUIDTools - attr_reader :app, :id, :default_id - - class <= 0") if s.respond_to? :required_rubygems_version= + s.authors = ["Denis Knauf"] + s.date = %q{2012-05-14} + s.description = %q{(Semi-)Structured Logger for Ruby (and Rails)} + s.email = ["Denis.Knauf@gmail.com"] + s.extra_rdoc_files = [ + "LICENSE", + "README.md" + ] + s.files = [ + "AUTHORS", + "LICENSE", + "README.md", + "VERSION", + "lib/semlogger.rb", + "lib/semlogger/filter.rb", + "lib/semlogger/formatter.rb", + "lib/semlogger/multiplex.rb", + "lib/semlogger/rack.rb", + "lib/semlogger/rotate.rb", + "lib/semlogger/tailer.rb", + "lib/semlogger/writer.rb" + ] + s.homepage = %q{http://github.com/DenisKnauf/semlogger} + s.require_paths = ["lib"] + s.rubygems_version = %q{1.3.7} + s.summary = %q{(Semi-)Structured Logger} + + if s.respond_to? :specification_version then + current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION + s.specification_version = 3 + + if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then + s.add_runtime_dependency(%q, [">= 0"]) + else + s.add_dependency(%q, [">= 0"]) + end + else + s.add_dependency(%q, [">= 0"]) + end +end + From e8223e84a9f4d2b179d9819c3cab220fcc6c9223 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Sun, 20 May 2012 21:11:46 +0200 Subject: [PATCH 02/30] message-types for string/integer/... is str/const. newline-fixed. --- lib/semlogger.rb | 3 ++- lib/semlogger/writer.rb | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/semlogger.rb b/lib/semlogger.rb index 57b17e9..cd3340a 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -35,7 +35,8 @@ class Semlogger < ::Logger def format_msg msg case msg - when String, Numeric, true, false, nil then [msg] + when Numeric, true, false, nil then [:const, msg] + when String then [:str, msg] when Exception then [:exception, msg.class.name, msg.message.to_s, msg.backtrace] else [:obj, msg] end diff --git a/lib/semlogger/writer.rb b/lib/semlogger/writer.rb index a7dd419..f4ddab5 100644 --- a/lib/semlogger/writer.rb +++ b/lib/semlogger/writer.rb @@ -7,7 +7,7 @@ class Semlogger::Writer < Semlogger::Output end def add severity, time, progname, data, tags, message - @logdev.write [severity, time, progname, data, tags, message].to_json + @logdev.write [severity, time, progname, data, tags, message].to_json+"\n" end end @@ -24,7 +24,7 @@ class Semlogger::Printer < Semlogger::Output r = "Exception: #{message[2]} (#{message[1]}" r << "\n\t" << message[3].join( "\n\t") if message[3] r - when String, Numeric, true, false, nil then message[0] + when :str, :const then message[1] when :obj then message[1].inspect else message.inspect end From 334fc414a08c30d8811d5b4b10a954e46ae1391a Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Sun, 20 May 2012 21:12:25 +0200 Subject: [PATCH 03/30] v0.0.2 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 8acdd82..4e379d2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.1 +0.0.2 From 849eeba2b0ff49198c7931383f2b5182f34f1a67 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Sun, 20 May 2012 21:12:39 +0200 Subject: [PATCH 04/30] Regenerate gemspec for version 0.0.2 --- semlogger.gemspec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/semlogger.gemspec b/semlogger.gemspec index d85bf52..5fcb6f5 100644 --- a/semlogger.gemspec +++ b/semlogger.gemspec @@ -5,11 +5,11 @@ Gem::Specification.new do |s| s.name = %q{semlogger} - s.version = "0.0.1" + s.version = "0.0.2" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Denis Knauf"] - s.date = %q{2012-05-14} + s.date = %q{2012-05-20} s.description = %q{(Semi-)Structured Logger for Ruby (and Rails)} s.email = ["Denis.Knauf@gmail.com"] s.extra_rdoc_files = [ From f06b2be0776315e45f36a3e5ea05bdc534863d4d Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Sun, 20 May 2012 21:39:31 +0200 Subject: [PATCH 05/30] timestamp: xmlschema in nanoseconds --- lib/semlogger/writer.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/semlogger/writer.rb b/lib/semlogger/writer.rb index f4ddab5..096d013 100644 --- a/lib/semlogger/writer.rb +++ b/lib/semlogger/writer.rb @@ -7,7 +7,7 @@ class Semlogger::Writer < Semlogger::Output end def add severity, time, progname, data, tags, message - @logdev.write [severity, time, progname, data, tags, message].to_json+"\n" + @logdev.write [severity, time.xmlschema(9), progname, data, tags, message].to_json+"\n" end end From 868507672a86c3c6058cef6bc949e1c7d4832c17 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 21 May 2012 13:54:21 +0200 Subject: [PATCH 06/30] v0.0.3: customtypes --- VERSION | 2 +- lib/semlogger.rb | 60 ++++++++++++++++++++++++++++++++++++++--- lib/semlogger/rack.rb | 2 +- lib/semlogger/writer.rb | 3 +-- 4 files changed, 59 insertions(+), 8 deletions(-) diff --git a/VERSION b/VERSION index 4e379d2..bcab45a 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.2 +0.0.3 diff --git a/lib/semlogger.rb b/lib/semlogger.rb index cd3340a..c74df04 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -1,10 +1,62 @@ require 'json' +class Object + def to_semlogger + [self.class.name.to_sym, self.respond_to?( :serializable_hash) ? self.serializable_hash : self ] + end +end + +class Exception + def to_semlogger + [:exception] + super + end +end + +class String + def to_semlogger + [:String, self] + end +end + +%w[Numeric FalseClass TrueClass NilClass].each do |cl| + Object.const_get( cl).class_eval do + def to_semlogger + [:const, self] + end + end +end + class Semlogger < ::Logger + class CustomType + def initialize name, *obj + @name, @obj = name.to_s.to_sym, obj + end + + def to_semlogger + [@name] + @obj + end + end + + attr_accessor :logdev, :level, :progname + class < Date: Mon, 21 May 2012 13:54:30 +0200 Subject: [PATCH 07/30] Regenerate gemspec for version 0.0.3 --- semlogger.gemspec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/semlogger.gemspec b/semlogger.gemspec index 5fcb6f5..4ad8a40 100644 --- a/semlogger.gemspec +++ b/semlogger.gemspec @@ -5,11 +5,11 @@ Gem::Specification.new do |s| s.name = %q{semlogger} - s.version = "0.0.2" + s.version = "0.0.3" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Denis Knauf"] - s.date = %q{2012-05-20} + s.date = %q{2012-05-21} s.description = %q{(Semi-)Structured Logger for Ruby (and Rails)} s.email = ["Denis.Knauf@gmail.com"] s.extra_rdoc_files = [ From 59957f03b73bcbfe005a7ffbe6578a50c0b0dc4e Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 17 Sep 2012 13:20:31 +0200 Subject: [PATCH 08/30] rotate: close-bedingung fixed --- lib/semlogger/rotate.rb | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/lib/semlogger/rotate.rb b/lib/semlogger/rotate.rb index a658477..4ec32c1 100644 --- a/lib/semlogger/rotate.rb +++ b/lib/semlogger/rotate.rb @@ -9,11 +9,7 @@ class Semlogger::Rotate def open_if name = Time.now.strftime( @filename).gsub /%\$/, $$.to_s - #p at: Time.now, open_if: name, cur: @file ? @file.path : nil, e: @file ? name == @file.path : nil - if @file and name == @file.path - @file.close - @file = nil - end + @file.close if @file and name != @file.path @file = File.open name, 'a' unless @file @file end @@ -24,5 +20,6 @@ class Semlogger::Rotate def close @file.close + @file = nil end end From 742bb3b01ecec08409b7ddbfd27b87f253e161e9 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 17 Sep 2012 13:20:54 +0200 Subject: [PATCH 09/30] 0.0.4 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index bcab45a..81340c7 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.3 +0.0.4 From a7745f28a109ef9228ce1e708f03b0c351a16df6 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 17 Sep 2012 13:21:14 +0200 Subject: [PATCH 10/30] Regenerate gemspec for version 0.0.4 --- semlogger.gemspec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/semlogger.gemspec b/semlogger.gemspec index 4ad8a40..66d4b25 100644 --- a/semlogger.gemspec +++ b/semlogger.gemspec @@ -5,11 +5,11 @@ Gem::Specification.new do |s| s.name = %q{semlogger} - s.version = "0.0.3" + s.version = "0.0.4" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Denis Knauf"] - s.date = %q{2012-05-21} + s.date = %q{2012-09-17} s.description = %q{(Semi-)Structured Logger for Ruby (and Rails)} s.email = ["Denis.Knauf@gmail.com"] s.extra_rdoc_files = [ From c44010dd64ac612050015a283832651d7707c4a7 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 17 Sep 2012 13:46:57 +0200 Subject: [PATCH 11/30] v0.0.5 rotate: close-bedingung fixed --- VERSION | 2 +- lib/semlogger/rotate.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/VERSION b/VERSION index 81340c7..bbdeab6 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.4 +0.0.5 diff --git a/lib/semlogger/rotate.rb b/lib/semlogger/rotate.rb index 4ec32c1..9656bcb 100644 --- a/lib/semlogger/rotate.rb +++ b/lib/semlogger/rotate.rb @@ -9,7 +9,7 @@ class Semlogger::Rotate def open_if name = Time.now.strftime( @filename).gsub /%\$/, $$.to_s - @file.close if @file and name != @file.path + close if @file and name != @file.path @file = File.open name, 'a' unless @file @file end From d4dd5dfd0e529a9a1b36302fee52882becd2f606 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 17 Sep 2012 13:47:10 +0200 Subject: [PATCH 12/30] Regenerate gemspec for version 0.0.5 --- semlogger.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/semlogger.gemspec b/semlogger.gemspec index 66d4b25..fe4d404 100644 --- a/semlogger.gemspec +++ b/semlogger.gemspec @@ -5,7 +5,7 @@ Gem::Specification.new do |s| s.name = %q{semlogger} - s.version = "0.0.4" + s.version = "0.0.5" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Denis Knauf"] From 6c9b038de0c8797d9f1aca1ae8c8c72f277de391 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 15 Oct 2012 16:08:35 +0200 Subject: [PATCH 13/30] tagged: expects not an array anymore. list your tags naturaly: tagged(:a,:b). CustomType: attr logger and severity-methods added for simplier custom loglines: logger.custom( :conn, ip, port).info --- lib/semlogger.rb | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/lib/semlogger.rb b/lib/semlogger.rb index c74df04..678e227 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -28,6 +28,8 @@ end class Semlogger < ::Logger class CustomType + attr_accessor :logger + def initialize name, *obj @name, @obj = name.to_s.to_sym, obj end @@ -35,19 +37,26 @@ class Semlogger < ::Logger def to_semlogger [@name] + @obj end + + def add severity, progname = nil, &block + @logger.add severity, self, progname = nil, &block + end + ::Semlogger::Severity.constants.each do |severity| + module_eval "def #{severity.downcase}( *a, &e) add #{::Semlogger::Severity.const_get severity}, *a, &e end", __FILE__, __LINE__ + end end attr_accessor :logdev, :level, :progname class < Date: Mon, 15 Oct 2012 16:15:30 +0200 Subject: [PATCH 14/30] v0.0.6 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index bbdeab6..1750564 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.5 +0.0.6 From 95417dec9791b1f53d2a44a207371009b189d2c1 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 15 Oct 2012 16:15:42 +0200 Subject: [PATCH 15/30] Regenerate gemspec for version 0.0.6 --- semlogger.gemspec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/semlogger.gemspec b/semlogger.gemspec index fe4d404..d30b2b6 100644 --- a/semlogger.gemspec +++ b/semlogger.gemspec @@ -5,11 +5,11 @@ Gem::Specification.new do |s| s.name = %q{semlogger} - s.version = "0.0.5" + s.version = "0.0.6" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Denis Knauf"] - s.date = %q{2012-09-17} + s.date = %q{2012-10-15} s.description = %q{(Semi-)Structured Logger for Ruby (and Rails)} s.email = ["Denis.Knauf@gmail.com"] s.extra_rdoc_files = [ From 4e803a26e74b4bb3e2e8fff7f6428e82f05af851 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Wed, 17 Oct 2012 23:14:09 +0200 Subject: [PATCH 16/30] Semlogger::Base for types added. --- lib/semlogger.rb | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/lib/semlogger.rb b/lib/semlogger.rb index 678e227..79405d2 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -27,9 +27,19 @@ end end class Semlogger < ::Logger - class CustomType + class Base attr_accessor :logger + def add severity, progname = nil, &block + @logger.add severity, self, progname = nil, &block + end + + ::Semlogger::Severity.constants.each do |severity| + module_eval "def #{severity.downcase}( *a, &e) add #{::Semlogger::Severity.const_get severity}, *a, &e end", __FILE__, __LINE__ + end + end + + class CustomType < Base def initialize name, *obj @name, @obj = name.to_s.to_sym, obj end @@ -37,13 +47,6 @@ class Semlogger < ::Logger def to_semlogger [@name] + @obj end - - def add severity, progname = nil, &block - @logger.add severity, self, progname = nil, &block - end - ::Semlogger::Severity.constants.each do |severity| - module_eval "def #{severity.downcase}( *a, &e) add #{::Semlogger::Severity.const_get severity}, *a, &e end", __FILE__, __LINE__ - end end attr_accessor :logdev, :level, :progname From 57896e3145f65c310917ec18d7f44382df399be9 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Wed, 17 Oct 2012 23:14:58 +0200 Subject: [PATCH 17/30] v0.0.7 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 1750564..5a5831a 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.6 +0.0.7 From e9cba75802c57b3675cedb8108c76a68d66453c7 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Wed, 17 Oct 2012 23:15:12 +0200 Subject: [PATCH 18/30] Regenerate gemspec for version 0.0.7 --- semlogger.gemspec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/semlogger.gemspec b/semlogger.gemspec index d30b2b6..4d4d3f7 100644 --- a/semlogger.gemspec +++ b/semlogger.gemspec @@ -5,11 +5,11 @@ Gem::Specification.new do |s| s.name = %q{semlogger} - s.version = "0.0.6" + s.version = "0.0.7" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Denis Knauf"] - s.date = %q{2012-10-15} + s.date = %q{2012-10-17} s.description = %q{(Semi-)Structured Logger for Ruby (and Rails)} s.email = ["Denis.Knauf@gmail.com"] s.extra_rdoc_files = [ From 1108a9331c9050826bb4e5aa2a8a92cf28227c81 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Thu, 18 Oct 2012 19:34:04 +0200 Subject: [PATCH 19/30] lesser deps to Rails (or no deps) --- lib/semlogger.rb | 41 ++++++++++++++++++++++++++++------------- lib/semlogger/writer.rb | 6 +++++- 2 files changed, 33 insertions(+), 14 deletions(-) diff --git a/lib/semlogger.rb b/lib/semlogger.rb index 79405d2..b14c609 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -2,7 +2,10 @@ require 'json' class Object def to_semlogger - [self.class.name.to_sym, self.respond_to?( :serializable_hash) ? self.serializable_hash : self ] + [ + self.class.name.to_sym, + self.respond_to?( :serializable_hash) ? self.serializable_hash : self + ] end end @@ -28,14 +31,25 @@ end class Semlogger < ::Logger class Base + class < Date: Fri, 19 Oct 2012 11:18:20 +0200 Subject: [PATCH 20/30] To use Semlogger::Rack, require "semlogger/rack". It will not be required by default anymore. --- lib/semlogger.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/semlogger.rb b/lib/semlogger.rb index b14c609..fbf7d45 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -151,7 +151,6 @@ end require 'semlogger/rotate' require 'semlogger/multiplex' -require 'semlogger/rack' require 'semlogger/filter' require 'semlogger/writer' From e04b61dd4a17d43a3124d6dba11a71f5b8a22806 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Fri, 19 Oct 2012 11:32:29 +0200 Subject: [PATCH 21/30] Semlogger.new_rails_logger(config) can be used in config/environment.rb for initialize Semlogger for Rails. Different behaviour for different environments. --- lib/semlogger.rb | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/lib/semlogger.rb b/lib/semlogger.rb index fbf7d45..a710827 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -66,6 +66,25 @@ class Semlogger < ::Logger attr_accessor :logdev, :level, :progname class < Date: Fri, 19 Oct 2012 11:38:12 +0200 Subject: [PATCH 22/30] ... fixes --- lib/semlogger.rb | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/semlogger.rb b/lib/semlogger.rb index a710827..81980c3 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -69,17 +69,17 @@ class Semlogger < ::Logger def new_rails_logger config require 'semlogger/rack' - logdev = ::Rails.root.join( 'log', "#{::Rails.env.to_s.gsub('%', '%%')}.%Y-%m-%d.%$.log") + logdev = ::Rails.root.join( 'log', "#{::Rails.env.to_s.gsub('%', '%%')}.%Y-%m-%d.%$.log").to_s logger = nil if Rails.env.production? - logger.new logdev - logger.level = INFO + logger = new logdev + logger.level = Semlogger::INFO elsif Rails.env.development? - logger.new Semlogger::Multiplex.new( Semlogger::FInfo.new( Semlogger::Printer.new), Semlogger::Writer.new( logdev)) - logger.level = DEBUG + logger = new Semlogger::Multiplex.new( Semlogger::FInfo.new( Semlogger::Printer.new), Semlogger::Writer.new( logdev)) + logger.level = Semlogger::DEBUG else - logger.new logdev - logger.level = DEBUG + logger = new logdev + logger.level = Semlogger::DEBUG end config.middleware.swap Rails::Rack::Logger, Semlogger::Rack, [], {reqid: :uuid} config.logger = logger From 3874aa0e4370910234e72b0ed1fa8f1b41c5f789 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Fri, 19 Oct 2012 11:38:57 +0200 Subject: [PATCH 23/30] v0.0.8 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 5a5831a..d169b2f 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.7 +0.0.8 From fd8860766b7ec1ef0809ed71f858ff5c621ca944 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Fri, 19 Oct 2012 11:39:07 +0200 Subject: [PATCH 24/30] Regenerate gemspec for version 0.0.8 --- semlogger.gemspec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/semlogger.gemspec b/semlogger.gemspec index 4d4d3f7..61adc52 100644 --- a/semlogger.gemspec +++ b/semlogger.gemspec @@ -5,11 +5,11 @@ Gem::Specification.new do |s| s.name = %q{semlogger} - s.version = "0.0.7" + s.version = "0.0.8" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Denis Knauf"] - s.date = %q{2012-10-17} + s.date = %q{2012-10-19} s.description = %q{(Semi-)Structured Logger for Ruby (and Rails)} s.email = ["Denis.Knauf@gmail.com"] s.extra_rdoc_files = [ From 26853e31e23cd6c9b27d7095d66699e06a151f36 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 19 Nov 2012 17:07:39 +0100 Subject: [PATCH 25/30] #log_level added, rack-logger 3.2.9 -compatible --- lib/semlogger.rb | 9 ++++++--- lib/semlogger/rack.rb | 5 ++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/lib/semlogger.rb b/lib/semlogger.rb index 81980c3..a4a071d 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -64,6 +64,11 @@ class Semlogger < ::Logger end attr_accessor :logdev, :level, :progname + + # some libs use #log_level + def log_level=( level) @level = level end + def log_level() @level end + class < Date: Mon, 19 Nov 2012 17:08:00 +0100 Subject: [PATCH 26/30] v0.0.9 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index d169b2f..c5d54ec 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.8 +0.0.9 From 595f4ac6f1b53339440c9b21cef89e58cfb25e1d Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 19 Nov 2012 17:33:17 +0100 Subject: [PATCH 27/30] rdoc-deprecation fixed --- Rakefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Rakefile b/Rakefile index 68654fb..e43cfd8 100644 --- a/Rakefile +++ b/Rakefile @@ -43,7 +43,7 @@ end #task :default => :test -require 'rake/rdoctask' +require 'rdoc/task' Rake::RDocTask.new do |rdoc| if File.exist? 'VERSION' version = File.read 'VERSION' From 25ff6d52d8ec20aed6cad9ef1d639075caab62ec Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Mon, 19 Nov 2012 17:33:37 +0100 Subject: [PATCH 28/30] Regenerate gemspec for version 0.0.9 --- semlogger.gemspec | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/semlogger.gemspec b/semlogger.gemspec index 61adc52..05da71c 100644 --- a/semlogger.gemspec +++ b/semlogger.gemspec @@ -4,13 +4,13 @@ # -*- encoding: utf-8 -*- Gem::Specification.new do |s| - s.name = %q{semlogger} - s.version = "0.0.8" + s.name = "semlogger" + s.version = "0.0.9" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Denis Knauf"] - s.date = %q{2012-10-19} - s.description = %q{(Semi-)Structured Logger for Ruby (and Rails)} + s.date = "2012-11-19" + s.description = "(Semi-)Structured Logger for Ruby (and Rails)" s.email = ["Denis.Knauf@gmail.com"] s.extra_rdoc_files = [ "LICENSE", @@ -30,13 +30,12 @@ Gem::Specification.new do |s| "lib/semlogger/tailer.rb", "lib/semlogger/writer.rb" ] - s.homepage = %q{http://github.com/DenisKnauf/semlogger} + s.homepage = "http://github.com/DenisKnauf/semlogger" s.require_paths = ["lib"] - s.rubygems_version = %q{1.3.7} - s.summary = %q{(Semi-)Structured Logger} + s.rubygems_version = "1.8.23" + s.summary = "(Semi-)Structured Logger" if s.respond_to? :specification_version then - current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION s.specification_version = 3 if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then From 6d2157caffc406475feed4ef7c8fb0818591a62d Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Wed, 21 Nov 2012 16:11:34 +0100 Subject: [PATCH 29/30] #new_rails_logger: custom logdev-template. Semlogger::Rack: #call will never super anymore. --- VERSION | 2 +- lib/semlogger.rb | 10 ++++++---- lib/semlogger/rack.rb | 31 +++++++++++++++++++++++-------- 3 files changed, 30 insertions(+), 13 deletions(-) diff --git a/VERSION b/VERSION index c5d54ec..7c1886b 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.9 +0.0.10 diff --git a/lib/semlogger.rb b/lib/semlogger.rb index a4a071d..2004a68 100644 --- a/lib/semlogger.rb +++ b/lib/semlogger.rb @@ -72,9 +72,10 @@ class Semlogger < ::Logger class < Date: Wed, 21 Nov 2012 16:11:47 +0100 Subject: [PATCH 30/30] Regenerate gemspec for version 0.0.10 --- semlogger.gemspec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/semlogger.gemspec b/semlogger.gemspec index 05da71c..da01a17 100644 --- a/semlogger.gemspec +++ b/semlogger.gemspec @@ -5,11 +5,11 @@ Gem::Specification.new do |s| s.name = "semlogger" - s.version = "0.0.9" + s.version = "0.0.10" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Denis Knauf"] - s.date = "2012-11-19" + s.date = "2012-11-21" s.description = "(Semi-)Structured Logger for Ruby (and Rails)" s.email = ["Denis.Knauf@gmail.com"] s.extra_rdoc_files = [