honeycomb-beeline 2.3.0 → 2.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: 0606efad889f46b53eaa00c4a4c2f0e134641ce9a2427f65cc79eaf138a840be
4
- data.tar.gz: 95449860c9a30558bdb512b498f93fe0d00beca14b89582555e0cf2479316f74
3
+ metadata.gz: eaa9bbe8dbe9bfb0de78101ff1809ed07b87535b4d8abc19468d3285cbd60300
4
+ data.tar.gz: b31e267934ac0edf772eddfee5e3cd0be333c7469ae267fa706b670da15d5453
5
5
  SHA512:
6
- metadata.gz: 0cf79345b6b669d4e07d02035840f7ba05bb508c9185259c7d308afd7cf18cb9d44c5c1592b04e445cf025037756a9c8512bfd436ea2e4c1f52884db9a08dbe7
7
- data.tar.gz: 7e73b0970480db0173ef147102da4ea9511e920457feea7178b1b4fd03905b4929c3581d01ec050586241028b7ec7921df5b90d466c882ea57d97ca69c58d5dd
6
+ metadata.gz: 6b294598dae62f56f1ebfef7c00d8c13fd2558976797c60bb3f95c75ad68ff7f0fef77888d1e2f7c622689c080a73448e6c41f2ba436ef255d888126915839f6
7
+ data.tar.gz: b3b4b6746f630198c69b8c324004d088878000022654008fe6a8c88d88828424aad0646d5bd0fc6c0b122774acd98775f10bddcc84d311ef7330859d21ced655
@@ -26,16 +26,53 @@ commands:
26
26
  - run: BUNDLE_GEMFILE=<< parameters.gemfile >> << parameters.command >>
27
27
 
28
28
  jobs:
29
- publish:
29
+ build_artifacts:
30
30
  docker:
31
- - image: circleci/ruby:2.6
31
+ - image: circleci/ruby:2.6
32
32
  steps:
33
33
  - checkout
34
+ - run: mkdir -p ~/artifacts
35
+ - run: gem build honeycomb-beeline.gemspec
36
+ - run: cp honeycomb-beeline-*.gem ~/artifacts/
37
+ - persist_to_workspace:
38
+ root: ~/
39
+ paths:
40
+ - artifacts
41
+ - store_artifacts:
42
+ path: ~/artifacts
43
+
44
+ publish_rubygems:
45
+ docker:
46
+ - image: circleci/ruby:2.6
47
+ steps:
48
+ - attach_workspace:
49
+ at: ~/
50
+ - run:
51
+ name: "Artifacts being published"
52
+ command: |
53
+ echo "about to publish to tag ${CIRCLE_TAG}"
54
+ ls -l ~/artifacts/*
55
+ - checkout
34
56
  - run:
35
57
  name: Setup Rubygems
36
58
  command: bash .circleci/setup-rubygems.sh
37
- - run: gem build honeycomb-beeline.gemspec
38
- - run: gem push honeycomb-beeline-*.gem
59
+ - run: gem push ~/artifacts/honeycomb-beeline-*.gem
60
+
61
+ publish_github:
62
+ docker:
63
+ - image: cibuilds/github:0.13.0
64
+ steps:
65
+ - attach_workspace:
66
+ at: ~/
67
+ - run:
68
+ name: "Artifacts being published"
69
+ command: |
70
+ echo "about to publish to tag ${CIRCLE_TAG}"
71
+ ls -l ~/artifacts/*
72
+ - run:
73
+ name: "GHR Draft"
74
+ command: ghr -draft -n ${CIRCLE_TAG} -t ${GITHUB_TOKEN} -u ${CIRCLE_PROJECT_USERNAME} -r ${CIRCLE_PROJECT_REPONAME} -c ${CIRCLE_SHA1} ${CIRCLE_TAG} ~/artifacts
75
+
39
76
  lint:
40
77
  parameters:
41
78
  ruby-version:
@@ -119,16 +156,14 @@ workflows:
119
156
  beeline:
120
157
  jobs:
121
158
  - lint:
122
- filters:
159
+ filters: &regular_filters
123
160
  tags:
124
161
  only: /.*/
125
162
  - test:
126
163
  <<: *test
127
- filters:
128
- tags:
129
- only: /.*/
130
- - publish:
131
- filters:
164
+ filters: *regular_filters
165
+ - build_artifacts:
166
+ filters: &tag_filters
132
167
  tags:
