appsignal 4.4.0-java → 4.5.0-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +39 -0
- data/Rakefile +1 -1
- data/ext/agent.rb +27 -27
- data/lib/appsignal/custom_marker.rb +72 -0
- data/lib/appsignal/version.rb +1 -1
- data/lib/appsignal.rb +1 -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: 4b77e336e502bb72c8fb749332731de304808c38bd04c4e0fbe1a0177f1f9c44
|
4
|
+
data.tar.gz: b188cef71022885550712c220dc058c28f5bdbf67ac9ff70d4bf9120ddcfd7b3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f8d81a839da1d4fe9d774162b74496e6f0ba46925b67dc18f8d1e7de4d755365f4f7beeca60e4b37121ae5d79c4f4a3ed842f3c657bab6f0e4508a44ed1be359
|
7
|
+
data.tar.gz: 62c7fc6a85d1fe336b3e8c44ed58cff518feef823e1eb3c0a9584ce220efaaecd3713eb7b6f10922410e6ab9a9dc99ad8a7325308c93aa2b124adad9b5b96b20
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,44 @@
|
|
1
1
|
# AppSignal for Ruby gem Changelog
|
2
2
|
|
3
|
+
## 4.5.0
|
4
|
+
|
5
|
+
_Published on 2025-02-21._
|
6
|
+
|
7
|
+
### Added
|
8
|
+
|
9
|
+
- Add a helper to create custom markers from the Ruby gem.
|
10
|
+
|
11
|
+
Create a custom marker (a little icon shown in the graph timeline on AppSignal.com) to mark events on the timeline.
|
12
|
+
|
13
|
+
Create a marker with all the available options:
|
14
|
+
|
15
|
+
```ruby
|
16
|
+
Appsignal::CustomMarker.report(
|
17
|
+
# The icon shown on the timeline
|
18
|
+
:icon => "🎉",
|
19
|
+
# The message shown on hover
|
20
|
+
:message => "Migration completed",
|
21
|
+
# Any time object or a string with a ISO8601 valid time is accepted
|
22
|
+
:created_at => Time.now
|
23
|
+
)
|
24
|
+
```
|
25
|
+
|
26
|
+
Create a marker with just a message:
|
27
|
+
|
28
|
+
```ruby
|
29
|
+
Appsignal::CustomMarker.report(
|
30
|
+
:message => "Migration completed",
|
31
|
+
)
|
32
|
+
```
|
33
|
+
|
34
|
+
_The default icon is the 🚀 icon. The default time is the time the request is received by our servers._
|
35
|
+
|
36
|
+
(minor [e92c8c9d](https://github.com/appsignal/appsignal-ruby/commit/e92c8c9da6e0a159a4405ff178b346040db53fa4))
|
37
|
+
|
38
|
+
### Removed
|
39
|
+
|
40
|
+
- Remove the OpenTelemetry beta feature in favor of the new [AppSignal collector](https://docs.appsignal.com/collector). If you are using the AppSignal agent to send OpenTelemetry data in our public beta through the `/enriched` endpoint on the agent's HTTP server, please migrate to the collector to continue using the beta. The collector has a much better implementation of this feature for the beta. (minor [f934d0d4](https://github.com/appsignal/appsignal-ruby/commit/f934d0d496a61779d17caf01b4dff1e2c9f5b92e))
|
41
|
+
|
3
42
|
## 4.4.0
|
4
43
|
|
5
44
|
_Published on 2025-02-06._
|
data/Rakefile
CHANGED
@@ -357,7 +357,7 @@ end
|
|
357
357
|
begin
|
358
358
|
require "rspec/core/rake_task"
|
359
359
|
is_jruby = defined?(RUBY_ENGINE) && RUBY_ENGINE == "jruby"
|
360
|
-
excludes = []
|
360
|
+
excludes = ["spec/integration/diagnose/**/*_spec.rb"]
|
361
361
|
excludes << "spec/lib/appsignal/extension/jruby_spec.rb" unless is_jruby
|
362
362
|
exclude_pattern = "--exclude-pattern=#{excludes.join(",")}" if excludes.any?
|
363
363
|
|
data/ext/agent.rb
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# Modifications to this file will be overwritten with the next agent release.
|
7
7
|
|
8
8
|
APPSIGNAL_AGENT_CONFIG = {
|
9
|
-
"version" => "0.
|
9
|
+
"version" => "0.36.0",
|
10
10
|
"mirrors" => [
|
11
11
|
"https://d135dj0rjqvssy.cloudfront.net",
|
12
12
|
"https://appsignal-agent-releases.global.ssl.fastly.net"
|
@@ -14,131 +14,131 @@ APPSIGNAL_AGENT_CONFIG = {
|
|
14
14
|
"triples" => {
|
15
15
|
"x86_64-darwin" => {
|
16
16
|
"static" => {
|
17
|
-
"checksum" => "
|
17
|
+
"checksum" => "6b16bf093a6f0eca2a5344f1085a6a0b6216e2ecf87b2f1f8d2828f06de173d7",
|
18
18
|
"filename" => "appsignal-x86_64-darwin-all-static.tar.gz"
|
19
19
|
},
|
20
20
|
"dynamic" => {
|
21
|
-
"checksum" => "
|
21
|
+
"checksum" => "bcb996ac552bb6efd38dcaea6935b13e28e5d02639fdf0fc51e379ca73be8917",
|
22
22
|
"filename" => "appsignal-x86_64-darwin-all-dynamic.tar.gz"
|
23
23
|
}
|
24
24
|
},
|
25
25
|
"universal-darwin" => {
|
26
26
|
"static" => {
|
27
|
-
"checksum" => "
|
27
|
+
"checksum" => "6b16bf093a6f0eca2a5344f1085a6a0b6216e2ecf87b2f1f8d2828f06de173d7",
|
28
28
|
"filename" => "appsignal-x86_64-darwin-all-static.tar.gz"
|
29
29
|
},
|
30
30
|
"dynamic" => {
|
31
|
-
"checksum" => "
|
31
|
+
"checksum" => "bcb996ac552bb6efd38dcaea6935b13e28e5d02639fdf0fc51e379ca73be8917",
|
32
32
|
"filename" => "appsignal-x86_64-darwin-all-dynamic.tar.gz"
|
33
33
|
}
|
34
34
|
},
|
35
35
|
"aarch64-darwin" => {
|
36
36
|
"static" => {
|
37
|
-
"checksum" => "
|
37
|
+
"checksum" => "1aaf24c79b4aa6b80c8ef216bf27782e1e4bb489b83ac154fd7df4dcd24f0c82",
|
38
38
|
"filename" => "appsignal-aarch64-darwin-all-static.tar.gz"
|
39
39
|
},
|
40
40
|
"dynamic" => {
|
41
|
-
"checksum" => "
|
41
|
+
"checksum" => "0ec323c1331c9d7fe5c55a49221c3ffaaa0cb67f33b2d842f530a598afe878fb",
|
42
42
|
"filename" => "appsignal-aarch64-darwin-all-dynamic.tar.gz"
|
43
43
|
}
|
44
44
|
},
|
45
45
|
"arm64-darwin" => {
|
46
46
|
"static" => {
|
47
|
-
"checksum" => "
|
47
|
+
"checksum" => "1aaf24c79b4aa6b80c8ef216bf27782e1e4bb489b83ac154fd7df4dcd24f0c82",
|
48
48
|
"filename" => "appsignal-aarch64-darwin-all-static.tar.gz"
|
49
49
|
},
|
50
50
|
"dynamic" => {
|
51
|
-
"checksum" => "
|
51
|
+
"checksum" => "0ec323c1331c9d7fe5c55a49221c3ffaaa0cb67f33b2d842f530a598afe878fb",
|
52
52
|
"filename" => "appsignal-aarch64-darwin-all-dynamic.tar.gz"
|
53
53
|
}
|
54
54
|
},
|
55
55
|
"arm-darwin" => {
|
56
56
|
"static" => {
|
57
|
-
"checksum" => "
|
57
|
+
"checksum" => "1aaf24c79b4aa6b80c8ef216bf27782e1e4bb489b83ac154fd7df4dcd24f0c82",
|
58
58
|
"filename" => "appsignal-aarch64-darwin-all-static.tar.gz"
|
59
59
|
},
|
60
60
|
"dynamic" => {
|
61
|
-
"checksum" => "
|
61
|
+
"checksum" => "0ec323c1331c9d7fe5c55a49221c3ffaaa0cb67f33b2d842f530a598afe878fb",
|
62
62
|
"filename" => "appsignal-aarch64-darwin-all-dynamic.tar.gz"
|
63
63
|
}
|
64
64
|
},
|
65
65
|
"aarch64-linux" => {
|
66
66
|
"static" => {
|
67
|
-
"checksum" => "
|
67
|
+
"checksum" => "1f933fe27dedc503eaf3d1d42c92ad1c5f2d36e582157db06fbd2e042c770573",
|
68
68
|
"filename" => "appsignal-aarch64-linux-all-static.tar.gz"
|
69
69
|
},
|
70
70
|
"dynamic" => {
|
71
|
-
"checksum" => "
|
71
|
+
"checksum" => "093ca5b112b57f3cc2b05728f9a7573c28742c7f63201994ca02cdc3ea2f2a00",
|
72
72
|
"filename" => "appsignal-aarch64-linux-all-dynamic.tar.gz"
|
73
73
|
}
|
74
74
|
},
|
75
75
|
"i686-linux" => {
|
76
76
|
"static" => {
|
77
|
-
"checksum" => "
|
77
|
+
"checksum" => "3ae7f080f4802600b9958651044e9b30e1668d4f1d145c989c378f08d7b930cf",
|
78
78
|
"filename" => "appsignal-i686-linux-all-static.tar.gz"
|
79
79
|
},
|
80
80
|
"dynamic" => {
|
81
|
-
"checksum" => "
|
81
|
+
"checksum" => "d32485c4959f08d88fa40ff011c1bf14ab412cbc577223b594abd4a8ab46dcf3",
|
82
82
|
"filename" => "appsignal-i686-linux-all-dynamic.tar.gz"
|
83
83
|
}
|
84
84
|
},
|
85
85
|
"x86-linux" => {
|
86
86
|
"static" => {
|
87
|
-
"checksum" => "
|
87
|
+
"checksum" => "3ae7f080f4802600b9958651044e9b30e1668d4f1d145c989c378f08d7b930cf",
|
88
88
|
"filename" => "appsignal-i686-linux-all-static.tar.gz"
|
89
89
|
},
|
90
90
|
"dynamic" => {
|
91
|
-
"checksum" => "
|
91
|
+
"checksum" => "d32485c4959f08d88fa40ff011c1bf14ab412cbc577223b594abd4a8ab46dcf3",
|
92
92
|
"filename" => "appsignal-i686-linux-all-dynamic.tar.gz"
|
93
93
|
}
|
94
94
|
},
|
95
95
|
"x86_64-linux" => {
|
96
96
|
"static" => {
|
97
|
-
"checksum" => "
|
97
|
+
"checksum" => "e89a2a31994017310f59239e399cf87662cb28d06d9e054ba513ae30a5b59738",
|
98
98
|
"filename" => "appsignal-x86_64-linux-all-static.tar.gz"
|
99
99
|
},
|
100
100
|
"dynamic" => {
|
101
|
-
"checksum" => "
|
101
|
+
"checksum" => "03beec3658486ec9a2af1247f975c3998234421d60dffe7511617917301bfab6",
|
102
102
|
"filename" => "appsignal-x86_64-linux-all-dynamic.tar.gz"
|
103
103
|
}
|
104
104
|
},
|
105
105
|
"x86_64-linux-musl" => {
|
106
106
|
"static" => {
|
107
|
-
"checksum" => "
|
107
|
+
"checksum" => "56f4d6f3f258d4c202c8a8967f0eccf9da9cb5e93f7f7b5bc0ba40d44bcb1e69",
|
108
108
|
"filename" => "appsignal-x86_64-linux-musl-all-static.tar.gz"
|
109
109
|
},
|
110
110
|
"dynamic" => {
|
111
|
-
"checksum" => "
|
111
|
+
"checksum" => "80b8d839ada281aa25d18c10fd6ae342e9cf45e84755758365210ed7f8b20c53",
|
112
112
|
"filename" => "appsignal-x86_64-linux-musl-all-dynamic.tar.gz"
|
113
113
|
}
|
114
114
|
},
|
115
115
|
"aarch64-linux-musl" => {
|
116
116
|
"static" => {
|
117
|
-
"checksum" => "
|
117
|
+
"checksum" => "b8c8a473556353a28da09910220c4af43e21b89a8c0daac972e04644b3b91c85",
|
118
118
|
"filename" => "appsignal-aarch64-linux-musl-all-static.tar.gz"
|
119
119
|
},
|
120
120
|
"dynamic" => {
|
121
|
-
"checksum" => "
|
121
|
+
"checksum" => "6c1dc5deb92ec6e0727b8066053dbcffdc1b2694faa5acb4dfcef1ac446bbbdf",
|
122
122
|
"filename" => "appsignal-aarch64-linux-musl-all-dynamic.tar.gz"
|
123
123
|
}
|
124
124
|
},
|
125
125
|
"x86_64-freebsd" => {
|
126
126
|
"static" => {
|
127
|
-
"checksum" => "
|
127
|
+
"checksum" => "dd2d49abf3052cf07de88d2a2e7d84ed4ad358d90ac7d9d12362b710b96edb8f",
|
128
128
|
"filename" => "appsignal-x86_64-freebsd-all-static.tar.gz"
|
129
129
|
},
|
130
130
|
"dynamic" => {
|
131
|
-
"checksum" => "
|
131
|
+
"checksum" => "2960d9fd9f655b64e9d585bb122a405455f9a03c63198bea40031b486f75476d",
|
132
132
|
"filename" => "appsignal-x86_64-freebsd-all-dynamic.tar.gz"
|
133
133
|
}
|
134
134
|
},
|
135
135
|
"amd64-freebsd" => {
|
136
136
|
"static" => {
|
137
|
-
"checksum" => "
|
137
|
+
"checksum" => "dd2d49abf3052cf07de88d2a2e7d84ed4ad358d90ac7d9d12362b710b96edb8f",
|
138
138
|
"filename" => "appsignal-x86_64-freebsd-all-static.tar.gz"
|
139
139
|
},
|
140
140
|
"dynamic" => {
|
141
|
-
"checksum" => "
|
141
|
+
"checksum" => "2960d9fd9f655b64e9d585bb122a405455f9a03c63198bea40031b486f75476d",
|
142
142
|
"filename" => "appsignal-x86_64-freebsd-all-dynamic.tar.gz"
|
143
143
|
}
|
144
144
|
}
|
@@ -0,0 +1,72 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Appsignal
|
4
|
+
# Custom markers are used on AppSignal.com to indicate events in an
|
5
|
+
# application, to give additional context on graph timelines.
|
6
|
+
#
|
7
|
+
# This helper class will send a request to the AppSignal public endpoint to
|
8
|
+
# create a Custom marker for the application on AppSignal.com.
|
9
|
+
#
|
10
|
+
# @see https://docs.appsignal.com/api/public-endpoint/custom-markers.html
|
11
|
+
# Public Endpoint API markers endpoint documentation
|
12
|
+
# @see https://docs.appsignal.com/appsignal/terminology.html#markers
|
13
|
+
# Terminology: Markers
|
14
|
+
class CustomMarker
|
15
|
+
# @param icon [String] icon to use for the marker, like an emoji.
|
16
|
+
# @param message [String] name of the user that is creating the
|
17
|
+
# marker.
|
18
|
+
# @param created_at [Time/String] A Ruby time object or a valid ISO8601
|
19
|
+
# timestamp.
|
20
|
+
# @return [Boolean]
|
21
|
+
def self.report(
|
22
|
+
icon: nil,
|
23
|
+
message: nil,
|
24
|
+
created_at: nil
|
25
|
+
)
|
26
|
+
new(
|
27
|
+
{
|
28
|
+
:icon => icon,
|
29
|
+
:message => message,
|
30
|
+
:created_at => created_at.respond_to?(:iso8601) ? created_at.iso8601 : created_at
|
31
|
+
}.compact
|
32
|
+
).transmit
|
33
|
+
end
|
34
|
+
|
35
|
+
# @api private
|
36
|
+
def initialize(marker_data)
|
37
|
+
@marker_data = marker_data
|
38
|
+
end
|
39
|
+
|
40
|
+
# @api private
|
41
|
+
def transmit
|
42
|
+
unless Appsignal.config
|
43
|
+
Appsignal.internal_logger.warn(
|
44
|
+
"Did not transmit custom marker: no AppSignal config loaded"
|
45
|
+
)
|
46
|
+
return false
|
47
|
+
end
|
48
|
+
|
49
|
+
transmitter = Transmitter.new(
|
50
|
+
"#{Appsignal.config[:logging_endpoint]}/markers",
|
51
|
+
Appsignal.config
|
52
|
+
)
|
53
|
+
response = transmitter.transmit(@marker_data)
|
54
|
+
|
55
|
+
if (200...300).include?(response.code.to_i)
|
56
|
+
Appsignal.internal_logger.info("Transmitted custom marker")
|
57
|
+
true
|
58
|
+
else
|
59
|
+
Appsignal.internal_logger.error(
|
60
|
+
"Failed to transmit custom marker: #{response.code} status code"
|
61
|
+
)
|
62
|
+
false
|
63
|
+
end
|
64
|
+
rescue => e
|
65
|
+
Appsignal.internal_logger.error(
|
66
|
+
"Failed to transmit custom marker: #{e.class}: #{e.message}\n" \
|
67
|
+
"#{e.backtrace}"
|
68
|
+
)
|
69
|
+
false
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
data/lib/appsignal/version.rb
CHANGED
data/lib/appsignal.rb
CHANGED
@@ -558,6 +558,7 @@ require "appsignal/event_formatter"
|
|
558
558
|
require "appsignal/hooks"
|
559
559
|
require "appsignal/probes"
|
560
560
|
require "appsignal/marker"
|
561
|
+
require "appsignal/custom_marker"
|
561
562
|
require "appsignal/garbage_collection"
|
562
563
|
require "appsignal/rack"
|
563
564
|
require "appsignal/rack/body_wrapper"
|
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: 4.
|
4
|
+
version: 4.5.0
|
5
5
|
platform: java
|
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: 2025-02-
|
13
|
+
date: 2025-02-21 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: logger
|
@@ -191,6 +191,7 @@ files:
|
|
191
191
|
- lib/appsignal/cli/helpers.rb
|
192
192
|
- lib/appsignal/cli/install.rb
|
193
193
|
- lib/appsignal/config.rb
|
194
|
+
- lib/appsignal/custom_marker.rb
|
194
195
|
- lib/appsignal/demo.rb
|
195
196
|
- lib/appsignal/environment.rb
|
196
197
|
- lib/appsignal/event_formatter.rb
|