@@ -22,15 +22,6 @@ require 'prometheus/api_client'
2222
2323# return a client for host http://localhost:9090/api/v1/
2424prometheus = Prometheus ::ApiClient .client
25-
26- prometheus.get(
27- ' query_range' ,
28- query: ' sum(container_cpu_usage_seconds_total' \
29- ' {container_name="prometheus-hgv4s",job="kubernetes-nodes"})' ,
30- start: ' 2015-07-01T20:10:30.781Z' ,
31- end: ' 2015-07-02T20:10:30.781Z' ,
32- step: ' 120s' ,
33- )
3425```
3526
3627#### Changing server hostname
@@ -51,6 +42,31 @@ prometheus = Prometheus::ApiClient.client(url: 'https://example.com:443'
5142 credentials: { token: ' TopSecret' })
5243```
5344
45+ #### Low lavel calls
46+
47+ ###### query
48+
49+ ``` ruby
50+ require ' prometheus/api_client'
51+
52+ prometheus.get(
53+ ' query_range' ,
54+ query: ' sum(container_cpu_usage_seconds_total' \
55+ ' {container_name="prometheus-hgv4s",job="kubernetes-nodes"})' ,
56+ start: ' 2015-07-01T20:10:30.781Z' ,
57+ end: ' 2015-07-02T20:10:30.781Z' ,
58+ step: ' 120s' ,
59+ )
60+ ```
61+ ```
62+ # response from server is a low level response struct including
63+ # fields like: method, body and request_headers
64+ # usually users will not need to use this law level calls
65+ ...
66+ method=:get,
67+ body="{\"status\":\"success\",
68+ ...
69+ ```
5470#### High level calls
5571
5672###### query
@@ -64,7 +80,10 @@ prometheus.query(
6480 time: ' 2015-07-01T20:10:30.781Z' ,
6581)
6682```
67-
83+ ```
84+ # response from server:
85+ {"resultType"=>"vector", "result"=>[{"metric"=>{}, "value"=>[1502350741.161, "6606.310387038"]}]}
86+ ```
6887###### query_range
6988
7089``` ruby
@@ -76,7 +95,8 @@ prometheus.query_range(
7695 end: ' 2015-07-02T20:10:30.781Z' ,
7796 step: ' 120s' ,
7897)
79-
98+ ```
99+ ```
80100# response from server:
81101{"resultType"=>"matrix",
82102 "result"=>
@@ -113,10 +133,13 @@ prometheus.query_range(
113133``` ruby
114134# send a label request to server
115135prometheus.label(' __name__' )
116-
136+ ```
137+ ```
117138# response from server:
118- [" kubernetes-apiservers" , " kubernetes-cadvisor" , " kubernetes-nodes" ,
119- " kubernetes-service-endpoints" ]
139+ ["APIServiceRegistrationController_adds",
140+ "APIServiceRegistrationController_depth",
141+ ...
142+
120143```
121144
122145###### targets
@@ -125,6 +148,30 @@ prometheus.label('__name__')
125148# send a targets request to server
126149prometheus.targets()
127150```
151+ ```
152+ # response from server:
153+ {"activeTargets"=>
154+ [{"discoveredLabels"=>
155+ {"__address__"=>"10.35.19.248:8443",
156+ "__meta_kubernetes_endpoint_port_name"=>"https",
157+ "__meta_kubernetes_endpoint_port_protocol"=>"TCP",
158+ "__meta_kubernetes_endpoint_ready"=>"true",
159+ "__meta_kubernetes_endpoints_name"=>"kubernetes",
160+ "__meta_kubernetes_namespace"=>"default",
161+ "__meta_kubernetes_service_label_component"=>"apiserver",
162+ "__meta_kubernetes_service_label_provider"=>"kubernetes",
163+ "__meta_kubernetes_service_name"=>"kubernetes",
164+ "__metrics_path__"=>"/metrics",
165+ "__scheme__"=>"https",
166+ "job"=>"kubernetes-apiservers"},
167+ "labels"=>{"instance"=>"10.35.19.248:8443", "job"=>"kubernetes-apiservers"},
168+ "scrapeUrl"=>"https://10.35.19.248:8443/metrics",
169+ "lastError"=>"",
170+ "lastScrape"=>"2017-08-10T07:35:40.919376413Z",
171+ "health"=>"up"},
172+ ...
173+
174+ ```
128175
129176#### cAdvisor specialize client
130177
@@ -155,10 +202,11 @@ prometheus = Prometheus::ApiClient::Cadvisor::Node.new(
155202)
156203
157204# send a query request to server
158- prometheus.query(
159- query: ' sum(container_cpu_usage_seconds_total)' ,
160- time: ' 2015-07-01T20:10:30.781Z' ,
161- )
205+ prometheus.query(query: ' sum(container_cpu_usage_seconds_total)' )
206+ ```
207+ ```
208+ # response from server:
209+ {"resultType"=>"vector", "result"=>[{"metric"=>{}, "value"=>[1502350741.161, "6606.310387038"]}]}
162210```
163211
164212## Tests
0 commit comments