simple_cloud_logging 1.1.2 → 1.1.3

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
  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: