stackdriver 0.6.0 → 0.7.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
  SHA1:
3
- metadata.gz: 3af2ef00b759167096f7eac570470349a215cef3
4
- data.tar.gz: ae7f5ce2901d86f1055660d45303f08de8e4b0ff
3
+ metadata.gz: ca123e1fda77f302e2a8bfeaba680a958b4a07c5
4
+ data.tar.gz: 3a847dcce91db56da0a6961bdbea5d5f5ed35e82
5
5
  SHA512:
6
- metadata.gz: e142727f3a4b4ed86fe1fb37e2257f4d9a8a54b64740e29a72fd5b18ad8552a2aa6e5f2ce251566dc67f0699777f01faf440fa60fffa179f93529a2e94d01790
7
- data.tar.gz: db47005b00acfa602098900817e1d49fa85ff3cf3c8cbadf46f2389a9830e66a91a29d34f135a173c84439ce152b6e54db07d430d1862d040130014eaf753ef7
6
+ metadata.gz: 1b9b086c1fd1ba37cdfb876cbe76ed7639a4b30b691b9c1ef0e9f191dd586eb45857757eae2bd77b569ad9a15e3fec2f3c80b42d9f3f2d82ac742c4e23b7b97a
7
+ data.tar.gz: bc2384880a2bf44f3f6aec2c8456c3a134aef78e63f9c2a8ab162322dafc99ecd3946f5129f17adb24c7cb299869788842f83592cf696fd2bed95f4f1d3f0bfb
data/README.md CHANGED
@@ -3,8 +3,9 @@
3
3
  This gem instruments a Ruby web application for Stackdriver diagnostics. When loaded, it integrates with Rails, Sinatra, or other Rack-based web frameworks to collect application diagnostic and monitoring information for your application.
4
4
 
5
5
  Specifically, this gem is a convenience package that loads and automatically activates the instrumentation features of the following gems:
6
- - [google-cloud-logging](../google-cloud-logging)
6
+ - [google-cloud-debugger](../google-cloud-debugger)
7
7
  - [google-cloud-error_reporting](../google-cloud-error_reporting)
8
+ - [google-cloud-logging](../google-cloud-logging)
8
9
  - [google-cloud-trace](../google-cloud-trace)
9
10
 
10
11
  Please see the top-level project [README](../README.md) for more information about the individual Stackdriver google-cloud-ruby gems.
@@ -23,7 +24,7 @@ require "stackdriver"
23
24
 
24
25
  ## Supported Ruby Versions
25
26
 
26
- This library is supported on Ruby 2.0+.
27
+ This library is supported on Ruby 2.2+.
27
28
 
28
29
  ## Versioning
29
30
 
data/lib/stackdriver.rb CHANGED
@@ -13,23 +13,23 @@
13
13
  # limitations under the License.
14
14
 
15
15
 
16
+ gem "google-cloud-debugger"
16
17
  gem "google-cloud-error_reporting"
17
18
  gem "google-cloud-logging"
18
19
  gem "google-cloud-trace"
19
20
 
21
+ require "google/cloud/debugger"
22
+ require "google/cloud/error_reporting"
20
23
  require "google/cloud/logging"
21
24
  require "google/cloud/trace"
22
- require "google/cloud/error_reporting"
23
25
 
24
26
  if defined? ::Rails::Railtie
27
+ require "google/cloud/debugger/rails"
25
28
  require "google/cloud/error_reporting/rails"
26
29
  require "google/cloud/logging/rails"
27
30
  require "google/cloud/trace/rails"
28
31
  end
29
32
 
30
- # Backward compatibility with legacy stackdriver gem
31
- require "legacy_stackdriver"
32
-
33
33
  ##
34
34
  # # Stackdriver
35
35
  #
@@ -39,14 +39,16 @@ require "legacy_stackdriver"
39
39
  # information for your application.
40
40
  #
41
41
  # Specifically, this gem is a convenience package that loads the following gems:
42
- # - [google-cloud-logging](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-logging)
42
+ # - [google-cloud-debugger](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-debugger)
43
43
  # - [google-cloud-error_reporting](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-error_reporting)
44
+ # - [google-cloud-logging](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-logging)
44
45
  # - [google-cloud-trace](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-trace)
45
46
  #
46
47
  # On top of that, stackdriver gem automatically activates the following
47
48
  # instrumentation features:
48
- # - [google-cloud-logging instrumentation](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/stackdriver/guides/logging_instrumentation)
49
+ # - [google-cloud-debugger instrumentation](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/stackdriver/guides/debugger_instrumentation)
49
50
  # - [google-cloud-error_reporting instrumentation](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/stackdriver/guides/error_reporting_instrumentation)
51
+ # - [google-cloud-logging instrumentation](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/stackdriver/guides/logging_instrumentation)
50
52
  # - [google-cloud-trace instrumentation](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/stackdriver/guides/trace_instrumentation)
51
53
  #
52
54
  #
@@ -14,5 +14,5 @@
14
14
 
15
15
 
16
16
  module Stackdriver
17
- VERSION = "0.6.0".freeze
17
+ VERSION = "0.7.0".freeze
18
18
  end
metadata CHANGED
@@ -1,57 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stackdriver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Heng Xiong
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-05-26 00:00:00.000000000 Z
11
+ date: 2017-07-12 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: google-cloud-debugger
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.26.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.26.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: google-cloud-error_reporting
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
31
  - - "~>"
18
32
  - !ruby/object:Gem::Version
19
- version: 0.25.0
33
+ version: 0.26.0
20
34
  type: :runtime
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
38
  - - "~>"
25
39
  - !ruby/object:Gem::Version
26
- version: 0.25.0
40
+ version: 0.26.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: google-cloud-logging
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
- version: '1.0'
47
+ version: '1.2'
34
48
  type: :runtime
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
52
  - - "~>"
39
53
  - !ruby/object:Gem::Version
40
- version: '1.0'
54
+ version: '1.2'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: google-cloud-trace
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
59
  - - "~>"
46
60
  - !ruby/object:Gem::Version
47
- version: 0.25.0
61
+ version: 0.26.0
48
62
  type: :runtime
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: 0.25.0
68
+ version: 0.26.0
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: minitest
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -202,7 +216,6 @@ files:
202
216
  - ".yardopts"
203
217
  - LICENSE
204
218
  - README.md
205
- - lib/legacy_stackdriver.rb
206
219
  - lib/stackdriver.rb
207
220
  - lib/stackdriver/version.rb
208
221
  homepage: https://github.com/GoogleCloudPlatform/google-cloud-ruby/tree/master/stackdriver
@@ -217,7 +230,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
217
230
  requirements:
218
231
  - - ">="
219
232
  - !ruby/object:Gem::Version
220
- version: 2.0.0
233
+ version: 2.2.0
221
234
  required_rubygems_version: !ruby/object:Gem::Requirement
222
235
  requirements:
223
236
  - - ">="
@@ -1,106 +0,0 @@
1
- # Copyright (c) 2013 Grant T. Olson
2
- # All rights reserved.
3
- #
4
- # Redistribution and use in source and binary forms, with or without
5
- # modification, are permitted provided that the following conditions are
6
- # met:
7
- #
8
- # * Redistributions of source code must retain the above copyright
9
- # notice, this list of conditions and the following disclaimer.
10
- #
11
- # * Redistributions in binary form must reproduce the above
12
- # copyright notice, this list of conditions and the following
13
- # disclaimer in the documentation and/or other materials provided
14
- # with the distribution.
15
- #
16
- # * Neither the name of the Grant T. Olson nor the names of
17
- # additional contributors may be used to endorse or promote
18
- # products derived from this software without specific prior
19
- # written permission.
20
- #
21
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
- # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
- # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24
- # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25
- # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26
- # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28
- # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29
- # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30
- # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31
- # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32
-
33
-
34
- #
35
- # This file provides backward compatibility with legacy stackdriver v0.2.2 gem.
36
- # Original code can be found at https://github.com/sammarx/stackdriver-ruby
37
- #
38
- require 'multi_json'
39
-
40
- module StackDriver
41
- POST_URI = "https://custom-gateway.stackdriver.com/v1/custom"
42
- DELETE_URI = "https://custom-gateway.stackdriver.com/v1/delete_custom"
43
-
44
- def self.init *args
45
- # Deprecation message
46
- puts "This usage is specific to the legacy Stackdriver service. It is " \
47
- "deprecated and will be removed at some point in the future. Please " \
48
- "migrate to the Google Stackdriver API documented at " \
49
- "https://googlecloudplatform.github.io/google-cloud-ruby/"
50
-
51
- if args.count > 1
52
- puts "Customer ID is no longer needed, and will be deprecated"
53
- args.shift
54
- end
55
- @api_key = args[0]
56
- end
57
-
58
- def self.send_metric name, value, time, instance=''
59
- msg = build_message name, value, time, instance
60
- post MultiJson.dump(msg), StackDriver::POST_URI
61
- end
62
-
63
- def self.send_multi_metrics data
64
- msg = build_multi_message data
65
- post MultiJson.dump(msg), StackDriver::POST_URI
66
- end
67
-
68
- def self.delete_metric name, time
69
- msg = build_message name, nil, time
70
- post MultiJson.dump(msg), StackDriver::DELETE_URI
71
- end
72
-
73
- private
74
-
75
- def self.post msg, uri
76
- headers = {'content-type' => 'application/json',
77
- 'x-stackdriver-apikey' => @api_key}
78
-
79
- uri = URI(uri)
80
- http = Net::HTTP.new(uri.host, uri.port)
81
- http.use_ssl = true
82
-
83
- http.start do |http|
84
- response = http.post(uri.path, msg, headers)
85
- if response.code != "201"
86
- raise RuntimeError, "#{response.code} - #{response.body}"
87
- end
88
- end
89
- end
90
-
91
- def self.build_message name, value, time, instance=''
92
- data_point = {'name' => name, 'value' => value, 'collected_at' => time}
93
- data_point.merge!('value' => value) unless value.nil?
94
- data_point.merge!('instance' => instance) unless instance.empty?
95
- {'timestamp' => Time.now.to_i, 'proto_version' => '1', 'data' => data_point}
96
- end
97
-
98
- def self.build_multi_message data
99
- data_point = data
100
- {
101
- 'timestamp' => Time.now.to_i,
102
- 'proto_version' => '1',
103
- 'data' => data_point
104
- }
105
- end
106
- end