datadog_notifier 1.0.2 → 1.0.4
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/.github/workflows/publish.yml +6 -11
- data/datadog_notifier.gemspec +12 -10
- data/lib/datadog_notifier/version.rb +3 -1
- data/lib/datadog_notifier.rb +9 -2
- metadata +18 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a948726d1fa53ac82fc8a246138e13988d90df0fcaebf2285646ec27b8a5bfca
|
4
|
+
data.tar.gz: 5b4b50b7e58eaf19eb485dab559084f19fab585208adb06dc5ade4c88f548c5f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e54a34377bf28f41f33c6354162867d726925d0363b1afbbf58033cdd43af8ca7b31576cb60f5c7f36b44f69a66b7967fc1a82b7c42a5b2e971ba7e0e6499f25
|
7
|
+
data.tar.gz: 5aa6fd98bd6bce016963a721e492d4889eae1791859ed67096786ceee70a3e1a71a54c8946949b2695a894627ae664f1b5c9affb7f25cfd7951986f6b89d1e0c
|
@@ -6,24 +6,19 @@ on:
|
|
6
6
|
- 'v*' # Trigger on version tags, e.g., v1.0.0
|
7
7
|
|
8
8
|
jobs:
|
9
|
-
|
9
|
+
publish:
|
10
10
|
runs-on: ubuntu-latest
|
11
11
|
steps:
|
12
12
|
- name: Checkout code
|
13
13
|
uses: actions/checkout@v2
|
14
14
|
|
15
|
-
- name:
|
16
|
-
|
17
|
-
with:
|
18
|
-
ruby-version: 2.7
|
15
|
+
- name: Install ddtrace gem
|
16
|
+
run: gem install ddtrace
|
19
17
|
|
20
|
-
- name:
|
21
|
-
run: gem
|
18
|
+
- name: Build gem
|
19
|
+
run: gem build datadog_notifier.gemspec
|
22
20
|
|
23
21
|
- name: Publish gem
|
24
|
-
|
22
|
+
run: gem publish *.gem
|
25
23
|
env:
|
26
24
|
RUBYGEMS_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
|
27
|
-
run: |
|
28
|
-
gem build datadog_notifier.gemspec
|
29
|
-
gem push datadog_notifier-*.gem
|
data/datadog_notifier.gemspec
CHANGED
@@ -1,7 +1,9 @@
|
|
1
|
-
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
2
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
5
|
require 'datadog_notifier'
|
4
|
-
require
|
6
|
+
require 'datadog_notifier/version'
|
5
7
|
|
6
8
|
Gem::Specification.new do |spec|
|
7
9
|
spec.name = 'datadog_notifier'
|
@@ -11,22 +13,22 @@ Gem::Specification.new do |spec|
|
|
11
13
|
spec.summary = 'Datadog notifier to send custom errors with ddtrace'
|
12
14
|
spec.description = 'Datadog notifier to send custom errors in Datadog error tracking dashboard'
|
13
15
|
spec.homepage = 'https://github.com/patterninc/datadog_notifier'
|
14
|
-
spec.license =
|
16
|
+
spec.license = 'MIT'
|
17
|
+
|
18
|
+
spec.add_dependency 'ddtrace', '>= 1.13.0'
|
15
19
|
|
16
20
|
# Specify which files should be added to the gem when it is released.
|
17
21
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
18
|
-
spec.files = Dir.chdir(File.expand_path(
|
22
|
+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
19
23
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
20
24
|
end
|
21
|
-
spec.bindir =
|
25
|
+
spec.bindir = 'exe'
|
22
26
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
23
27
|
spec.require_paths = ['lib']
|
24
|
-
spec.required_ruby_version =
|
28
|
+
spec.required_ruby_version = '>= 2.7.0'
|
25
29
|
|
26
|
-
spec.add_development_dependency
|
27
|
-
spec.add_development_dependency
|
28
|
-
|
29
|
-
spec.add_dependency 'ddtrace', '>= 1.13.0'
|
30
|
+
spec.add_development_dependency 'bundler', '~> 2.4.22'
|
31
|
+
spec.add_development_dependency 'rake', '~> 13.0'
|
30
32
|
|
31
33
|
# If needed, add development dependencies
|
32
34
|
spec.add_development_dependency 'rspec'
|
data/lib/datadog_notifier.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'ddtrace'
|
4
4
|
require 'datadog_notifier_exception'
|
5
|
-
require
|
5
|
+
require 'datadog_notifier/version'
|
6
6
|
|
7
7
|
# DatadogNotifier for custom error notification to datadog
|
8
8
|
class DatadogNotifier
|
@@ -10,7 +10,8 @@ class DatadogNotifier
|
|
10
10
|
root_span = find_root_span(Datadog::Tracing.active_span)
|
11
11
|
if exception.is_a?(String)
|
12
12
|
exception = DatadogNotifierException.new exception
|
13
|
-
|
13
|
+
backtrace = fetch_backtrace(payload)
|
14
|
+
exception.set_backtrace(backtrace.inspect)
|
14
15
|
end
|
15
16
|
root_span.set_error(exception)
|
16
17
|
root_span.set_tag('custom_dd_notifier', true)
|
@@ -22,4 +23,10 @@ class DatadogNotifier
|
|
22
23
|
current_span = current_span.send(:parent) while current_span.send(:parent)
|
23
24
|
current_span
|
24
25
|
end
|
26
|
+
|
27
|
+
def self.fetch_backtrace(exception)
|
28
|
+
return { custom_exception: true } if exception.blank?
|
29
|
+
return exception.backtrace if exception.class.ancestors.include?(StandardError)
|
30
|
+
exception
|
31
|
+
end
|
25
32
|
end
|
metadata
CHANGED
@@ -1,57 +1,57 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: datadog_notifier
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Patterninc
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-03-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: ddtrace
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
20
|
-
type: :
|
19
|
+
version: 1.13.0
|
20
|
+
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 1.13.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 2.4.22
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 2.4.22
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
48
|
-
type: :
|
47
|
+
version: '13.0'
|
48
|
+
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: '13.0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rspec
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -99,7 +99,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
99
99
|
- !ruby/object:Gem::Version
|
100
100
|
version: '0'
|
101
101
|
requirements: []
|
102
|
-
rubygems_version: 3.2
|
102
|
+
rubygems_version: 3.1.2
|
103
103
|
signing_key:
|
104
104
|
specification_version: 4
|
105
105
|
summary: Datadog notifier to send custom errors with ddtrace
|