appsignal 3.5.0 → 3.5.1

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
  SHA256:
3
- metadata.gz: fc20e180510d89079b968f752fe4378590ef2edc3c881af7390e4eca883829c3
4
- data.tar.gz: e475459d746362fe4a1d66ea260596dd376dd78de5ce0c6192784a61afcaa17b
3
+ metadata.gz: '0869ffe060f0929d46b6ef00ebd1286a31c576363024c5599e823e148925a854'
4
+ data.tar.gz: b3155c076dc8f322907d1c1d6dc49a7a8b03824272f0d7fb878d5b230fa3a25b
5
5
  SHA512:
6
- metadata.gz: e794952ff70e7b8170bb173ee594cfa609a28cc713e04959a3bc97d274e7c547519f54404dfa2a1ac9d71c0ee47cb999bbbc21f19a66e2cef3d39d88f0ac30f7
7
- data.tar.gz: 62c66a4814ee5663d7db3a1c2c1e844e5024c152425998685c12cd48e52fad3d6a63027457c3f599d2e506ca5b924734d1d48ca7c7d2b348ab80d2d831260ec3
6
+ metadata.gz: 3c91d3b288e61360677b070e30295613584a70e1f90835f4e51232b6731d7b682320689c71c96def153c620167d8627738e446ff0c24ceb25cb2905025cdd316
7
+ data.tar.gz: 46b9a9f88c2e8d121ad43f403f41a56712e38f624e75ca899185c76a8244b970bee16637ed59b4b7b0441c0417138a08578db8c0eca3ac1b5e1e65d336b9a499
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # AppSignal for Ruby gem Changelog
2
2
 
3
+ ## 3.5.1
4
+
5
+ ### Fixed
6
+
7
+ - [2e93182b](https://github.com/appsignal/appsignal-ruby/commit/2e93182b6ae83b16fe9885558cd8f0bfce6a9a5f) patch - Fix an error in the diagnose report when reading a file's contents results in an "Invalid seek" error. This could happen when the log path is configured to `/dev/stdout`, which is not supported.
8
+ - [ae0b779b](https://github.com/appsignal/appsignal-ruby/commit/ae0b779b3ec00cc46291bc0373d748d720231e74) patch - Fix logger compatibility with Ruby 3.3
9
+
3
10
  ## 3.5.0
4
11
 
5
12
  ### Added
@@ -71,10 +71,14 @@ module Appsignal
71
71
  :group => Utils.group_for_gid(path_gid)
72
72
  }
73
73
  if info[:type] == "file"
74
- info[:content] = Utils.read_file_content(
75
- path,
76
- BYTES_TO_READ_FOR_FILES
77
- ).split("\n")
74
+ begin
75
+ info[:content] = Utils.read_file_content(
76
+ path,
77
+ BYTES_TO_READ_FOR_FILES
78
+ ).split("\n")
79
+ rescue => error
80
+ info[:read_error] = "#{error.class}: #{error.message}"
81
+ end
78
82
  end
79
83
  end
80
84
  end
@@ -631,6 +631,11 @@ module Appsignal
631
631
  else
632
632
  print_empty_line
633
633
  end
634
+
635
+ return unless path.key?(:read_error)
636
+
637
+ puts " Read error: #{path[:read_error]}"
638
+ print_empty_line
634
639
  end
635
640
 
636
641
  def print_empty_line
@@ -25,6 +25,8 @@ module Appsignal
25
25
  def initialize(group, level: INFO, format: PLAINTEXT)
26
26
  raise TypeError, "group must be a string" unless group.is_a? String
27
27
 
28
+ super(group, :level => level)
29
+
28
30
  @group = group
29
31
  @level = level
30
32
  @format = format
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Appsignal
4
- VERSION = "3.5.0"
4
+ VERSION = "3.5.1"
5
5
  end
@@ -71,5 +71,16 @@ describe Appsignal::CLI::Diagnose::Utils do
71
71
  is_expected.to eq(file_contents)
72
72
  end
73
73
  end
74
+
75
+ context "when reading the file raises an illegal seek error" do
76
+ let(:file_contents) { "line 1\n" }
77
+ before do
78
+ expect(File).to receive(:binread).and_raise(Errno::ESPIPE)
79
+ end
80
+
81
+ it "returns the error as the content" do
82
+ expect { subject }.to raise_error(Errno::ESPIPE)
83
+ end
84
+ end
74
85
  end
75
86
  end
@@ -1424,6 +1424,26 @@ describe Appsignal::CLI::Diagnose, :api_stub => true, :send_report => :yes_cli_i
1424
1424
  )
1425
1425
  end
1426
1426
  end
1427
+
1428
+ context "when reading the file returns a illegal seek error" do
1429
+ before do
1430
+ File.write(file_path, "Some content")
1431
+ allow(File).to receive(:binread).and_call_original
1432
+ expect(File).to receive(:binread).with(file_path, anything,
1433
+ anything).and_raise(Errno::ESPIPE)
1434
+ run
1435
+ end
1436
+
1437
+ it "outputs file does not exists" do
1438
+ expect(output).to include %(Read error: Errno::ESPIPE: Illegal seek)
1439
+ end
1440
+
1441
+ it "transmits file data in report" do
1442
+ expect(received_report["paths"][filename]).to include(
1443
+ "read_error" => "Errno::ESPIPE: Illegal seek"
1444
+ )
1445
+ end
1446
+ end
1427
1447
  end
1428
1448
 
1429
1449
  describe "mkmf.log" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appsignal
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.5.0
4
+ version: 3.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Beekman
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2023-12-11 00:00:00.000000000 Z
13
+ date: 2023-12-27 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rack
@@ -446,7 +446,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
446
446
  - !ruby/object:Gem::Version
447
447
  version: '0'
448
448
  requirements: []
449
- rubygems_version: 3.3.7
449
+ rubygems_version: 3.4.11
450
450
  signing_key:
451
451
  specification_version: 4
452
452
  summary: Logs performance and exception data from your app to appsignal.com