trifle-logger 0.0.2 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ec21c65044918d6dd00c78de8fccadc712ae8347e179c4b210db89b01e0796e7
4
- data.tar.gz: 043b612ac2dcf1fb49ac2e189b48e6633d8a3c0f64fd33f07115195431003e00
3
+ metadata.gz: 9a70cfb4b0863b2ac9fff7a44addd56264090c463ba53504cbcb2534ac74c09e
4
+ data.tar.gz: 759fb8c95b1df65a8571290809e9c6ffdd23bd6f835d722613a87e8da3900402
5
5
  SHA512:
6
- metadata.gz: e6869a6b6a7ba8c7d9b4d8d00b53093eb076accc3b02d3998c0911dc69f5613ba793ec21381feeea097be10a15a4990ccc7356ca0852bc2c52aadc18e5a3252e
7
- data.tar.gz: 9fa389f4e4f4693c6fab7faba0acf65f328a2bd26c159371fa2433f0049b45ab2bc40bab17e283b9195adf540ae5d2b4e0a08692da21b81b3b95c7e7ccd26513
6
+ metadata.gz: 7fd33b88c7a6c4ba9b87802af9eddbbe9884bef360d2b5c0a173b4ae3e830a679197adbea94e12ca0b6984e05949d745bf4b155db04ec1a4324cb6bdd8468aa7
7
+ data.tar.gz: 40e67bc2924dc8ebc424cc54415970683b4edd38d73eb373f97d4f9854fd3febeb75399b17f8d1f920dd062c0525506213568e8ec9a5beaabcf57445d80c1882
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- trifle-logger (0.0.2)
4
+ trifle-logger (0.1.4)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -31,8 +31,25 @@ Or install it yourself as:
31
31
 
32
32
  ## Usage
33
33
 
34
- TODO: Write usage instructions here
34
+ It saves you from reading through your standard logger
35
+
36
+ ```ruby
37
+ Trifle::Logger.trace('This is important output')
38
+ now = Trifle::Logger.trace('And it\'s important to know it happened at') do
39
+ Time.now
40
+ end
41
+ ```
42
+
43
+ To being able to say what happened on 25th January 2021.
44
+
45
+ ```ruby
46
+ [
47
+ {at: 2021-01-25 00:00:00 +0100, message: 'This is important output', state: :success, head: false, meta: false}
48
+ {at: 2021-01-25 00:00:00 +0100, message: 'And it\'s important to know it happened ', state: :success, head: false, meta: false}
49
+ {at: 2021-01-25 00:00:00 +0100, message: '=> 2021-01-25 00:00:00 +0100', state: :success, head: false, meta: true}
50
+ ]
51
+ ```
35
52
 
36
53
  ## Contributing
37
54
 
38
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/trifle-logger.
55
+ Bug reports and pull requests are welcome on GitHub at https://github.com/trifle-io/trifle-logger.
data/lib/trifle/logger.rb CHANGED
@@ -45,10 +45,28 @@ module Trifle
45
45
  tracer.tag(tag)
46
46
  end
47
47
 
48
+ def self.artifact(name, path)
49
+ return unless tracer
50
+
51
+ tracer.artifact(name, path)
52
+ end
53
+
48
54
  def self.fail!
49
55
  return unless tracer
50
56
 
51
57
  tracer.fail!
52
58
  end
59
+
60
+ def self.warn!
61
+ return unless tracer
62
+
63
+ tracer.warn!
64
+ end
65
+
66
+ def self.ignore!
67
+ return unless tracer
68
+
69
+ tracer.ignore!
70
+ end
53
71
  end
54
72
  end
@@ -4,14 +4,16 @@ module Trifle
4
4
  module Logger
5
5
  module Tracer
6
6
  class Hash
7
- attr_accessor :key, :meta, :data, :tags, :state
7
+ attr_accessor :key, :meta, :data, :tags, :artifacts, :state, :ignore
8
8
 
9
9
  def initialize(key:, meta: nil)
10
10
  @key = key
11
11
  @meta = meta
12
12
  @data = []
13
13
  @tags = []
14
+ @artifacts = []
14
15
  @state = :success
16
+ @ignore = false
15
17
  @result_prefix = '=> '
16
18
 
17
19
  trace("Trifle::Trace has been initialized for #{key}")
@@ -38,14 +40,14 @@ module Trifle
38
40
  def dump_message(message, head:, state:)
39
41
  @data << {
40
42
  at: now, message: message,
41
- state: state, head: head, meta: false
43
+ state: state, head: head, meta: false, media: false
42
44
  }
43
45
  end
44
46
 
45
47
  def dump_result(result)
46
48
  @data << {
47
49
  at: now, message: "#{@result_prefix}#{result.inspect}",
48
- state: :success, head: false, meta: true
50
+ state: :success, head: false, meta: true, media: false
49
51
  }
50
52
  end
51
53
 
@@ -57,16 +59,32 @@ module Trifle
57
59
  @tags << tag
58
60
  end
59
61
 
62
+ def artifact(name, path)
63
+ @data << {
64
+ at: now, message: name,
65
+ state: :success, head: false, meta: false, media: true
66
+ }
67
+ @artifacts << path
68
+ end
69
+
60
70
  def fail!
61
71
  @state = :error
62
72
  end
63
73
 
74
+ def warn!
75
+ @state = :warning
76
+ end
77
+
64
78
  def success?
65
79
  @state == :success
66
80
  end
67
81
 
82
+ def ignore!
83
+ @ignore = true
84
+ end
85
+
68
86
  def wrapup
69
- Trifle::Logger.default.on_wrapup(self)
87
+ Trifle::Logger.default.on_wrapup(self) unless @ignore
70
88
  end
71
89
  end
72
90
  end
@@ -8,10 +8,16 @@ module Trifle
8
8
  yield if block_given?
9
9
  end
10
10
 
11
- def tag(_resource); end
11
+ def tag(_tag); end
12
+
13
+ def artifact(_name, _path); end
12
14
 
13
15
  def fail!; end
14
16
 
17
+ def warn!; end
18
+
19
+ def ignore!; end
20
+
15
21
  def wrapup; end
16
22
  end
17
23
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Trifle
4
4
  module Logger
5
- VERSION = '0.0.2'
5
+ VERSION = '0.1.4'
6
6
  end
7
7
  end
@@ -6,11 +6,10 @@ Gem::Specification.new do |spec|
6
6
  spec.authors = ["Jozef Vaclavik"]
7
7
  spec.email = ["jozef@hey.com"]
8
8
 
9
- spec.summary = 'Simple logger backed by Redis, Postgres, MongoDB, '\
10
- 'or whatever'
9
+ spec.summary = 'Simple logger backed by Hash'
11
10
  spec.description = 'Trifle::Logger is a way too simple timeline logger '\
12
11
  'that helps you track custom outputs.'
13
- spec.homepage = "https://trifle.io"
12
+ spec.homepage = 'https://trifle.io'
14
13
  spec.required_ruby_version = Gem::Requirement.new(">= 2.6")
15
14
 
16
15
  spec.metadata["homepage_uri"] = spec.homepage
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trifle-logger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jozef Vaclavik
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-02-08 00:00:00.000000000 Z
11
+ date: 2021-05-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -135,5 +135,5 @@ requirements: []
135
135
  rubygems_version: 3.2.3
136
136
  signing_key:
137
137
  specification_version: 4
138
- summary: Simple logger backed by Redis, Postgres, MongoDB, or whatever
138
+ summary: Simple logger backed by Hash
139
139
  test_files: []