simple_cloud_logging 1.1.2 → 1.1.3

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: 58e8b613be3567123d3bef3e84a9ed8417b704cc
4
- data.tar.gz: 431139a9c844fc840570e8fcbd192efb55671203
3
+ metadata.gz: 05cd8b9fc53224e8eff70695f4b8ce927fb083c6
4
+ data.tar.gz: 05ea1e1f03477f539e67326946c416a1a9dc02c2
5
5
  SHA512:
6
- metadata.gz: 6636a5dc9468374a30311d6e166775743fc5b9080e6fc86f3de7ee8aaf52b4fb54ba4bd73cd17b947acfbbbbb977472988a929a3ccd5d8f69c2f1551c47000aa
7
- data.tar.gz: 01d40c3424f93c58065ed6d6e7a92f822f7777963bfe40cbf96a8a043c6410f9ee67654854aa072952ce732c78ede05541d4571b575af8ce3662b22b2fd6c203
6
+ metadata.gz: ca765cd96a2ccafecda1674c3d49dcebd433f399717c1a644340a34d457f6a745c4c39e829977f97b8c1ea0d955603a01e3009a40912db3069e8932c54cc73e1
7
+ data.tar.gz: bf2c36de80a4c6bed32a9a8b77006ea09680567bfdd9e42c53120b76f466299b3e6bedd96fb632d044ee301986f22bca7db8c42174a8a2994239b4d888b8855b
@@ -0,0 +1,14 @@
1
+ require_relative '../lib/simple_cloud_logging'
2
+
3
+ logger = BlackStack::LocalLogger.new('./example01.log')
4
+
5
+ logger.logs("Declare variable... ")
6
+ @n = 5
7
+ logger.done
8
+
9
+ logger.logs("Check if #{@n.to_s}>5... ")
10
+ if @n>5
11
+ logger.yes
12
+ else
13
+ logger.no
14
+ end
@@ -0,0 +1,18 @@
1
+ require_relative '../lib/simple_cloud_logging'
2
+
3
+ logger = BlackStack::LocalLogger.new('./example02.log')
4
+
5
+ logger.logs("Declare array of numbers... ")
6
+ @a = [1,2,3,4,5,6,7,8,9,10]
7
+ logger.done
8
+
9
+ logger.logs("Process array elements... ")
10
+ @a.each { |n|
11
+ logger.logs("Check if n>5... ")
12
+ if n>5
13
+ logger.yes
14
+ else
15
+ logger.no
16
+ end
17
+ }
18
+ logger.done
@@ -0,0 +1,22 @@
1
+ require_relative '../lib/simple_cloud_logging'
2
+
3
+ logger = BlackStack::LocalLogger.new('./example03.log')
4
+
5
+ logger.logs("Declare array of array of numbers... ")
6
+ @a = [[1,2,3],[4,5,6],[7,8,9,10]]
7
+ logger.done
8
+
9
+ logger.logs("Process array of array elements... ")
10
+ @a.each { |b|
11
+ logger.logs("Process array of numbers... ")
12
+ b.each { |n|
13
+ logger.logs("Check if #{n.to_s}>5... ")
14
+ if n>5
15
+ logger.yes
16
+ else
17
+ logger.no
18
+ end
19
+ }
20
+ logger.done
21
+ }
22
+ logger.done
@@ -0,0 +1,27 @@
1
+ require_relative '../lib/simple_cloud_logging'
2
+
3
+ logger = BlackStack::RemoteLogger.new(
4
+ './example04.log',
5
+ 'https://127.0.0.1',
6
+ 443,
7
+ 'E20CBAE0-A4D4-4161-8812-6D9FE67A2E47'
8
+ )
9
+
10
+ logger.logs("Declare array of array of numbers... ")
11
+ @a = [[1,2,3],[4,5,6],[7,8,9,10]]
12
+ logger.done
13
+
14
+ logger.logs("Process array of array elements... ")
15
+ @a.each { |b|
16
+ logger.logs("Process array of numbers... ")
17
+ b.each { |n|
18
+ logger.logs("Check if n>5... ")
19
+ if n>5
20
+ logger.yes
21
+ else
22
+ logger.no
23
+ end
24
+ }
25
+ logger.done
26
+ }
27
+ logger.done
data/lib/baselogger.rb ADDED
@@ -0,0 +1,45 @@
1
+ module BlackStack
2
+ class BaseLogger
3
+ attr_accessor :filename, :nest_level, :number_of_lines_in_current_level, :current_nest_level
4
+
5
+ def initialize(the_filename)
6
+ self.filename = the_filename
7
+ self.reset()
8
+ end
9
+
10
+ def reset()
11
+ self.nest_level = 0
12
+ self.current_nest_level = 0
13
+ self.number_of_lines_in_current_level = 0
14
+ end
15
+
16
+ def log(s)
17
+ raise "This is an abstract method."
18
+ end
19
+
20
+ def logs(s)
21
+ raise "This is an abstract method."
22
+ end
23
+
24
+ def logf(s)
25
+ raise "This is an abstract method."
26
+ end
27
+
28
+ def done()
29
+ self.logf("done")
30
+ end
31
+
32
+ def error(e=nil)
33
+ self.logf("error") if e.nil?
34
+ self.logf("error:#{e.to_s}.") if !e.nil?
35
+ end
36
+
37
+ def yes()
38
+ self.logf("yes")
39
+ end
40
+
41
+ def no()
42
+ self.logf("no")
43
+ end
44
+ end # class BaseLogger
45
+ end # module BlackStack
@@ -0,0 +1,65 @@
1
+ module BlackStack
2
+ require_relative './baselogger'
3
+ class LocalLogger < BlackStack::BaseLogger
4
+ def log(s)
5
+ ltime = Time.now.strftime("%Y%m%d%H%M%S").to_s
6
+ ltext = ltime + ":" + s + "\r\n"
7
+ File.open(self.filename, 'a') { |file| file.write(ltext) }
8
+ print ltext
9
+ end
10
+
11
+ #
12
+ def logs(s)
13
+ self.nest_level += 1
14
+ self.number_of_lines_in_current_level = 0
15
+
16
+ if self.current_nest_level != self.nest_level
17
+ ltext = "\r\n"
18
+ print ltext
19
+ File.open(self.filename, 'a') { |file| file.write(ltext) }
20
+ end
21
+
22
+ i=1
23
+ while (i<self.nest_level)
24
+ ltext = " > "
25
+ print ltext
26
+ File.open(self.filename, 'a') { |file| file.write(ltext) }
27
+ i+=1
28
+ end
29
+
30
+ ltext = s
31
+ if self.nest_level==1
32
+ ltime = Time.now.strftime("%Y%m%d%H%M%S").to_s
33
+ ltext = ltime + ":" + s
34
+ end
35
+
36
+ #File.open(self.filename, 'a') { |file| file.write(ltext) }
37
+ print ltext
38
+ File.open(self.filename, 'a') { |file| file.write(ltext) }
39
+
40
+ #
41
+ self.current_nest_level = self.nest_level
42
+ end # def logs
43
+
44
+ #
45
+ def logf(s)
46
+ if self.number_of_lines_in_current_level > 0
47
+ i=1
48
+ while (i<self.nest_level)
49
+ ltext = " > "
50
+ print ltext
51
+ File.open(self.filename, 'a') { |file| file.write(ltext) }
52
+ i+=1
53
+ end
54
+ end # if self.number_of_lines_in_current_level == 0
55
+
56
+ self.nest_level -= 1
57
+ self.number_of_lines_in_current_level += 1
58
+
59
+ ltext = s + "\r\n"
60
+ print ltext
61
+ File.open(self.filename, 'a') { |file| file.write(ltext) }
62
+ end # def logf
63
+
64
+ end # class LocalLogger
65
+ end # module BlackStack
@@ -0,0 +1,50 @@
1
+ module BlackStack
2
+ require_relative './baselogger'
3
+ class RemoteLogger < BlackStack::BaseLogger
4
+ attr_accessor :api_url, :api_port, :api_key
5
+
6
+ def initialize(the_filename, the_api_url, the_api_port, the_api_key)
7
+ super(the_filename)
8
+ self.api_url = the_api_url
9
+ self.api_port = the_api_port
10
+ self.api_key = the_api_key
11
+ end
12
+
13
+ def log(s)
14
+ nTries = 0
15
+ bSuccess = false
16
+ parsed = nil
17
+ sError = ""
18
+ while (nTries < 5 && bSuccess == false)
19
+ begin
20
+ nTries = nTries + 1
21
+ uri = URI("#{self.api_url}:#{self.api_port}/log.json")
22
+ res = CallPOST(uri,
23
+ {'uid' => normalizeGuid(uid),}
24
+ )
25
+ parsed = JSON.parse(res.body)
26
+ if (parsed['status']=='success')
27
+ bSuccess = true
28
+ else
29
+ sError = parsed['status']
30
+ end
31
+ rescue Errno::ECONNREFUSED => e
32
+ sError = "Errno::ECONNREFUSED:" + e.to_s
33
+ rescue => e2
34
+ sError = "Exception" + e2.to_s
35
+ end
36
+ end # while
37
+
38
+ if (bSuccess==false)
39
+ raise "#{sError}"
40
+ end
41
+ end
42
+
43
+ def logs(s)
44
+ end
45
+
46
+ def logf(s)
47
+ end
48
+
49
+ end
50
+ end # module BlackStack
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_cloud_logging
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 1.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Leandro Daniel Sardi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-11-06 00:00:00.000000000 Z
11
+ date: 2019-11-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: blackstack_commons
@@ -16,26 +16,33 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.0.6
19
+ version: 0.0.10
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 0.0.6
22
+ version: 0.0.10
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: 0.0.6
29
+ version: 0.0.10
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 0.0.6
32
+ version: 0.0.10
33
33
  description: 'Find documentation here: https://github.com/leandrosardi/simple_cloud_logging.'
34
34
  email: leandro.sardi@expandedventure.com
35
35
  executables: []
36
36
  extensions: []
37
37
  extra_rdoc_files: []
38
38
  files:
39
+ - examples/example01.rb
40
+ - examples/example02.rb
41
+ - examples/example03.rb
42
+ - examples/example04.rb
43
+ - lib/baselogger.rb
44
+ - lib/locallogger.rb
45
+ - lib/remotelogger.rb
39
46
  - lib/simple_cloud_logging.rb
40
47
  homepage: https://rubygems.org/gems/simple_cloud_logging
41
48
  licenses: