presto-metrics 0.3.11 → 0.4.2

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
- SHA1:
3
- metadata.gz: 9617d545ab8d02a5d52eba1a50a2623f20ae4e55
4
- data.tar.gz: 7e5af26f44fd021a19b69e18cc3a8d3f1dad90c7
2
+ SHA256:
3
+ metadata.gz: '09f100f447203d34c25804b21b62ee7b2a57e3c0b53060be86ddce4518d2ea8a'
4
+ data.tar.gz: 63d2fb97c402172228943758a7ec95eb0efb86fd9b3014625570afb744dc4edc
5
5
  SHA512:
6
- metadata.gz: dc12934048e4a46f4c2f29611cbae251462b2db930e99993c454fd9edceb8ec111152ffcb73dc7cbfc508d1d15c7813eb2702780a95730e151c69a8385b142d8
7
- data.tar.gz: 1cdcf563633f9a6883f11f21dd97809face44c54adf6058ea052dc41a47ea5296e91a6962bfacd6a3f5e43fd3630c6ff37cbcfd537e6b6f74d985b69dd87d4de
6
+ metadata.gz: 0beaa114d8a79d0f44539d5e2ceb8135056bcb74cd16ec4ba119e01f76f5563ad126c22d468aaf3308c064eedc9086db7024eb8cad7e116e7e942127e99a3aa3
7
+ data.tar.gz: a2eb30bf49793be327e984b205daf28d92b001157b2cc0a6071795eb3dc9ad517d7eeb894226de3ad8435867f121f15decdd1922f2cd07387e31b6f4e19a2773
data/README.md CHANGED
@@ -61,12 +61,12 @@ client.os_metrics # java.lang:type=OperatingSystm
61
61
  client.gc_cms_metrics # java.lang:type=GarbageCollector,name=ConcurrentMarkSweep
62
62
  client.gc_parnew_metrics # java.lang:type=GarbageCollector,name=ParNew
63
63
  client.gc_g1_metrics # java.lang:type=GarbageCollector,name=G1 Young Generation and G1 Old Genration
64
- client.query_manager_metrics # com.facebook.presto.execution:name=QueryManager
65
- client.query_execution_metrics # com.facebook.presto.execution:name=QueryExecution
66
- client.node_scheduler_metrics # com.facebook.presto.execution:name=NodeScheduler
67
- client.task_executor_metrics # com.facebook.presto.execution:name=TaskExecutor
68
- client.task_manager_metrics # com.facebook.presto.execution:name=TaskManager
69
- client.cluster_memory_manager_metrics # com.facebook.presto.memory:name=ClusterMemoryManager
64
+ client.query_manager_metrics # presto.execution:name=QueryManager
65
+ client.query_execution_metrics # presto.execution:name=QueryExecution
66
+ client.node_scheduler_metrics # presto.execution:name=NodeScheduler
67
+ client.task_executor_metrics # presto.execution:name=TaskExecutor
68
+ client.task_manager_metrics # presto.execution:name=TaskManager
69
+ client.cluster_memory_manager_metrics # presto.memory:name=ClusterMemoryManager
70
70
 
71
71
  # Memory resource manager metrics (since Presto 0.103)
72
72
  client.memory_pool_metrics
@@ -251,3 +251,10 @@ irb> load "presto/metrics/client.rb"
251
251
 
