logdna 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 447bf5da9312c5a9be6739a3fcc818cd8f847f38
4
- data.tar.gz: 7f9745d98cb994409e5c769d239254e01ce2d27f
3
+ metadata.gz: ffae5e4ece7f38e30873cd4c0c2c3ab09a20dc4d
4
+ data.tar.gz: a1c0016a4717d6dce43ae7dbd6ec86dabbe7a2d9
5
5
  SHA512:
6
- metadata.gz: aa969ca39b5e67c94882ba20b954c6abdca39600de8a0868c53be10e62bd414442f856d9420b334ff3cf212fca92fe2a244f2ada3b98f373fd73342807a43be0
7
- data.tar.gz: 1736031941fec54f870e82708f6312acb0a4fe09cef45f6a10ce0f7c2fdfe07606f9c5b97652fb160711e3cc54ac9c6d5da682ade9b31f38970c5b6b043161fe
6
+ metadata.gz: 042d7396a605143d73bf42ed63ca4b8ee2b83b236d5de549eeba5b88c0bb43f7bf5b56172974ff1a51e6bd515f7653f4a49e8c9eda69c53eeb15f978c24faddd
7
+ data.tar.gz: 85f31559649c616406703bee27298cc75c5df975cd5e64a0a348741699f7f2b2f0f211fa3bbeac848b22be9af48862698ff014993037637a6f16a40dd0e29aa4
data/README.md CHANGED
@@ -9,8 +9,8 @@
9
9
  ---
10
10
 
