fluent-plugin-sentry-ruby 0.3.4 → 0.4.0

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: 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