133
168
  only: /^v.*/
134
169
  branches:
@@ -136,3 +171,10 @@ workflows:
136
171
  requires:
137
172
  - lint
138
173
  - test
174
+ - publish_rubygems: &publish
175
+ filters: *tag_filters
176
+ requires:
177
+ - build_artifacts
178
+ - publish_github:
179
+ <<: *publish
180
+ context: Honeycomb Secrets for Public Repos
@@ -0,0 +1,82 @@
1
+ # beeline-ruby changelog
2
+
3
+ ## 2.4.0 2021-01-07
4
+ ### Added
5
+ - Add support for HTTP Accept-Encoding header (#125) [@irvingreid](https://github.com/irvingreid)
6
+ - Add with_field, with_trace_field wrapper methods (#51) [@ajvondrak](https://github.com/ajvondrak)
7
+
8
+ ## 2.3.0 2020-11-06
9
+ ### Improvements
10
+ - Custom trace header hooks (#117)
11
+ - Add rspec filter :focus for assisting with debugging tests (#120)
12
+ - Be more lenient in expected output from AWS gem (#119)
13
+
14
+ ## 2.2.0 2020-09-02
15
+ ### New things
16
+ - refactor parsers/propagators, add w3c and aws parsers and propagators (#104) [@katiebayes](https://github.com/katiebayes)
17
+
18
+ ### Tiny fix
19
+ - Adjusted a threshold that should resolve the occasional build failures (#107) [@katiebayes](https://github.com/katiebayes)
20
+
21
+ ## 2.1.2 2020-08-26
22
+ ### Improvements
23
+ - reference current span in start_span (#105) [@rintaun](https://github.com/rintaun)
24
+ - switch trace and span ids over to w3c-supported formats (#100) [@katiebayes](https://github.com/katiebayes)
25
+
26
+ ## 2.1.1 2020-07-28
27
+ ### Fixes
28
+ - Remove children after sending | #98 | [@martin308](https://github.com/martin308)
29
+
30
+ ## 2.1.0 2020-06-10
31
+ ### Features
32
+ - Adding X-Forwarded-For to instrumented fields | #91 | [@paulosman](https://github.com/paulosman)
33
+ - Add request.header.accept_language field | #94 | [@timcraft](https://github.com/timcraft)
34
+ - Support custom notifications based on a regular expression | #92 | [@mrchucho](https://github.com/mrchucho)
35
+
36
+ ### Fixes
37
+ - Properly pass options for Ruby 2.7 | #85 | [@terracatta](https://github.com/terracatta)
38
+ - Fix regex substitution for warden and empty? errors for Rack | #88 | [@irvingreid](https://github.com/irvingreid)
39
+
40
+ ## 2.0.0 2020-03-10
41
+ See [release notes](https://github.com/honeycombio/beeline-ruby/releases/tag/v2.0.0)
42
+
43
+ ## 1.3.0 2019-11-20
44
+ ### Features
45
+ - redis integration | #42 | [@ajvondrak](https://github.com/ajvondrak)
46
+
47
+ ## 1.2.0 2019-11-04
48
+ ### Features
49
+ - aws-sdk v2 & v3 integration | #40 | [@ajvondrak](https://github.com/ajvondrak)
50
+
51
+ ## 1.1.1 2019-10-10
52
+ ### Fixes
53
+ - Skip params when unavailable | #39 | [@martin308](https://github.com/martin308)
54
+
55
+ ## 1.1.0 2019-10-07
56
+ ### Features
57
+ - Split rails and railtie integrations | #35 | [@martin308](https://github.com/martin308)
58
+
59
+ ## 1.0.1 2019-09-03
60
+ ### Fixes
61
+ - Set sample_hook and presend_hook on child spans | #26 | [@orangejulius](https://github.com/orangejulius)
62
+ - No-op if no client found in Faraday integration | #27 | [@Sergio-Mira](https://github.com/Sergio-Mira)
63
+
64
+ ## 1.0.0 2019-07-23
65
+ Version 1 is a milestone release. A complete re-write and modernization of Honeycomb's Ruby support.
66
+ See UPGRADING.md for migrating from v0.8.0 and see https://docs.honeycomb.io for full documentation.
67
+
68
+ ## 0.8.0 2019-05-06
69
+ ### Enhancements
70
+ - Expose event to #span block | #17 | [@eternal44](https://github.com/eternal44)
71
+
72
+ ## 0.7.0 2019-03-13
73
+ ### Enhancements
74
+ - Remove default inclusion of Sequel instrumentation | #12 | [@martin308](https://github.com/martin308)
75
+
76
+ ## 0.6.0 2018-11-29
77
+ ### Enhancements
78
+ - Tracing API and cross-process tracing | #4 | [@samstokes](https://github.com/samstokes)
79
+
80
+ ## 0.5.0 2018-11-29
81
+ ### Enhancements
82
+ - Improved rails support | #3 | [@samstokes](https://github.com/samstokes)
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- honeycomb-beeline (2.3.0)
4
+ honeycomb-beeline (2.4.0)
5
5
  libhoney (~> 1.14, >= 1.14.2)
6
6
 
7
7
  GEM
@@ -1,5 +1,15 @@
1
1
  # Upgrade Guide
2
2
 
3
+ ## 1.0.0 - 2.0.0
4
+
5
+ 1. See release notes: https://github.com/honeycombio/beeline-ruby/releases/tag/v2.0.0
6
+ 1. This update requires no code changes, but you must be aware of certain instrumentation changes. New fields will be added to your dataset and other fields will be removed.
7
+ 1. ActionController::Parameters will now result in extra fields, or nested json, depending on your unfurl settings.
8
+ 1. aws.params are now exploded into separate fields.
9
+ 1. request.error becomes error.
10
+ 1. request.error_detail becomes error_detail
11
+ 1. request.protocol becomes request.scheme
12
+
3
13
  ## 0.8.0 - 1.0.0
4
14
 
5
15
  1. If you have a web application, remove beeline configuration from the `config.ru` file
@@ -26,7 +26,8 @@ module Honeycomb
26
26
  attr_reader :client
27
27
 
28
28
  def_delegators :@client, :libhoney, :start_span, :add_field,
29
- :add_field_to_trace, :current_span, :current_trace
29
+ :add_field_to_trace, :current_span, :current_trace,
30
+ :with_field, :with_trace_field
30
31
 
31
32
  def configure
32
33
  Configuration.new.tap do |config|
@@ -3,7 +3,7 @@
3
3
  module Honeycomb
4
4
  module Beeline
5
5
  NAME = "honeycomb-beeline".freeze
6
- VERSION = "2.3.0".freeze
6
+ VERSION = "2.4.0".freeze
7
7
  USER_AGENT_SUFFIX = "#{NAME}/#{VERSION}".freeze
8
8
  end
9
9
  end
@@ -89,6 +89,14 @@ module Honeycomb
89
89
  context.current_span.trace.add_field("app.#{key}", value)
90
90
  end
91
91
 
92
+ def with_field(key)
93
+ yield.tap { |value| add_field(key, value) }
94
+ end
95
+
96
+ def with_trace_field(key)
97
+ yield.tap { |value| add_field_to_trace(key, value) }
98
+ end
99
+
92
100
  private
93
101
 
94
102
  attr_reader :context
@@ -17,6 +17,7 @@ module Honeycomb
17
17
  ["HTTP_X_FORWARDED_PROTO", "request.header.x_forwarded_proto"],
18
18
  ["HTTP_X_FORWARDED_PORT", "request.header.x_forwarded_port"],
19
19
  ["HTTP_ACCEPT", "request.header.accept"],
20
+ ["HTTP_ACCEPT_ENCODING", "request.header.accept_encoding"],
20
21
  ["HTTP_ACCEPT_LANGUAGE", "request.header.accept_language"],
21
22
  ["CONTENT_TYPE", "request.header.content_type"],
22
23
  ["HTTP_USER_AGENT", "request.header.user_agent"],
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: honeycomb-beeline
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Holman
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-11-06 00:00:00.000000000 Z
11
+ date: 2021-01-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: libhoney
@@ -244,6 +244,7 @@ files:
244
244
  - ".rubocop.yml"
245
245
  - ".ruby-version"
246
246
  - Appraisals
247
+ - CHANGELOG.md
247
248
  - CODE_OF_CONDUCT.md
248
249
  - CONTRIBUTORS.md
249
250
  - Gemfile