11
11
  * **[Installation](#installation)**
12
+ * **[Quick Setup](#quick-setup)**
12
13
  * **[API](#api)**
13
- * **[Development](#development)**
14
14
  * **[Contributing](#contributing)**
15
15
  * **[License](#license)**
16
16
 
@@ -44,11 +44,12 @@ to set up the logger.
44
44
  Options are optional variables that may contain hostname, app name, mac address, ip address, log level specified.
45
45
 
46
46
  options = {
47
- :hostname => myHostName
48
- :ip => myIpAddress
49
- :mac => myMacAddress
50
- :app => myAppName
47
+ :hostname => myHostName,
48
+ :ip => myIpAddress,
49
+ :mac => myMacAddress,
50
+ :app => myAppName,
51
51
  :level => "INFO" # LOG_LEVELS = ['TRACE', 'DEBUG', 'INFO', 'WARN', 'ERROR', 'FATAL'] or your customized log level
52
+ :env => "PRODUCTION"
52
53
  }
53
54
 
54
55
 
@@ -71,11 +72,12 @@ You can change a particular message's log level.
71
72
 
72
73
  You can also send a metadata with your message by specifying 'meta' field
73
74
 
74
- logger.log('This is a message with metadata', {:meta => {:once => {:first => {"nested1", "nested2"}, "second"}}, :level => "TRACE"})
75
+ logger.log('This is a message with metadata', {:meta => {:once => {:first => "nested1", :another => "nested2"}}, :level => "TRACE"})
75
76
 
76
77
 
77
78
  Hostname and app name cannot be more than 80 characters.
78
79
 
80
+ You can search logs by environment in a form of 'env:staging' or '_env:staging' in logdna search bar.
79
81
 
80
82
 
81
83
  # Important Notes
@@ -84,7 +86,6 @@ Hostname and app name cannot be more than 80 characters.
84
86
  2. This logger is a singleton (do not create mutiple instances of the logger) even though the singleton structure is not strongly enforced.
85
87
 
86
88
 
87
-
88
89
  # API
89
90
 
90
91
  ## Logdna::Ruby.new(ingestion_key, options = {})
@@ -98,6 +99,7 @@ Instantiates a new instance of the class it is called on. ingestion_key is requi
98
99
  |{ :ip => IP address } | Nil |
99
100
  |{ :app => App name } | 'default' |
100
101
  |{ :level => Log level } | 'INFO' |
102
+ |{ :env => STAGING, PRODUCTION .. etc} | Nil |
101
103
  |{ :flushtime => Log flush interval in seconds } | 0.25 seconds |
102
104
  |{ :flushbyte => Log flush upper limit in bytes } | 500000 bytes ~= 0.5 megabytes |
103
105
 
data/lib/logdna/client.rb CHANGED
@@ -17,8 +17,9 @@ module Logdna
17
17
  :ip => opts.key?(:ip) ? "&ip=#{opts[:ip]}" : "",
18
18
  :mac => opts.key?(:mac) ? "&mac=#{opts[:mac]}" : "",
19
19
  :app => (opts[:app] ||= "default"),
20
- :level => (opts[:level] ||= "INFO")
21
- }
20
+ :level => (opts[:level] ||= "INFO"),
21
+ :env => (opts[:env])
22
+ }.reject { |k,v| k === :env && v.nil? }
22
23
 
23
24
  begin
24
25
  if (@qs[:hostname].size > Resources::MAX_INPUT_LENGTH || @qs[:app].size > Resources::MAX_INPUT_LENGTH )
@@ -73,16 +74,15 @@ module Logdna
73
74
  rescue Encoding::UndefinedConversionError => e
74
75
  raise e
75
76
  end
76
-
77
77
  unless @semaphore.locked?
78
78
  @currentbytesize += msg.bytesize
79
-
80
79
  @firstbuff.push({
81
80
  :line => msg,
82
81
  :app => @qs[:app],
83
82
  :level => opts[:level] ||= @qs[:level],
84
83
  :timestamp => Time.now.to_i,
85
- :meta => opts[:meta] ||= nil
84
+ :meta => opts[:meta] ||= nil,
85
+ :env => (opts[:env]) ? opts[:env] : (@qs[:env]) ? @qs[:env] : nil
86
86
  }.reject { |k,v| k === :meta && v.nil? })
87
87
  else
88
88
  @secondbytesize += msg.bytesize
@@ -91,7 +91,8 @@ module Logdna
91
91
  :app => @qs[:app],
92
92
  :level => opts[:level] ||= @qs[:level],
93
93
  :timestamp => Time.now.to_i,
94
- :meta => opts[:meta] ||= nil
94
+ :meta => opts[:meta] ||= nil,
95
+ :env => (opts[:env]) ? opts[:env] : (@qs[:env]) ? @qs[:env] : nil
95
96
  }.reject { |k,v| k === :meta && v.nil? })
96
97
  end
97
98
 
@@ -108,7 +109,9 @@ module Logdna
108
109
  @response = Net::HTTP.start(@uri.hostname, @uri.port, :use_ssl => @uri.scheme == 'https') do |http|
109
110
  http.request(@request)
110
111
  end
111
- puts "Result: #{@response.body}"
112
+ unless @firstbuff.empty?
113
+ puts "Result: #{@response.body}"
114
+ end
112
115
  @currentbytesize = @secondbytesize
113
116
  @secondbytesize = 0
114
117
  @firstbuff = []
@@ -15,4 +15,5 @@ module Resources
15
15
  IP_ADDR_CHECK = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/
16
16
  LOGGER_NOT_CREATED = "LOGGER_NOT_CREATED"
17
17
  LOGGER_CREATED = "LOGGER_CREATED"
18
+
18
19
  end
@@ -1,3 +1,3 @@
1
1
  module LogDNA
2
- VERSION = '1.0.1'.freeze
2
+ VERSION = '1.0.2'.freeze
3
3
  end
data/logdna.gemspec CHANGED
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
9
9
  spec.authors = 'Gun Woo Choi'
10
10
  spec.email = 'matt.choi@logdna.com'
11
11
 
12
- spec.summary = 'LogDNA extension to ruby logger'
12
+ spec.summary = 'LogDNA Ruby logger'
13
13
  spec.homepage = 'https://github.com/logdna/ruby'
14
14
  spec.license = 'MIT'
15
15
 
@@ -20,9 +20,8 @@ Gem::Specification.new do |spec|
20
20
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
21
  spec.require_paths = ['lib']
22
22
 
23
- spec.add_runtime_dependency 'concurrent-ruby', '~> 1.0.5'
24
- spec.add_runtime_dependency 'json', '~> 2.0.2'
25
- spec.add_runtime_dependency 'openssl', '~> 2.0.3'
23
+ spec.add_runtime_dependency 'concurrent-ruby', '~> 1.0'
24
+ spec.add_runtime_dependency 'json', '~> 2.0'
26
25
 
27
26
  spec.add_development_dependency 'bundler', '~> 1.13'
28
27
  spec.add_development_dependency 'rake', '~> 10.5'
data/test.rb ADDED
@@ -0,0 +1,42 @@
1
+ require 'require_all'
2
+ require_all 'lib'
3
+
4
+ options = {
5
+ :level => "INFO", # LOG_LEVELS = ['TRACE', 'DEBUG', 'INFO', 'WARN', 'ERROR', 'FATAL'] or your customized log level
6
+ :flushtime => 0.1,
7
+ :env => 'PRODUCTION'
8
+ }
9
+
10
+ options2 = {
11
+ :level => "INFO", # LOG_LEVELS = ['TRACE', 'DEBUG', 'INFO', 'WARN', 'ERROR', 'FATAL'] or your customized log level
12
+ :flushtime => 0.1,
13
+ :env => 'STAGING'
14
+ }
15
+
16
+ options3 = {
17
+ :level => "INFO", # LOG_LEVELS = ['TRACE', 'DEBUG', 'INFO', 'WARN', 'ERROR', 'FATAL'] or your customized log level
18
+ :flushtime => 0.1,
19
+ }
20
+
21
+ options4 = {
22
+ :level => "INFO", # LOG_LEVELS = ['TRACE', 'DEBUG', 'INFO', 'WARN', 'ERROR', 'FATAL'] or your customized log level
23
+ :flushtime => 0.1,
24
+ }
25
+
26
+
27
+
28
+
29
+ logger = Logdna::Ruby.new('your-ingestion-key', options)
30
+ logger.log('1No metadata, production env')
31
+
32
+ logger = Logdna::Ruby.new('your-ingestion-key', options2)
33
+ logger.log('2With metadata, staging env', {:meta => {:once => {:first => "nested1", :another => "nested2"}}, :level => "TRACE"})
34
+
35
+ logger = Logdna::Ruby.new('your-ingestion-key', options3)
36
+ logger.log('3No metadata, development env changed to production env', {:level => "TRACE", :env => "PRODUCTION"})
37
+
38
+ logger = Logdna::Ruby.new('your-ingestion-key', options4)
39
+ logger.log('4No metadata, no env')
40
+
41
+
42
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logdna
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gun Woo Choi
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-07-24 00:00:00.000000000 Z
11
+ date: 2017-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby
@@ -16,42 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.5
19
+ version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.0.5
26
+ version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: json
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 2.0.2
33
+ version: '2.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 2.0.2
41
- - !ruby/object:Gem::Dependency
42
- name: openssl
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: 2.0.3
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: 2.0.3
40
+ version: '2.0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: bundler
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -125,6 +111,7 @@ files:
125
111
  - lib/logdna/resources.rb
126
112
  - lib/logdna/version.rb
127
113
  - logdna.gemspec
114
+ - test.rb
128
115
  homepage: https://github.com/logdna/ruby
129
116
  licenses:
130
117
  - MIT
@@ -148,5 +135,5 @@ rubyforge_project:
148
135
  rubygems_version: 2.6.11
149
136
  signing_key:
150
137
  specification_version: 4
151
- summary: LogDNA extension to ruby logger
138
+ summary: LogDNA Ruby logger
152
139
  test_files: []