azure_application_insights 0.5.7

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.
Files changed (86) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/gem-push.yml +34 -0
  3. data/.gitignore +40 -0
  4. data/.travis.yml +22 -0
  5. data/CHANGELOG.md +17 -0
  6. data/CONTRIBUTING.md +68 -0
  7. data/Gemfile +4 -0
  8. data/LICENSE.txt +11 -0
  9. data/README.md +161 -0
  10. data/Rakefile +15 -0
  11. data/application_insights.gemspec +30 -0
  12. data/lib/application_insights/channel/asynchronous_queue.rb +58 -0
  13. data/lib/application_insights/channel/asynchronous_sender.rb +133 -0
  14. data/lib/application_insights/channel/contracts/application.rb +14 -0
  15. data/lib/application_insights/channel/contracts/cloud.rb +14 -0
  16. data/lib/application_insights/channel/contracts/data.rb +14 -0
  17. data/lib/application_insights/channel/contracts/data_point.rb +24 -0
  18. data/lib/application_insights/channel/contracts/data_point_type.rb +7 -0
  19. data/lib/application_insights/channel/contracts/dependency_kind.rb +9 -0
  20. data/lib/application_insights/channel/contracts/dependency_source_type.rb +9 -0
  21. data/lib/application_insights/channel/contracts/device.rb +28 -0
  22. data/lib/application_insights/channel/contracts/envelope.rb +40 -0
  23. data/lib/application_insights/channel/contracts/event_data.rb +28 -0
  24. data/lib/application_insights/channel/contracts/exception_data.rb +37 -0
  25. data/lib/application_insights/channel/contracts/exception_details.rb +28 -0
  26. data/lib/application_insights/channel/contracts/internal.rb +14 -0
  27. data/lib/application_insights/channel/contracts/json_serializable.rb +59 -0
  28. data/lib/application_insights/channel/contracts/location.rb +16 -0
  29. data/lib/application_insights/channel/contracts/message_data.rb +24 -0
  30. data/lib/application_insights/channel/contracts/metric_data.rb +27 -0
  31. data/lib/application_insights/channel/contracts/operation.rb +19 -0
  32. data/lib/application_insights/channel/contracts/page_view_data.rb +30 -0
  33. data/lib/application_insights/channel/contracts/remote_dependency_data.rb +56 -0
  34. data/lib/application_insights/channel/contracts/request_data.rb +36 -0
  35. data/lib/application_insights/channel/contracts/session.rb +15 -0
  36. data/lib/application_insights/channel/contracts/severity_level.rb +13 -0
  37. data/lib/application_insights/channel/contracts/stack_frame.rb +17 -0
  38. data/lib/application_insights/channel/contracts/user.rb +19 -0
  39. data/lib/application_insights/channel/event.rb +68 -0
  40. data/lib/application_insights/channel/queue_base.rb +73 -0
  41. data/lib/application_insights/channel/sender_base.rb +88 -0
  42. data/lib/application_insights/channel/synchronous_queue.rb +45 -0
  43. data/lib/application_insights/channel/synchronous_sender.rb +17 -0
  44. data/lib/application_insights/channel/telemetry_channel.rb +131 -0
  45. data/lib/application_insights/channel/telemetry_context.rb +85 -0
  46. data/lib/application_insights/rack/track_request.rb +158 -0
  47. data/lib/application_insights/telemetry_client.rb +229 -0
  48. data/lib/application_insights/unhandled_exception.rb +49 -0
  49. data/lib/application_insights/version.rb +3 -0
  50. data/lib/application_insights.rb +9 -0
  51. data/test/application_insights/channel/contracts/test_application.rb +44 -0
  52. data/test/application_insights/channel/contracts/test_cloud.rb +44 -0
  53. data/test/application_insights/channel/contracts/test_data.rb +44 -0
  54. data/test/application_insights/channel/contracts/test_data_point.rb +109 -0
  55. data/test/application_insights/channel/contracts/test_device.rb +200 -0
  56. data/test/application_insights/channel/contracts/test_envelope.rb +209 -0
  57. data/test/application_insights/channel/contracts/test_event_data.rb +62 -0
  58. data/test/application_insights/channel/contracts/test_exception_data.rb +111 -0
  59. data/test/application_insights/channel/contracts/test_exception_details.rb +106 -0
  60. data/test/application_insights/channel/contracts/test_internal.rb +44 -0
  61. data/test/application_insights/channel/contracts/test_location.rb +70 -0
  62. data/test/application_insights/channel/contracts/test_message_data.rb +66 -0
  63. data/test/application_insights/channel/contracts/test_metric_data.rb +50 -0
  64. data/test/application_insights/channel/contracts/test_operation.rb +109 -0
  65. data/test/application_insights/channel/contracts/test_page_view_data.rb +88 -0
  66. data/test/application_insights/channel/contracts/test_remote_dependency_data.rb +209 -0
  67. data/test/application_insights/channel/contracts/test_request_data.rb +153 -0
  68. data/test/application_insights/channel/contracts/test_session.rb +57 -0
  69. data/test/application_insights/channel/contracts/test_stack_frame.rb +83 -0
  70. data/test/application_insights/channel/contracts/test_user.rb +96 -0
  71. data/test/application_insights/channel/test_asynchronous_queue.rb +47 -0
  72. data/test/application_insights/channel/test_asynchronous_sender.rb +81 -0
  73. data/test/application_insights/channel/test_event.rb +53 -0
  74. data/test/application_insights/channel/test_queue_base.rb +89 -0
  75. data/test/application_insights/channel/test_sender_base.rb +94 -0
  76. data/test/application_insights/channel/test_synchronous_queue.rb +28 -0
  77. data/test/application_insights/channel/test_synchronous_sender.rb +11 -0
  78. data/test/application_insights/channel/test_telemetry_channel.rb +167 -0
  79. data/test/application_insights/channel/test_telemetry_context.rb +83 -0
  80. data/test/application_insights/mock_sender.rb +37 -0
  81. data/test/application_insights/rack/test_track_request.rb +182 -0
  82. data/test/application_insights/test_logger.rb +10 -0
  83. data/test/application_insights/test_telemetry_client.rb +138 -0
  84. data/test/application_insights/test_unhandled_exception.rb +23 -0
  85. data/test/application_insights.rb +8 -0
  86. metadata +247 -0
@@ -0,0 +1,138 @@
1
+ require_relative '../../lib/application_insights/telemetry_client'
2
+ require_relative '../../lib/application_insights/channel/sender_base'
3
+ require_relative '../../lib/application_insights/channel/synchronous_queue'
4
+ require_relative '../../lib/application_insights/channel/telemetry_channel'
5
+ require 'json'
6
+ require 'test/unit'
7
+ require 'time'
8
+
9
+ include ApplicationInsights
10
+
11
+ class TestTelemetryClient < Test::Unit::TestCase
12
+ def test_initialize
13
+ client = TelemetryClient.new
14
+ assert_not_nil client.context
15
+ assert_not_nil client.channel
16
+
17
+ channel = Object.new
18
+ client = TelemetryClient.new 'a', channel
19
+ assert_not_nil client.context
20
+ assert_same channel, client.channel
21
+ assert_equal 'a', client.context.instrumentation_key
22
+ end
23
+
24
+ def test_context_property_works_as_expected
25
+ client = TelemetryClient.new
26
+ assert_not_nil client.context
27
+ end
28
+
29
+ def test_channel_property_works_as_expected
30
+ client = TelemetryClient.new
31
+ assert_not_nil client.channel
32
+ end
33
+
34
+ def test_track_page_view_works_as_expected
35
+ client, sender = self.create_client
36
+ client.track_page_view 'test', 'http://tempuri.org'
37
+ client.flush
38
+ expected = '[{"ver":1,"name":"Microsoft.ApplicationInsights.PageView","time":"TIME_PLACEHOLDER","sampleRate":100.0,"tags":{"ai.internal.sdkVersion":"rb:__version__"},"data":{"baseType":"PageViewData","baseData":{"ver":2,"url":"http://tempuri.org","name":"test"}}}]'.gsub!(/__version__/, ApplicationInsights::VERSION)
39
+ sender.data_to_send[0].time = 'TIME_PLACEHOLDER'
40
+ actual = sender.data_to_send.to_json
41
+ assert_equal expected, actual
42
+ end
43
+
44
+ def test_track_exception_works_as_expected
45
+ client, sender = self.create_client
46
+ begin
47
+ raise ArgumentError, 'Some error'
48
+ rescue => e
49
+ client.track_exception e
50
+ end
51
+ client.flush
52
+ expected = '[{"ver":1,"name":"Microsoft.ApplicationInsights.Exception","time":"TIME_PLACEHOLDER","sampleRate":100.0,"tags":{"ai.internal.sdkVersion":"rb:__version__"},"data":{"baseType":"ExceptionData","baseData":{"ver":2,"handledAt":"UserCode","exceptions":[{"id":1,"outerId":0,"typeName":"ArgumentError","message":"Some error","hasFullStack":true,"stack":"STACK_PLACEHOLDER"}]}}}]'.gsub!(/__version__/, ApplicationInsights::VERSION)
53
+ assert_equal 'UserCode', sender.data_to_send[0].data.base_data.handled_at
54
+ assert_operator sender.data_to_send[0].data.base_data.exceptions[0].parsed_stack.count, :>, 0
55
+ assert_equal 'test_track_exception_works_as_expected', sender.data_to_send[0].data.base_data.exceptions[0].parsed_stack[0].method
56
+ assert_equal __FILE__, sender.data_to_send[0].data.base_data.exceptions[0].parsed_stack[0].file_name
57
+ sender.data_to_send[0].time = 'TIME_PLACEHOLDER'
58
+ sender.data_to_send[0].data.base_data.exceptions[0].stack = 'STACK_PLACEHOLDER'
59
+ sender.data_to_send[0].data.base_data.exceptions[0].parsed_stack = []
60
+ actual = sender.data_to_send.to_json
61
+ assert_equal expected, actual
62
+ end
63
+
64
+ def test_track_event_works_as_expected
65
+ client, sender = self.create_client
66
+ client.track_event 'test'
67
+ client.flush
68
+ expected = '[{"ver":1,"name":"Microsoft.ApplicationInsights.Event","time":"TIME_PLACEHOLDER","sampleRate":100.0,"tags":{"ai.internal.sdkVersion":"rb:__version__"},"data":{"baseType":"EventData","baseData":{"ver":2,"name":"test"}}}]'.gsub!(/__version__/, ApplicationInsights::VERSION)
69
+ sender.data_to_send[0].time = 'TIME_PLACEHOLDER'
70
+ actual = sender.data_to_send.to_json
71
+ assert_equal expected, actual
72
+ end
73
+
74
+ def test_track_metric_works_as_expected
75
+ client, sender = self.create_client
76
+ client.track_metric 'test', 42
77
+ client.flush
78
+ expected = '[{"ver":1,"name":"Microsoft.ApplicationInsights.Metric","time":"TIME_PLACEHOLDER","sampleRate":100.0,"tags":{"ai.internal.sdkVersion":"rb:__version__"},"data":{"baseType":"MetricData","baseData":{"ver":2,"metrics":[{"name":"test","kind":1,"value":42}]}}}]'.gsub!(/__version__/, ApplicationInsights::VERSION)
79
+ sender.data_to_send[0].time = 'TIME_PLACEHOLDER'
80
+ actual = sender.data_to_send.to_json
81
+ assert_equal expected, actual
82
+ end
83
+
84
+ def test_track_trace_view_works_as_expected
85
+ client, sender = self.create_client
86
+ client.track_trace 'test', Channel::Contracts::SeverityLevel::WARNING
87
+ client.flush
88
+ expected = '[{"ver":1,"name":"Microsoft.ApplicationInsights.Message","time":"TIME_PLACEHOLDER","sampleRate":100.0,"tags":{"ai.internal.sdkVersion":"rb:__version__"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"test","severityLevel":2}}}]'.gsub!(/__version__/, ApplicationInsights::VERSION)
89
+ sender.data_to_send[0].time = 'TIME_PLACEHOLDER'
90
+ actual = sender.data_to_send.to_json
91
+ assert_equal expected, actual
92
+ end
93
+
94
+ def test_track_request_works_as_expected
95
+ start_time = Time.now.iso8601
96
+ client, sender = self.create_client
97
+ client.track_request 'test', start_time, '0:00:00:02.0000000','200', true
98
+ client.flush
99
+ expected = '[{"ver":1,"name":"Microsoft.ApplicationInsights.Request","time":"__time__","sampleRate":100.0,"tags":{"ai.internal.sdkVersion":"rb:__version__"},"data":{"baseType":"RequestData","baseData":{"ver":2,"id":"test","startTime":"__time__","duration":"0:00:00:02.0000000","responseCode":"200","success":true}}}]'
100
+ .gsub!(/__version__/, ApplicationInsights::VERSION)
101
+ .gsub!(/__time__/, start_time)
102
+ actual = sender.data_to_send.to_json
103
+ assert_equal expected, actual
104
+ end
105
+
106
+ def test_track_request_works_as_expected_when_request_is_failed
107
+ start_time = Time.now.iso8601
108
+ client, sender = self.create_client
109
+ client.track_request 'test', start_time, '0:00:00:02.0000000','200', false
110
+ client.flush
111
+ expected = '[{"ver":1,"name":"Microsoft.ApplicationInsights.Request","time":"__time__","sampleRate":100.0,"tags":{"ai.internal.sdkVersion":"rb:__version__"},"data":{"baseType":"RequestData","baseData":{"ver":2,"id":"test","startTime":"__time__","duration":"0:00:00:02.0000000","responseCode":"200","success":false}}}]'
112
+ .gsub!(/__version__/, ApplicationInsights::VERSION)
113
+ .gsub!(/__time__/, start_time)
114
+ actual = sender.data_to_send.to_json
115
+ assert_equal expected, actual
116
+ end
117
+
118
+ def create_client
119
+ sender = MockTelemetryClientSender.new
120
+ queue = Channel::SynchronousQueue.new sender
121
+ channel = Channel::TelemetryChannel.new nil, queue
122
+ client = TelemetryClient.new nil, channel
123
+ return client, sender
124
+ end
125
+ end
126
+
127
+ class MockTelemetryClientSender < Channel::SenderBase
128
+ def initialize
129
+ super 'http://tempuri.org'
130
+ @data_to_send = []
131
+ end
132
+
133
+ attr_accessor :data_to_send
134
+
135
+ def send(data_to_send)
136
+ @data_to_send = data_to_send
137
+ end
138
+ end
@@ -0,0 +1,23 @@
1
+ require 'test/unit'
2
+ require_relative 'mock_sender'
3
+ require_relative '../../lib/application_insights/unhandled_exception'
4
+
5
+ include ApplicationInsights
6
+
7
+ class TestUnhandledException < Test::Unit::TestCase
8
+ def test_send
9
+ sender = MockSynchronousSender.new
10
+ error = 'Boom!'
11
+ instrumentation_key = 'one'
12
+ begin
13
+ raise StandardError, error
14
+ rescue
15
+ UnhandledException.send instrumentation_key, sender
16
+ end
17
+ payload = sender.buffer[0]
18
+
19
+ assert_equal 1, sender.buffer.count
20
+ assert_equal instrumentation_key, payload[0].i_key
21
+ assert_equal 'Unhandled', payload[0].data.base_data.handled_at
22
+ end
23
+ end
@@ -0,0 +1,8 @@
1
+ require 'find'
2
+
3
+ test = File.expand_path('../application_insights', __FILE__)
4
+ Find.find test do |path|
5
+ if FileTest.file? path
6
+ require path
7
+ end
8
+ end
metadata ADDED
@@ -0,0 +1,247 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: azure_application_insights
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.5.7
5
+ platform: ruby
6
+ authors:
7
+ - Daniel Blasina
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2022-11-10 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '10.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '10.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: yard
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.9.11
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.9.11
41
+ - !ruby/object:Gem::Dependency
42
+ name: redcarpet
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 3.2.2
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 3.2.2
55
+ - !ruby/object:Gem::Dependency
56
+ name: rack
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: 1.0.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: 1.0.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: test-unit
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 3.0.8
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 3.0.8
83
+ - !ruby/object:Gem::Dependency
84
+ name: mocha
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 1.5.0
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 1.5.0
97
+ description: This project extends the Application Insights API surface to support
98
+ Ruby.
99
+ email:
100
+ - blzk100@gmail.com
101
+ executables: []
102
+ extensions: []
103
+ extra_rdoc_files: []
104
+ files:
105
+ - ".github/workflows/gem-push.yml"
106
+ - ".gitignore"
107
+ - ".travis.yml"
108
+ - CHANGELOG.md
109
+ - CONTRIBUTING.md
110
+ - Gemfile
111
+ - LICENSE.txt
112
+ - README.md
113
+ - Rakefile
114
+ - application_insights.gemspec
115
+ - lib/application_insights.rb
116
+ - lib/application_insights/channel/asynchronous_queue.rb
117
+ - lib/application_insights/channel/asynchronous_sender.rb
118
+ - lib/application_insights/channel/contracts/application.rb
119
+ - lib/application_insights/channel/contracts/cloud.rb
120
+ - lib/application_insights/channel/contracts/data.rb
121
+ - lib/application_insights/channel/contracts/data_point.rb
122
+ - lib/application_insights/channel/contracts/data_point_type.rb
123
+ - lib/application_insights/channel/contracts/dependency_kind.rb
124
+ - lib/application_insights/channel/contracts/dependency_source_type.rb
125
+ - lib/application_insights/channel/contracts/device.rb
126
+ - lib/application_insights/channel/contracts/envelope.rb
127
+ - lib/application_insights/channel/contracts/event_data.rb
128
+ - lib/application_insights/channel/contracts/exception_data.rb
129
+ - lib/application_insights/channel/contracts/exception_details.rb
130
+ - lib/application_insights/channel/contracts/internal.rb
131
+ - lib/application_insights/channel/contracts/json_serializable.rb
132
+ - lib/application_insights/channel/contracts/location.rb
133
+ - lib/application_insights/channel/contracts/message_data.rb
134
+ - lib/application_insights/channel/contracts/metric_data.rb
135
+ - lib/application_insights/channel/contracts/operation.rb
136
+ - lib/application_insights/channel/contracts/page_view_data.rb
137
+ - lib/application_insights/channel/contracts/remote_dependency_data.rb
138
+ - lib/application_insights/channel/contracts/request_data.rb
139
+ - lib/application_insights/channel/contracts/session.rb
140
+ - lib/application_insights/channel/contracts/severity_level.rb
141
+ - lib/application_insights/channel/contracts/stack_frame.rb
142
+ - lib/application_insights/channel/contracts/user.rb
143
+ - lib/application_insights/channel/event.rb
144
+ - lib/application_insights/channel/queue_base.rb
145
+ - lib/application_insights/channel/sender_base.rb
146
+ - lib/application_insights/channel/synchronous_queue.rb
147
+ - lib/application_insights/channel/synchronous_sender.rb
148
+ - lib/application_insights/channel/telemetry_channel.rb
149
+ - lib/application_insights/channel/telemetry_context.rb
150
+ - lib/application_insights/rack/track_request.rb
151
+ - lib/application_insights/telemetry_client.rb
152
+ - lib/application_insights/unhandled_exception.rb
153
+ - lib/application_insights/version.rb
154
+ - test/application_insights.rb
155
+ - test/application_insights/channel/contracts/test_application.rb
156
+ - test/application_insights/channel/contracts/test_cloud.rb
157
+ - test/application_insights/channel/contracts/test_data.rb
158
+ - test/application_insights/channel/contracts/test_data_point.rb
159
+ - test/application_insights/channel/contracts/test_device.rb
160
+ - test/application_insights/channel/contracts/test_envelope.rb
161
+ - test/application_insights/channel/contracts/test_event_data.rb
162
+ - test/application_insights/channel/contracts/test_exception_data.rb
163
+ - test/application_insights/channel/contracts/test_exception_details.rb
164
+ - test/application_insights/channel/contracts/test_internal.rb
165
+ - test/application_insights/channel/contracts/test_location.rb
166
+ - test/application_insights/channel/contracts/test_message_data.rb
167
+ - test/application_insights/channel/contracts/test_metric_data.rb
168
+ - test/application_insights/channel/contracts/test_operation.rb
169
+ - test/application_insights/channel/contracts/test_page_view_data.rb
170
+ - test/application_insights/channel/contracts/test_remote_dependency_data.rb
171
+ - test/application_insights/channel/contracts/test_request_data.rb
172
+ - test/application_insights/channel/contracts/test_session.rb
173
+ - test/application_insights/channel/contracts/test_stack_frame.rb
174
+ - test/application_insights/channel/contracts/test_user.rb
175
+ - test/application_insights/channel/test_asynchronous_queue.rb
176
+ - test/application_insights/channel/test_asynchronous_sender.rb
177
+ - test/application_insights/channel/test_event.rb
178
+ - test/application_insights/channel/test_queue_base.rb
179
+ - test/application_insights/channel/test_sender_base.rb
180
+ - test/application_insights/channel/test_synchronous_queue.rb
181
+ - test/application_insights/channel/test_synchronous_sender.rb
182
+ - test/application_insights/channel/test_telemetry_channel.rb
183
+ - test/application_insights/channel/test_telemetry_context.rb
184
+ - test/application_insights/mock_sender.rb
185
+ - test/application_insights/rack/test_track_request.rb
186
+ - test/application_insights/test_logger.rb
187
+ - test/application_insights/test_telemetry_client.rb
188
+ - test/application_insights/test_unhandled_exception.rb
189
+ homepage: https://github.com/blasko03/ApplicationInsights-Ruby/
190
+ licenses:
191
+ - MIT
192
+ metadata: {}
193
+ post_install_message:
194
+ rdoc_options: []
195
+ require_paths:
196
+ - lib
197
+ required_ruby_version: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ version: 1.9.3
202
+ required_rubygems_version: !ruby/object:Gem::Requirement
203
+ requirements:
204
+ - - ">="
205
+ - !ruby/object:Gem::Version
206
+ version: '0'
207
+ requirements: []
208
+ rubygems_version: 3.0.3.1
209
+ signing_key:
210
+ specification_version: 4
211
+ summary: Forked Application Insights SDK for Ruby
212
+ test_files:
213
+ - test/application_insights.rb
214
+ - test/application_insights/channel/contracts/test_application.rb
215
+ - test/application_insights/channel/contracts/test_cloud.rb
216
+ - test/application_insights/channel/contracts/test_data.rb
217
+ - test/application_insights/channel/contracts/test_data_point.rb
218
+ - test/application_insights/channel/contracts/test_device.rb
219
+ - test/application_insights/channel/contracts/test_envelope.rb
220
+ - test/application_insights/channel/contracts/test_event_data.rb
221
+ - test/application_insights/channel/contracts/test_exception_data.rb
222
+ - test/application_insights/channel/contracts/test_exception_details.rb
223
+ - test/application_insights/channel/contracts/test_internal.rb
224
+ - test/application_insights/channel/contracts/test_location.rb
225
+ - test/application_insights/channel/contracts/test_message_data.rb
226
+ - test/application_insights/channel/contracts/test_metric_data.rb
227
+ - test/application_insights/channel/contracts/test_operation.rb
228
+ - test/application_insights/channel/contracts/test_page_view_data.rb
229
+ - test/application_insights/channel/contracts/test_remote_dependency_data.rb
230
+ - test/application_insights/channel/contracts/test_request_data.rb
231
+ - test/application_insights/channel/contracts/test_session.rb
232
+ - test/application_insights/channel/contracts/test_stack_frame.rb
233
+ - test/application_insights/channel/contracts/test_user.rb
234
+ - test/application_insights/channel/test_asynchronous_queue.rb
235
+ - test/application_insights/channel/test_asynchronous_sender.rb
236
+ - test/application_insights/channel/test_event.rb
237
+ - test/application_insights/channel/test_queue_base.rb
238
+ - test/application_insights/channel/test_sender_base.rb
239
+ - test/application_insights/channel/test_synchronous_queue.rb
240
+ - test/application_insights/channel/test_synchronous_sender.rb
241
+ - test/application_insights/channel/test_telemetry_channel.rb
242
+ - test/application_insights/channel/test_telemetry_context.rb
243
+ - test/application_insights/mock_sender.rb
244
+ - test/application_insights/rack/test_track_request.rb
245
+ - test/application_insights/test_logger.rb
246
+ - test/application_insights/test_telemetry_client.rb
247
+ - test/application_insights/test_unhandled_exception.rb