252
252
  ```
253
253
 
254
+
255
+ ### Releasing a new version
256
+ ```
257
+ # Update version in lib/presto/metrics/version.rb
258
+ # Publish to RubyGem
259
+ $ bundle exec rake release
260
+ ```
@@ -16,6 +16,7 @@ module Presto
16
16
  @query_path = opts[:query_path] || '/v1/query'
17
17
  @node_path = opts[:node_path] || '/v1/node'
18
18
  @caml_case = opts[:caml_case] || false
19
+ @headers = opts[:headers] || {}
19
20
  end
20
21
 
21
22
  @@MBEAN_ALIAS = {
@@ -23,18 +24,18 @@ module Presto
23
24
  'gc_cms' => 'java.lang:type=GarbageCollector,name=ConcurrentMarkSweep',
24
25
  'gc_parnew' => 'java.lang:type=GarbageCollector,name=ParNew',
25
26
  'os' => 'java.lang:type=OperatingSystem',
26
- 'query_manager' => 'com.facebook.presto.execution:name=QueryManager',
27
- 'query_execution' => 'com.facebook.presto.execution:name=QueryExecution',
28
- 'node_scheduler' => 'com.facebook.presto.execution:name=NodeScheduler',
29
- 'task_executor' => 'com.facebook.presto.execution:name=TaskExecutor',
30
- 'task_manager' => 'com.facebook.presto.execution:name=TaskManager',
31
- 'memory_pool_general' => 'com.facebook.presto.memory:type=MemoryPool,name=general',
32
- 'memory_pool_reserved' => 'com.facebook.presto.memory:type=MemoryPool,name=reserved',
33
- 'memory_pool_system' => 'com.facebook.presto.memory:type=MemoryPool,name=system',
34
- 'cluster_memory_manager' => 'com.facebook.presto.memory:name=ClusterMemoryManager',
35
- 'cluster_memory_pool_general' => 'com.facebook.presto.memory:type=ClusterMemoryPool,name=general',
36
- 'cluster_memory_pool_reserved' => 'com.facebook.presto.memory:type=ClusterMemoryPool,name=reserved',
37
- 'cluster_memory_pool_system' => 'com.facebook.presto.memory:type=ClusterMemoryPool,name=system',
27
+ 'query_manager' => 'presto.execution:name=QueryManager',
28
+ 'query_execution' => 'presto.execution:name=QueryExecution',
29
+ 'split_scheduler_stats' => 'presto.execution.scheduler:name=SplitSchedulerStats',
30
+ 'task_executor' => 'presto.execution.executor:name=TaskExecutor',
31
+ 'task_manager' => 'presto.execution:name=TaskManager',
32
+ 'memory_pool_general' => 'presto.memory:type=MemoryPool,name=general',
33
+ 'memory_pool_reserved' => 'presto.memory:type=MemoryPool,name=reserved',
34
+ 'cluster_memory_manager' => 'presto.memory:name=ClusterMemoryManager',
35
+ 'cluster_memory_pool_general' => 'presto.memory:type=ClusterMemoryPool,name=general',
36
+ 'cluster_memory_pool_reserved' => 'presto.memory:type=ClusterMemoryPool,name=reserved',
37
+ 'discovery_node_manager' => 'presto.metadata:name=DiscoveryNodeManager',
38
+ 'pause_meter' => 'io.airlift.stats:name=PauseMeter',
38
39
  }
39
40
 
40
41
  def path(path)
@@ -79,7 +80,7 @@ module Presto
79
80
  end
80
81
 
81
82
  def get(path, default='{}')
82
- resp = HTTParty.get(URI.encode("#{@endpoint}#{path}"))
83
+ resp = HTTParty.get(URI.encode("#{@endpoint}#{path}"), headers: @headers)
83
84
  if resp.code == 200
84
85
  resp.body
85
86
  else
@@ -197,39 +198,39 @@ module Presto
197
198
  end
198
199
 
199
200
  def query_manager_metrics(target_attr=[])
200
- get_metrics('com.facebook.presto.execution:name=QueryManager', target_attr)
201
+ get_metrics('presto.execution:name=QueryManager', target_attr)
201
202
  end
202
203
 
203
204
  def query_execution_metrics(target_attr=[])
204
- get_metrics('com.facebook.presto.execution:name=QueryExecution', target_attr)
205
+ get_metrics('presto.execution:name=QueryExecution', target_attr)
205
206
  end
206
207
 
207
208
  def node_scheduler_metrics(target_attr=[])
208
- get_metrics('com.facebook.presto.execution:name=NodeScheduler', target_attr)
209
+ get_metrics('presto.execution:name=NodeScheduler', target_attr)
209
210
  end
210
211
 
211
212
  def task_executor_metrics(target_attr=[])
212
- get_metrics('com.facebook.presto.execution:name=TaskExecutor', target_attr)
213
+ get_metrics('presto.execution:name=TaskExecutor', target_attr)
213
214
  end
214
215
 
215
216
  def task_manager_metrics(target_attr=[])
216
- get_metrics('com.facebook.presto.execution:name=TaskManager', target_attr)
217
+ get_metrics('presto.execution:name=TaskManager', target_attr)
217
218
  end
218
219
 
219
220
  def memory_pool_metrics(target_attr=[])
220
- ['general', 'reserved', 'system'].each_with_object({}) {|type, hash|
221
- hash[type] = get_metrics("com.facebook.presto.memory:type=MemoryPool,name=#{type}", target_attr)
221
+ ['general', 'reserved'].each_with_object({}) {|type, hash|
222
+ hash[type] = get_metrics("presto.memory:type=MemoryPool,name=#{type}", target_attr)
222
223
  }
223
224
  end
224
225
 
225
226
  def cluster_memory_pool_metrics(target_attr=[])
226
- ['general', 'reserved', 'system'].each_with_object({}) {|type, hash|
227
- hash[type] = get_metrics("com.facebook.presto.memory:type=ClusterMemoryPool,name=#{type}", target_attr)
227
+ ['general', 'reserved'].each_with_object({}) {|type, hash|
228
+ hash[type] = get_metrics("presto.memory:type=ClusterMemoryPool,name=#{type}", target_attr)
228
229
  }
229
230
  end
230
231
 
231
232
  def cluster_memory_manager_metrics(target_attr=[])
232
- get_metrics("com.facebook.presto.memory:name=ClusterMemoryManager", target_attr)
233
+ get_metrics("presto.memory:name=ClusterMemoryManager", target_attr)
233
234
  end
234
235
 
235
236
 
@@ -144,15 +144,16 @@ module Presto
144
144
  h['query_id'] = qi['queryId'] || ''
145
145
  h['state'] = qi['state'] || ''
146
146
  session = qi['session'] || {}
147
+ stats = qi['queryStats'] || {}
147
148
  h['source'] = session['source'] || ''
148
149
  h['user'] = session['user'] || h['source'].gsub(/[^a-zA-Z0-9]/, '')
149
- h['running_drivers'] = qi['runningDrivers'] || 0
150
- h['queued_drivers'] = qi['queuedDrivers'] || 0
151
- h['completed_drivers'] = qi['completedDrivers'] || 0
152
- h['total_drivers'] = qi['totalDrivers'] || 0
153
- h['elapsed_time'] = qi['elapsedTime'] || '0.0m'
154
- h['create_time'] = qi['createTime']
155
- h['running_time'] = qi['endTime'] || Time.now.utc.iso8601(3)
150
+ h['running_drivers'] = stats['runningDrivers'] || 0
151
+ h['queued_drivers'] = stats['queuedDrivers'] || 0
152
+ h['completed_drivers'] = stats['completedDrivers'] || 0
153
+ h['total_drivers'] = stats['totalDrivers'] || 0
154
+ h['elapsed_time'] = stats['elapsedTime'] || '0.0m'
155
+ h['create_time'] = stats['createTime']
156
+ h['running_time'] = stats['endTime'] || Time.now.utc.iso8601(3) # end_time ?
156
157
  #if(h['state'] == "FAILED")
157
158
  # h['errorCode'] = find(h['query_id'])['errorCode'] || {}
158
159
  #end
@@ -1,5 +1,5 @@
1
1
  module Presto
2
2
  module Metrics
3
- VERSION = '0.3.11'
3
+ VERSION = '0.4.2'
4
4
  end
5
5
  end
@@ -18,10 +18,10 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_development_dependency "bundler", "~> 1.7"
21
+ spec.add_development_dependency "bundler", "~> 2.0"
22
22
  spec.add_development_dependency "rake", "~> 10.0"
23
23
  spec.add_development_dependency "rspec"
24
- spec.add_development_dependency "presto-client", '~> 0.4.4'
24
+ spec.add_development_dependency "presto-client", '~> 0.5.6'
25
25
  spec.add_development_dependency "httpclient"
26
26
 
27
27
  spec.add_runtime_dependency "httparty"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: presto-metrics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.11
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Taro L. Saito
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-18 00:00:00.000000000 Z
11
+ date: 2021-08-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.7'
19
+ version: '2.0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.7'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 0.4.4
61
+ version: 0.5.6
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 0.4.4
68
+ version: 0.5.6
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: httpclient
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -135,8 +135,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
135
  - !ruby/object:Gem::Version
136
136
  version: '0'
137
137
  requirements: []
138
- rubyforge_project:
139
- rubygems_version: 2.4.5
138
+ rubygems_version: 3.2.25
140
139
  signing_key:
141
140
  specification_version: 4
142
141
  summary: A library for collecting metrics of Presto, a distributed SQL engine