slack_webhook_logger 0.5.4 → 0.6.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: 394971d31639a38616b547ff67dbfd13531821fb419d4989ed7774185ff958bb
4
- data.tar.gz: a69a7813124a2eb1d0b2d715ef64673f3708125bb9ced929e5f2fd6fca682af2
3
+ metadata.gz: 83b1e6053d5d56948daf29d6fb73bbff0bac8a16c2c00d39eaeed2058e85015f
4
+ data.tar.gz: f88d270cc93af6de1034fa09168853b137c31b4679fbfc8e376a718e88aea47d
5
5
  SHA512:
6
- metadata.gz: b81d9a384270f12abd645f2c999ca7416094b5a6b6fc2719b896b6c76af809f6f97dd727f18af9037e2a4ec84f94eebcba24047221b41f0fa7f21a642fff0ae8
7
- data.tar.gz: 7f3168621318d5077d5a1d18d13642b4af0bf55fe6b2fd8e661d1a25f5b5d8e479ac1cf809f907f7f23918d0cb1e8e195478143af3f615ee882ae29e88958363
6
+ metadata.gz: 825657fb963061c8c64bc2f614d07785de5c33837ab959351b34feb0b7405558af771e52846de3fe1d22b7ed7a847102a2f5853feff373e951a9f360dff934dc
7
+ data.tar.gz: aaae0faa6d0e9aa69b6dee863be0d121f440d7debcc6fe269973753088c4ed2643df1b75839b40ebc987bf92db5282bd4b1e3cad3a225933286eaa1ab5b54f24
@@ -3,15 +3,25 @@ updates:
3
3
  - package-ecosystem: "github-actions"
4
4
  directory: "/"
5
5
  schedule:
6
- interval: daily
6
+ interval: weekly
7
+ day: monday
7
8
  time: "09:00"
8
9
  timezone: "Etc/UTC"
10
+ groups:
11
+ github-actions:
12
+ patterns:
13
+ - "*"
9
14
  open-pull-requests-limit: 10
10
15
 
11
- - package-ecosystem: "bundler"
16
+ - package-ecosystem: bundler
12
17
  directory: "/"
13
18
  schedule:
14
- interval: daily
19
+ interval: weekly
20
+ day: monday
15
21
  time: "09:00"
16
22
  timezone: "Etc/UTC"
17
23
  open-pull-requests-limit: 10
24
+ groups:
25
+ bundler-dependencies:
26
+ patterns:
27
+ - "*"
data/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## [v0.5.5] - 16-08-2023
2
+ ## What's Changed
3
+ * Changes for new char limits by @gjtorikian in https://github.com/gjtorikian/slack_webhook_logger/pull/15
4
+
5
+
6
+ **Full Changelog**: https://github.com/gjtorikian/slack_webhook_logger/compare/v0.5.4...v0.5.5
7
+ ## [v0.5.4] - 06-07-2023
8
+ null
1
9
  ## [v0.5.2] - 06-07-2023
2
10
  null
3
11
  ## [v0.5.1] - 06-07-2023
data/README.md CHANGED
@@ -38,7 +38,7 @@ end
38
38
 
39
39
  ## Configuration
40
40
 
41
- You should have a file in `config/initializers/slack_webhook_logger.rb` that looks somrthing like this:
41
+ You should have a file in `config/initializers/slack_webhook_logger.rb` that looks something like this:
42
42
 
43
43
  ```ruby
44
44
  SlackWebhookLogger.setup do |config|
@@ -18,4 +18,8 @@ SlackWebhookLogger.setup do |config|
18
18
  # You can provide an array of regular expressions to ignore certain messages
19
19
  # from being sent to Slack. This is optional.
20
20
  # config.ignore_patterns = []
21
+
22
+ # You can provide a specific name for your app; otherwise, it will default to
23
+ # the name of your Rails app. This is optional.
24
+ # config.application_name = []
21
25
  end
@@ -4,7 +4,13 @@ module SlackWebhookLogger
4
4
  class Formatter < ::Logger::Formatter
5
5
  attr_writer :format
6
6
 
7
- MAX_LENGTH = 20000
7
+ MAX_LENGTH = 3000
8
+
9
+ class << self
10
+ def fetch_text(hash)
11
+ hash[:blocks].last[:text][:text]
12
+ end
13
+ end
8
14
 
9
15
  def format
10
16
  @format ||= proc do |severity, time, _progname, msg|
@@ -23,7 +29,7 @@ module SlackWebhookLogger
23
29
  "🪵 *Logger*"
24
30
  end
25
31
 
26
- title = "#{heading} (#{time}) [#{ENV.fetch("RAILS_ENV", nil)}]"
32
+ title = "#{heading} #{SlackWebhookLogger.application_name} [#{ENV.fetch("RAILS_ENV", nil)}] (#{time})"
27
33
 
28
34
  text = <<~MSG
29
35
  #{msg2str(msg)}
@@ -39,7 +45,6 @@ module SlackWebhookLogger
39
45
 
40
46
  def slackify(title, text)
41
47
  {
42
- text: [title, text].join("\n").to_s,
43
48
  blocks: [
44
49
  {
45
50
  type: "section",
@@ -75,7 +80,7 @@ module SlackWebhookLogger
75
80
  end
76
81
 
77
82
  private def truncate(string)
78
- string.length > MAX_LENGTH ? "#{string[0...MAX_LENGTH]}..." : string
83
+ string.length > MAX_LENGTH ? "#{string[0...MAX_LENGTH - 3]}..." : string
79
84
  end
80
85
  end
81
86
  end
@@ -14,7 +14,7 @@ module SlackWebhookLogger
14
14
  def write(hash)
15
15
  return if hash.blank?
16
16
 
17
- return if SlackWebhookLogger.ignore_patterns.any? { |ignore_pattern| hash[:text].match(ignore_pattern) }
17
+ return if SlackWebhookLogger.ignore_patterns.any? { |ignore_pattern| SlackWebhookLogger::Formatter.fetch_text(hash).match(ignore_pattern) }
18
18
 
19
19
  response = HTTPX.with(headers: { "content-type" => "application/json" }).post(SlackWebhookLogger.webhook_uri.to_s, json: hash)
20
20
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SlackWebhookLogger
4
- VERSION = "0.5.4"
4
+ VERSION = "0.6.0"
5
5
  end
@@ -17,6 +17,7 @@ module SlackWebhookLogger
17
17
  mattr_accessor :level
18
18
  mattr_accessor :formatter
19
19
  mattr_accessor :ignore_patterns
20
+ mattr_accessor :application_name
20
21
 
21
22
  # Used internally
22
23
  mattr_reader :webhook_uri
@@ -39,6 +40,7 @@ module SlackWebhookLogger
39
40
  raise ArgumentError, "Invalid URI for webhook_url"
40
41
  end
41
42
 
43
+ @@application_name ||= Rails.application.class.module_parent_name
42
44
  @@ignore_patterns ||= []
43
45
  end
44
46
  # rubocop:enable Style/ClassVars
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: slack_webhook_logger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.4
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Garen J. Torikian
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-06 00:00:00.000000000 Z
11
+ date: 2023-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -120,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
120
  - !ruby/object:Gem::Version
121
121
  version: '0'
122
122
  requirements: []
123
- rubygems_version: 3.4.15
123
+ rubygems_version: 3.4.19
124
124
  signing_key:
125
125
  specification_version: 4
126
126
  summary: A slim wrapper for posting to Rails logs to Slack