uniq_logger 0.1.4 → 0.1.5
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.
- data/Gemfile.lock +1 -1
- data/README.md +61 -2
- data/lib/uniq_logger/base.rb +5 -9
- data/lib/uniq_logger/version.rb +1 -1
- data/spec/lib/uniq_logger_spec.rb +2 -0
- data/uniq_logger-0.1.4.gem +0 -0
- data/uniq_logger.gemspec +1 -1
- metadata +5 -4
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
# UniqLogger
|
2
2
|
|
3
|
-
|
3
|
+
- Add entries to an logfile, only if an uniq id is not already used.
|
4
|
+
- automaticaly generate logfile rotations: new logfile für every day, motnh or year
|
5
|
+
- send your logentries to another server per api using the same gem once as client and as a server
|
6
|
+
- creates an CSV formated file which can be easely opened in e.g. Excel for endusers
|
4
7
|
|
5
8
|
## Installation
|
6
9
|
|
@@ -20,7 +23,63 @@ Or install it yourself as:
|
|
20
23
|
|
21
24
|
## Usage
|
22
25
|
|
23
|
-
|
26
|
+
Create a configuration file config/uniq_logger.yml (view section 'Configuration')
|
27
|
+
|
28
|
+
To create a logentry use:
|
29
|
+
|
30
|
+
```ruby
|
31
|
+
require 'uniq_logger'
|
32
|
+
uniq_logger = UniqLogger.new
|
33
|
+
uniq_logger.create("UniqID", ["data","to","save"] )
|
34
|
+
```
|
35
|
+
|
36
|
+
## Configuration File
|
37
|
+
|
38
|
+
app/config/uniq_logger.yml
|
39
|
+
|
40
|
+
```yml
|
41
|
+
#Use a additional Log-Rotator which generates new logfiles for ['day','month','year'].
|
42
|
+
#Default 'none'
|
43
|
+
log_rotator: "month"
|
44
|
+
|
45
|
+
#If log_rotator is set, this will be the prefix for the file name
|
46
|
+
log_rotator_prefix: "uniq_logger-"
|
47
|
+
|
48
|
+
|
49
|
+
#Use a global LogFile [true,false]. Chech for existin logs only looks in global logfile
|
50
|
+
#Default true
|
51
|
+
global_logger: true
|
52
|
+
|
53
|
+
#Name of the logfile to write to
|
54
|
+
global_log_file_name: "uniq_logger.log"
|
55
|
+
|
56
|
+
|
57
|
+
#if set to true, logentry creation returns 'false' if a logentry already exists with this ID
|
58
|
+
# This is only on global Logfiles possible
|
59
|
+
validates_uniqness_of_id: true
|
60
|
+
|
61
|
+
#If a local Logfile should be created or a ftp Account ['local', 'remote']
|
62
|
+
logfile_destination: "local"
|
63
|
+
|
64
|
+
#Path where Logfiles should be saved
|
65
|
+
path_to_local_logfiles: "../log/"
|
66
|
+
|
67
|
+
#If logfile_destination is set to 'remote' use folloing api credentials
|
68
|
+
remote:
|
69
|
+
auth_token: "xyz123abc"
|
70
|
+
server: "http://www.server.de"
|
71
|
+
endpoint: "/api/v1/logger"
|
72
|
+
url_param_for_id: "id"
|
73
|
+
url_param_for_data: "data"
|
74
|
+
basic_auth:
|
75
|
+
username: ""
|
76
|
+
password: ""
|
77
|
+
|
78
|
+
#CSV Export Settings: Encoding Type (default 'utf8'), Column Separator (default ';')
|
79
|
+
csv:
|
80
|
+
encoding: "UTF8"
|
81
|
+
col_sep: ";"
|
82
|
+
```
|
24
83
|
|
25
84
|
## Contributing
|
26
85
|
|
data/lib/uniq_logger/base.rb
CHANGED
@@ -14,7 +14,7 @@ module UniqLogger
|
|
14
14
|
elsif config["logfile_destination"] == "remote"
|
15
15
|
create_remote_log_entry(uniq_id, data_to_save)
|
16
16
|
else
|
17
|
-
puts "logfile_destination is not set to [local,
|
17
|
+
puts "logfile_destination is not set to [local,remote]"
|
18
18
|
return false
|
19
19
|
end
|
20
20
|
end
|
@@ -27,7 +27,7 @@ module UniqLogger
|
|
27
27
|
logfilename = File.join(config["path_to_local_logfiles"], config["global_log_file_name"])
|
28
28
|
logfile = File.open( File.expand_path(logfilename), "a" )
|
29
29
|
|
30
|
-
if
|
30
|
+
if is_uniq_id_in_log_history?(uniq_id,logfile)
|
31
31
|
return false
|
32
32
|
end
|
33
33
|
|
@@ -49,14 +49,10 @@ module UniqLogger
|
|
49
49
|
end
|
50
50
|
|
51
51
|
|
52
|
-
def
|
52
|
+
def is_uniq_id_in_log_history?(uniq_id,logfile)
|
53
53
|
if config["validates_uniqness_of_id"] == true
|
54
|
-
|
55
|
-
|
56
|
-
#puts data
|
57
|
-
if list_of_ids.include?(uniq_id)
|
58
|
-
return true
|
59
|
-
end
|
54
|
+
regexp_uniq_id = /^#{uniq_id};/
|
55
|
+
return open(logfile).grep(regexp_uniq_id).any?
|
60
56
|
end
|
61
57
|
return false
|
62
58
|
end
|
data/lib/uniq_logger/version.rb
CHANGED
@@ -27,6 +27,8 @@ describe UniqLogger::Base do
|
|
27
27
|
end
|
28
28
|
|
29
29
|
it 'should write a log to a logfile with validation of ID true' do
|
30
|
+
expect(@logger.create("12343", ["Vorname", "12344", "Strasse"])).to eq(true)
|
31
|
+
expect(@logger.create("12344", ["Vorname", "12343", "Strasse"])).to eq(true)
|
30
32
|
expect(@logger.create("12345", ["Vorname", "Nachname", "Strasse"])).to eq(true)
|
31
33
|
expect(@logger.create("12346", ["Vorname2", "Nachname2", "Strasse2"])).to eq(true)
|
32
34
|
expect(@logger.create("12346", ["Vorname3", "Nachname3", "Strasse3"])).to eq(false)
|
Binary file
|
data/uniq_logger.gemspec
CHANGED
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["Marco Metz"]
|
10
10
|
spec.email = ["marco.metz@gmail.com"]
|
11
11
|
spec.summary = %q{checks for existing Logentries and adds new LogEntries}
|
12
|
-
spec.description = %q{Adds
|
12
|
+
spec.description = %q{Adds entries to a logfile, only if they don't already exist. The logfile can be on a remote server}
|
13
13
|
spec.homepage = "https://github.com/ikuseiGmbH/uniq_logger"
|
14
14
|
spec.license = "GNU GENERAL PUBLIC LICENSE"
|
15
15
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: uniq_logger
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-01-
|
12
|
+
date: 2015-01-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -91,8 +91,8 @@ dependencies:
|
|
91
91
|
- - ! '>='
|
92
92
|
- !ruby/object:Gem::Version
|
93
93
|
version: '0'
|
94
|
-
description: Adds
|
95
|
-
on
|
94
|
+
description: Adds entries to a logfile, only if they don't already exist. The logfile
|
95
|
+
can be on a remote server
|
96
96
|
email:
|
97
97
|
- marco.metz@gmail.com
|
98
98
|
executables: []
|
@@ -116,6 +116,7 @@ files:
|
|
116
116
|
- template/uniq_logger.yml
|
117
117
|
- uniq_logger-0.1.1.gem
|
118
118
|
- uniq_logger-0.1.2.gem
|
119
|
+
- uniq_logger-0.1.4.gem
|
119
120
|
- uniq_logger.gemspec
|
120
121
|
homepage: https://github.com/ikuseiGmbH/uniq_logger
|
121
122
|
licenses:
|