logtail 0.1.15 → 0.1.17
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/example-project/Gemfile +1 -1
- data/example-project/Gemfile.lock +3 -3
- data/lib/logtail/log_devices/http.rb +6 -3
- data/lib/logtail/version.rb +1 -1
- data/logtail.gemspec +0 -6
- data/spec/logtail/log_devices/http_spec.rb +12 -9
- metadata +2 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d044ba470b7e68b4da31ecd63bf00d4e35be44cd58ab0af0cb3b3837335692d3
|
4
|
+
data.tar.gz: 58052b27afea62453f35eb9807144554ebc798eec805939b6f5b29a7d7d3156a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aac98143909431c687db15b2b33090f899e044660df8bcd0246b82d3cd62a32c713840189f94e6b9761fbe43953a6cd95e429906a90ba512711efff01fb2e649
|
7
|
+
data.tar.gz: 1cfd8815639f7e1c27483d254a99c2ceedd9884630c4e2fefb3e59f8bb2510166a74f8687038078955679fd55099c6422d4a79baccedd52b461e6af6e8f05de6
|
data/example-project/Gemfile
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
|
-
gem "logtail", "~> 0.1.
|
2
|
+
gem "logtail", "~> 0.1.17"
|
@@ -1,15 +1,15 @@
|
|
1
1
|
GEM
|
2
2
|
remote: https://rubygems.org/
|
3
3
|
specs:
|
4
|
-
logtail (0.1.
|
4
|
+
logtail (0.1.17)
|
5
5
|
msgpack (~> 1.0)
|
6
|
-
msgpack (1.
|
6
|
+
msgpack (1.8.0)
|
7
7
|
|
8
8
|
PLATFORMS
|
9
9
|
ruby
|
10
10
|
|
11
11
|
DEPENDENCIES
|
12
|
-
logtail (~> 0.1.
|
12
|
+
logtail (~> 0.1.17)
|
13
13
|
|
14
14
|
BUNDLED WITH
|
15
15
|
2.1.4
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require "base64"
|
2
2
|
require "msgpack"
|
3
3
|
require "net/https"
|
4
|
+
require "zlib"
|
4
5
|
|
5
6
|
require "logtail/config"
|
6
7
|
require "logtail/log_devices/http/flushable_dropping_sized_queue"
|
@@ -168,7 +169,7 @@ Body: #{@last_resp.body}
|
|
168
169
|
You can enable internal Logtail debug logging with the following:
|
169
170
|
|
170
171
|
Logtail::Config.instance.debug_logger = ::Logger.new(STDOUT)
|
171
|
-
MESSAGE
|
172
|
+
MESSAGE
|
172
173
|
end
|
173
174
|
end
|
174
175
|
|
@@ -179,7 +180,7 @@ Log delivery failed! No request was made.
|
|
179
180
|
You can enable internal debug logging with the following:
|
180
181
|
|
181
182
|
Logtail::Config.instance.debug_logger = ::Logger.new(STDOUT)
|
182
|
-
MESSAGE
|
183
|
+
MESSAGE
|
183
184
|
end
|
184
185
|
|
185
186
|
private
|
@@ -205,8 +206,10 @@ MESSAGE
|
|
205
206
|
req = Net::HTTP::Post.new(path)
|
206
207
|
req['Authorization'] = authorization_payload
|
207
208
|
req['Content-Type'] = CONTENT_TYPE
|
209
|
+
req['Content-Encoding'] = 'deflate'
|
208
210
|
req['User-Agent'] = USER_AGENT
|
209
|
-
|
211
|
+
uncompressed = msgs.map { |msg| force_utf8_encoding(msg.to_hash) }.to_msgpack
|
212
|
+
req.body = Zlib::Deflate.deflate(uncompressed, Zlib::BEST_SPEED)
|
210
213
|
req
|
211
214
|
end
|
212
215
|
|
data/lib/logtail/version.rb
CHANGED
data/logtail.gemspec
CHANGED
@@ -34,10 +34,4 @@ Gem::Specification.new do |spec|
|
|
34
34
|
spec.add_development_dependency('rspec-its', '>= 0')
|
35
35
|
spec.add_development_dependency('timecop', '>= 0')
|
36
36
|
spec.add_development_dependency('webmock', '~> 2.3')
|
37
|
-
|
38
|
-
if RUBY_PLATFORM == "java"
|
39
|
-
spec.add_development_dependency('activerecord-jdbcsqlite3-adapter', '>= 0')
|
40
|
-
else
|
41
|
-
spec.add_development_dependency('sqlite3', '>= 0')
|
42
|
-
end
|
43
37
|
end
|
@@ -102,7 +102,8 @@ describe Logtail::LogDevices::HTTP do
|
|
102
102
|
request_queue = http.instance_variable_get(:@request_queue)
|
103
103
|
request_attempt = request_queue.deq
|
104
104
|
expect(request_attempt.request).to be_kind_of(Net::HTTP::Post)
|
105
|
-
|
105
|
+
decompressed_body = Zlib::Inflate.inflate(request_attempt.request.body)
|
106
|
+
expect(decompressed_body).to start_with("\x92\x84\xA5level\xA4INFO\xA2dt\xBB2016-09-01T12:00:00.000000Z\xA7message\xB2test log message 1".force_encoding("ASCII-8BIT"))
|
106
107
|
|
107
108
|
message_queue = http.instance_variable_get(:@msg_queue)
|
108
109
|
expect(message_queue.size).to eq(0)
|
@@ -126,14 +127,16 @@ describe Logtail::LogDevices::HTTP do
|
|
126
127
|
|
127
128
|
it "should deliver requests on an interval" do
|
128
129
|
stub = stub_request(:post, "https://in.logs.betterstack.com/").
|
129
|
-
with
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
130
|
+
with do |request|
|
131
|
+
decompressed_body = Zlib::Inflate.inflate(request.body)
|
132
|
+
expect(decompressed_body).to start_with("\x92\x84\xA5level\xA4INFO\xA2dt\xBB2016-09-01T12:00:00.000000Z\xA7message\xB2test log message 1".force_encoding("ASCII-8BIT"))
|
133
|
+
|
134
|
+
expect(request.headers['Authorization']).to eq('Bearer MYKEY')
|
135
|
+
expect(request.headers['Content-Type']).to eq('application/msgpack')
|
136
|
+
expect(request.headers['User-Agent']).to eq("Logtail Ruby/#{Logtail::VERSION} (HTTP)")
|
137
|
+
|
138
|
+
true
|
139
|
+
end.
|
137
140
|
to_return(:status => 200, :body => "", :headers => {})
|
138
141
|
|
139
142
|
http = described_class.new("MYKEY", flush_interval: 0.1)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logtail
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Better Stack
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-03-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: msgpack
|
@@ -122,20 +122,6 @@ dependencies:
|
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '2.3'
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: sqlite3
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - ">="
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: '0'
|
132
|
-
type: :development
|
133
|
-
prerelease: false
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - ">="
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: '0'
|
139
125
|
description:
|
140
126
|
email:
|
141
127
|
- hello@betterstack.com
|