ach-fluent-plugin-sentry 0.0.14 → 0.0.18

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: 02717a0d9a1fce95e3f1328047ee5ac0f95b4247a841a19b2b1a63c317d0d459
4
- data.tar.gz: 109355c4800b14ceb78e3d9ce958350cbd765ec97c0667c9867d46fa2284cf42
3
+ metadata.gz: bfa4c9377c69a91f67bad9003c11fbb113adf7db527a68055edc68cbf6cc0d89
4
+ data.tar.gz: 0e8fa743e480271535e7851b058bfe9607e2b503f5d28d9ca4ad840cce04bff6
5
5
  SHA512:
6
- metadata.gz: 1b38fea6299f8eb4fa8de4e5ec198712baabac5d731355f3acafd87d544491bb47ac592e912b34adcf1bbd61c94ed4632bc5e6c32ac0fc644751993eac5d5116
7
- data.tar.gz: c56fed869b7f8a4759a8e99238d1d40c840ca100bf9fcb3dd54bbd5e39ee0ddcdfc86d4bd5a44624610c7edaee246e895ff74612d76da1d15816e7afa47f148e
6
+ metadata.gz: 227ceec5a9b2ce43286d26bcc9fe9897fbd9bfe1830842d74cb64d0294a7b82300601ea7247d35da5bcbfe1842c3f2dc4eed8f9a8b079d636e9d0aa6d1b8817c
7
+ data.tar.gz: 44491d095684483010707450f72f8904e6127cad717f68d6da2a474a695e6dfbfcd1cba3d932db400818ac2169b366bd87dfcbdeaeaa0196998af96cdc30b088
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "ach-fluent-plugin-sentry"
7
- spec.version = "0.0.14"
7
+ spec.version = "0.0.18"
8
8
  spec.authors = ["Kentaro Yoshida"]
9
9
  spec.email = ["y.ken.studio@gmail.com"]
10
10
  spec.summary = %q{Fluentd output plugin that sends aggregated errors/exception events to Sentry. Sentry is a event logging and aggregation platform.}
@@ -6,8 +6,10 @@ class Fluent::SentryOutput < Fluent::BufferedOutput
6
6
  LOG_LEVEL = %w(fatal error warning info debug)
7
7
  EVENT_KEYS = %w(message timestamp time_spent level logger culprit server_name release tags)
8
8
  DEFAULT_HOSTNAME_COMMAND = 'hostname'
9
+ DEFAULT_ENVIRONMENT = 'default'
9
10
 
10
11
  config_param :default_level, :string, :default => 'error'
12
+ config_param :default_environment, :string, :default => 'default'
11
13
  config_param :default_logger, :string, :default => 'fluentd'
12
14
  config_param :endpoint_url, :string
13
15
  config_param :flush_interval, :time, :default => 0
@@ -35,6 +37,7 @@ class Fluent::SentryOutput < Fluent::BufferedOutput
35
37
 
36
38
  hostname_command = @hostname_command || DEFAULT_HOSTNAME_COMMAND
37
39
  @hostname = `#{hostname_command}`.chomp
40
+ @default_environment = DEFAULT_ENVIRONMENT
38
41
 
39
42
  @configuration = Sentry::Configuration.new
40
43
  @configuration.send_modules = false
@@ -59,7 +62,9 @@ class Fluent::SentryOutput < Fluent::BufferedOutput
59
62
  def write(chunk)
60
63
  chunk.msgpack_each do |tag, time, record|
61
64
  begin
62
- notify_sentry(tag, time, record)
65
+ if record.key?('level') and record['level'] == 'error'
66
+ notify_sentry(tag, time, record)
67
+ end
63
68
  rescue => e
64
69
  $log.error("Sentry Error:", :error_class => e.class, :error => e.message)
65
70
  end
@@ -67,20 +72,15 @@ class Fluent::SentryOutput < Fluent::BufferedOutput
67
72
  end
68
73
 
69
74
  def notify_sentry(tag, time, record)
70
- #$log.warning("Message: ",:error => record['message'])
71
- $log.error 'writing data', record.to_json
72
75
  event = Sentry::Event.new(
73
76
  :configuration => @configuration,
74
- :message => record['log']
77
+ :message => record['message']
75
78
  )
76
79
  event.timestamp = record['timestamp'] || Time.at(time).utc.strftime('%Y-%m-%dT%H:%M:%S')
77
80
  event.level = record['level'] || @default_level
78
- #event.logger = record['logger'] || @default_logger
79
- #event.culprit = record['culprit'] || nil
80
- #event.server_name = record['server_name'] || @hostname
81
- #event.release = record['release'] if record['release']
82
- event.tags = event.tags.merge({ :tag => tag }.merge(record['tags'] || {}))
83
- #event.extra = record.reject{ |key| EVENT_KEYS.include?(key) }
81
+ event.environment = record['clustername'] || @default_environment
82
+ event.tags = event.tags.merge({ :tag => tag }.merge(record['kubernetes'] || {}))
83
+ event.contexts[:Fields] = record['fields'] || {}
84
84
  @client.send_event(event)
85
85
  end
86
86
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ach-fluent-plugin-sentry
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.14
4
+ version: 0.0.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kentaro Yoshida
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-01 00:00:00.000000000 Z
11
+ date: 2021-09-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler