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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6576745c59d3a1051e33d2c80c72cb085657d1ac5d4ffdc3eddd25d453eb7ce0
4
- data.tar.gz: dabb146bd9c0904bed8213745d027fc87844314fe792c591eacb917c6be66cd9
3
+ metadata.gz: d044ba470b7e68b4da31ecd63bf00d4e35be44cd58ab0af0cb3b3837335692d3
4
+ data.tar.gz: 58052b27afea62453f35eb9807144554ebc798eec805939b6f5b29a7d7d3156a
5
5
  SHA512:
6
- metadata.gz: 53ca720088be23dc6896413709c24d669afb1bf62297b6366467b4a36e912c153403ad8a38ab0edf134932c84893bc5bd5a02c76bc2b7a52e468b731474c89ed
7
- data.tar.gz: ed3d8f6af7c41eee437253d6b510d76dd521c3b747791a7ef5049b59b47924da838e1e05395c4c8186e809119de4d6edaf0d0debde18652716f273933f9e97b7
6
+ metadata.gz: aac98143909431c687db15b2b33090f899e044660df8bcd0246b82d3cd62a32c713840189f94e6b9761fbe43953a6cd95e429906a90ba512711efff01fb2e649
7
+ data.tar.gz: 1cfd8815639f7e1c27483d254a99c2ceedd9884630c4e2fefb3e59f8bb2510166a74f8687038078955679fd55099c6422d4a79baccedd52b461e6af6e8f05de6
@@ -1,2 +1,2 @@
1
1
  source 'https://rubygems.org'
2
- gem "logtail", "~> 0.1.15"
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.15)
4
+ logtail (0.1.17)
5
5
  msgpack (~> 1.0)
6
- msgpack (1.7.2)
6
+ msgpack (1.8.0)
7
7
 
8
8
  PLATFORMS
9
9
  ruby
10
10
 
11
11
  DEPENDENCIES
12
- logtail (~> 0.1.15)
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
- req.body = msgs.map { |msg| force_utf8_encoding(msg.to_hash) }.to_msgpack
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
 
@@ -1,3 +1,3 @@
1
1
  module Logtail
2
- VERSION = "0.1.15"
2
+ VERSION = "0.1.17"
3
3
  end
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
- expect(request_attempt.request.body).to start_with("\x92\x84\xA5level\xA4INFO\xA2dt\xBB2016-09-01T12:00:00.000000Z\xA7message\xB2test log message 1".force_encoding("ASCII-8BIT"))
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
- :body => start_with("\x92\x84\xA5level\xA4INFO\xA2dt\xBB2016-09-01T12:00:00.000000Z\xA7message\xB2test log message 1".force_encoding("ASCII-8BIT")),
131
- :headers => {
132
- 'Authorization' => 'Bearer MYKEY',
133
- 'Content-Type' => 'application/msgpack',
134
- 'User-Agent' => "Logtail Ruby/#{Logtail::VERSION} (HTTP)"
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.15
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-02-11 00:00:00.000000000 Z
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