fluent-plugin-sentry-ruby 0.3.4 → 0.4.0

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: f368546ccd49de162615e2491a0bb5df32da42b1de4fd6ae6e492ca05525be27
4
- data.tar.gz: 25fbdabbf5721c0c06d98f9bab29220d9a035e0f2cf8b794e1a1593999761919
3
+ metadata.gz: 870cfb654369d06c14ec51a6e5dc15e20e12769f0c41e7e595fa7eefec092f9a
4
+ data.tar.gz: 538f91b25e9ea1c0f22eca0b5a5d5f325380d759096ed91ecc4623ba6f056d20
5
5
  SHA512:
6
- metadata.gz: a5d00ae5abcbcc791d52ed638b0155f836ce7250b649bf3a9840b73a8ebb82f1f84a6fe4a7b3e9fce835995b3bb7b3c70d5428c2829498f312b690835904ecbe
7
- data.tar.gz: 051e411b69191644501e061c65843836fcd69de556cd440f4e43d86a24070358109088f867e360321aa7fda9a0c9abc373e0addfec41dc9c9387c2f0536ebb4c
6
+ metadata.gz: cda27f7aa76281524775f8702d7e1faa13607fc2c9eafc0ca029f0ae23aba38904b5557fa1ac74664c5c5d480e962aaf755e6f9512256a5418816a6e45ee79aa
7
+ data.tar.gz: ac8fe6be0cc5e6ea7c4d2508d6955022b0876c0dd713549207e81472a0fcc8cf3d16fa68439cb50a175f7bf010e5bf550d122fe1d43e35fca0003633fa488f39
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
 
4
4
  Gem::Specification.new do |spec|
5
5
  spec.name = "fluent-plugin-sentry-ruby"
6
- spec.version = "0.3.4"
6
+ spec.version = "0.4.0"
7
7
  spec.authors = ["buffalo"]
8
8
  spec.email = ["buffalobigboy@gmail.com"]
9
9
 
@@ -49,7 +49,6 @@ module Fluent
49
49
  event.environment = record['env'] || @environment
50
50
 
51
51
  if @type === :event
52
- log.warn(record, @tag_keys, @user_keys, @data_keys)
53
52
  event.message = record['message']
54
53
  event.user = record.select{ |key| @user_keys.include?(key) }
55
54
  event.extra = @data_keys.length() > 0 ? record.select{ |key| @data_keys.include?(key) } : record
@@ -58,24 +57,49 @@ module Fluent
58
57
  .merge({ :timestamp => Time.at(time).strftime('%Y-%m-%d %H:%M:%S %Z') })
59
58
  .merge(record.select{ |key| (@tag_keys + @user_keys).include?(key) })
60
59
  event = event.to_hash
60
+
61
+ event['logger'] = @title
61
62
  elsif @type === :exception
63
+ event.tags = { :tag => tag }
64
+ .merge({ :timestamp => Time.at(time).strftime('%d-%b-%Y %H:%M:%S %Z') })
65
+ .merge(record.select{ |key| (@tag_keys + @user_keys).include?(key) })
66
+
62
67
  event = event.to_hash
68
+
69
+ event['logger'] = @title
70
+
71
+ frame = Array.new
72
+ if record.include?(@e_stack)
73
+ record[@e_stack].split("\n") do |value|
74
+ match = value.match(/\#(?<no>\d+) (?<filename>.*?)\((?<lineno>\d+)\): (?<context_line>[\s\S]+)/)
75
+ if match != nil
76
+ frame.unshift(Sentry::CustomStacktraceFrame.new(
77
+ filename: match[:filename],
78
+ context_line: match[:context_line],
79
+ pre_context: "//...\n",
80
+ post_context: "//...\n",
81
+ lineno: Integer(match[:lineno]),
82
+ ))
83
+ end
84
+ end
85
+ elsif
86
+ frame.push(Sentry::CustomStacktraceFrame.new(
87
+ filename: record.include?(@e_filename) ? record[@e_filename] : '',
88
+ context_line: record.include?(@e_describe) ? record[@e_describe] : '',
89
+ pre_context: "//...\n",
90
+ post_context: "//...\n",
91
+ lineno: record.include?(@e_line) ? Integer(record[@e_line]) : 1
92
+ ))
93
+ end
94
+
63
95
  event['exception'] = Sentry::CustomExceptionInterface.new(
64
96
  type: record['message'] || '',
65
- message: (record[@e_describe] + (record[@e_line] ? (' on line:' + record[@e_line]) : '')) || '',
66
- stacktrace: Sentry::StacktraceInterface.new(frames: [Sentry::CustomStacktraceFrame.new(
67
- filename: record[@e_filename] || '',
68
- context_line: (record[@e_describe] + (record[@e_line] ? (' on line:' + record[@e_line]) : '')) || '',
69
- post_context: record[@e_stack] || (record[@e_describe] || ''),
70
- )])
97
+ message: record.include?(@e_describe) ? record[@e_describe] : '',
98
+ stacktrace: Sentry::StacktraceInterface.new(frames: frame)
71
99
  ).to_hash
72
- event['tags'] = { :tag => tag }
73
- .merge({ :timestamp => Time.at(time).strftime('%d-%b-%Y %H:%M:%S %Z') })
74
- .merge(record.select{ |key| (@tag_keys + @user_keys).include?(key) })
100
+ event['message'] = record.include?(@e_describe) ? (record[@e_describe] + ' in ' + record[@e_filename] + ' on line ' + record[@e_line]) : ''
75
101
  end
76
102
 
77
- event['logger'] = @title
78
-
79
103
  @client.send_event(event)
80
104
  rescue => e
81
105
  log.error("Sentry Error:", :error_class => e.class, :error => e.message)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-sentry-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.4
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - buffalo