sqreen-kit 0.1.1 → 0.2.0
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 +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/sqreen/kit.rb +1 -4
- data/lib/sqreen/kit/configuration.rb +8 -0
- data/lib/sqreen/kit/signals/dto_helper.rb +20 -4
- data/lib/sqreen/kit/signals/signal_attributes.rb +4 -2
- data/lib/sqreen/kit/version.rb +13 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '09939c2b1e179a32121dafa7f96c9e1af87c40369894a8809bdd165aa2412388'
|
4
|
+
data.tar.gz: 59500cef9fd4048141ffca62431661150732575841e5c8a896c85d39c8f66279
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 74ffacce1b772023b8ee9fb460a4569ccd5865f91b4782ec04d0266aba3f4ccf1c8076afb405e752dc3bd82899347e7657f610b9d89ef44675b0f1bfb5d20ef7
|
7
|
+
data.tar.gz: a9a6ad2cd45e96689329bc6091a09015c50b6a55c6271c083f2f4ba47d75bf099fc504194ac26cfbfe4ddb07611e7e1a9081321ad028033b84e9ccecbbc2532b
|
data/CHANGELOG.md
CHANGED
data/lib/sqreen/kit.rb
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
# Copyright (c) 2015 Sqreen. All Rights Reserved.
|
4
4
|
# Please refer to our terms for more information: https://www.sqreen.com/terms.html
|
5
5
|
|
6
|
+
require 'sqreen/kit/version'
|
6
7
|
require 'sqreen/kit/configuration'
|
7
8
|
require 'sqreen/kit/retry_policy'
|
8
9
|
require 'sqreen/kit/http_client'
|
@@ -17,10 +18,6 @@ module Sqreen
|
|
17
18
|
module Kit
|
18
19
|
# Factories using the global configuration
|
19
20
|
class << self
|
20
|
-
def version
|
21
|
-
@version ||= Gem.loaded_specs['sqreen-kit'].version
|
22
|
-
end
|
23
|
-
|
24
21
|
def auth_signals_client
|
25
22
|
@auth_signals_client ||=
|
26
23
|
Signals::AuthSignalsClient.new(
|
@@ -4,6 +4,7 @@
|
|
4
4
|
# Please refer to our terms for more information: https://www.sqreen.com/terms.html
|
5
5
|
|
6
6
|
require 'logger'
|
7
|
+
require 'sqreen/kit/version'
|
7
8
|
|
8
9
|
module Sqreen
|
9
10
|
module Kit
|
@@ -34,6 +35,11 @@ module Sqreen
|
|
34
35
|
:batch_flush_size,
|
35
36
|
:batch_max_size
|
36
37
|
|
38
|
+
# Default value for source in signals taking a generic value
|
39
|
+
# Something like 'sqreen:agent:ruby:1.11.1'
|
40
|
+
# XXX: do not provide default and force user to explicitly set source?
|
41
|
+
attr_accessor :default_source
|
42
|
+
|
37
43
|
# @param [String] url
|
38
44
|
def proxy_url=(url)
|
39
45
|
if url.nil?
|
@@ -64,6 +70,8 @@ module Sqreen
|
|
64
70
|
logger.progname = 'sqreen-kit'
|
65
71
|
|
66
72
|
self.ingestion_url = 'https://ingestion.sqreen.com/'
|
73
|
+
|
74
|
+
self.default_source = "sqreen:kit:#{Sqreen::Kit.version}"
|
67
75
|
end
|
68
76
|
|
69
77
|
set_defaults
|
@@ -14,6 +14,8 @@ module Sqreen
|
|
14
14
|
NilClass, Hash, Array, Numeric, TrueClass, FalseClass
|
15
15
|
].freeze
|
16
16
|
|
17
|
+
RFC_3339_FMT = '%Y-%m-%dT%H:%M:%S.%3N%:z'.freeze
|
18
|
+
|
17
19
|
module ClassMethods
|
18
20
|
# method should have been defined initially in an ancestor
|
19
21
|
def validate_str_attr(attr, regex)
|
@@ -54,8 +56,17 @@ module Sqreen
|
|
54
56
|
@self_mandatory_attrs += args
|
55
57
|
end
|
56
58
|
|
59
|
+
def readonly_attrs(*attrs)
|
60
|
+
attrs.each do |attr|
|
61
|
+
define_method :"#{attr}=" do |value|
|
62
|
+
raise "Attribute #{attr} is read-only" unless public_send(attr).nil?
|
63
|
+
super(value)
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
57
68
|
def self_mandatory_attrs
|
58
|
-
@self_mandatory_attrs
|
69
|
+
@self_mandatory_attrs ||= []
|
59
70
|
end
|
60
71
|
|
61
72
|
def mandatory_attrs
|
@@ -81,11 +92,14 @@ module Sqreen
|
|
81
92
|
end
|
82
93
|
|
83
94
|
define_method attr do
|
84
|
-
|
95
|
+
var = "@#{attr}"
|
96
|
+
return nil unless instance_variable_defined?(var)
|
97
|
+
|
98
|
+
cur_val = instance_variable_get(var)
|
85
99
|
|
86
100
|
return nil if cur_val.nil?
|
87
101
|
return cur_val if cur_val.is_a?(String)
|
88
|
-
cur_val.strftime(
|
102
|
+
cur_val.strftime(RFC_3339_FMT)
|
89
103
|
end
|
90
104
|
end
|
91
105
|
|
@@ -133,7 +147,9 @@ module Sqreen
|
|
133
147
|
end
|
134
148
|
|
135
149
|
def to_json
|
136
|
-
|
150
|
+
return to_h.to_json unless instance_variable_defined?(:@filters)
|
151
|
+
|
152
|
+
res = @filters.reduce(to_h) { |accum, filter| filter[accum] }
|
137
153
|
res.to_json
|
138
154
|
end
|
139
155
|
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# Copyright (c) 2015 Sqreen. All Rights Reserved.
|
2
|
+
# Please refer to our terms for more information: https://www.sqreen.com/terms.html
|
3
|
+
|
4
|
+
# Split to avoid a circular dependency between kit.rb and configuration.rb
|
5
|
+
module Sqreen
|
6
|
+
module Kit
|
7
|
+
class << self
|
8
|
+
def version
|
9
|
+
@version ||= Gem.loaded_specs['sqreen-kit'].version
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sqreen-kit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Loic Nageleisen
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2020-06-
|
12
|
+
date: 2020-06-18 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sqreen-backport
|
@@ -54,6 +54,7 @@ files:
|
|
54
54
|
- lib/sqreen/kit/signals/stack_trace.rb
|
55
55
|
- lib/sqreen/kit/signals/trace.rb
|
56
56
|
- lib/sqreen/kit/string_sanitizer.rb
|
57
|
+
- lib/sqreen/kit/version.rb
|
57
58
|
homepage: https://sqreen.com
|
58
59
|
licenses:
|
59
60
|
- Sqreen
|