@@ -38,7 +38,7 @@ def __init__(self, logger, mdHandler, port, raw_data=False):
38
38
self .__md = mdHandler
39
39
self .port = port
40
40
self .raw_data = raw_data
41
- self .static_sensors_list = ['CPU' , 'Memory' , 'GPFSFileset' ]
41
+ self .static_sensors_list = ['CPU' , 'Memory' ]
42
42
self .cache_strategy = False
43
43
self .endpoints = {}
44
44
self .caching_collectors = []
@@ -157,7 +157,7 @@ def GET(self, **params):
157
157
resp = []
158
158
159
159
self .logger .trace (f"Request headers:{ str (cherrypy .request .headers )} " )
160
- self .logger .info (f"Request params:{ str (params )} " )
160
+ self .logger .trace (f"Request params:{ str (params )} " )
161
161
conn = cherrypy .request .headers .get ('Host' ).split (':' )
162
162
if len (conn ) == 2 and int (conn [1 ]) != int (self .port ):
163
163
self .logger .error (MSG ['EndpointNotSupportedForPort' ].
@@ -174,11 +174,40 @@ def GET(self, **params):
174
174
175
175
# /metrics
176
176
elif '/metrics' == cherrypy .request .script_name :
177
- resp = self .metrics ()
177
+ # resp = self.metrics()
178
+ self .logger .error (MSG ['EndpointNotSupported' ].
179
+ format (cherrypy .request .script_name ))
180
+ raise cherrypy .HTTPError (400 , ERR [400 ])
181
+
182
+ # /endpoints
183
+ elif '/endpoints' == cherrypy .request .script_name :
184
+ resp = self .endpoints .keys ()
178
185
cherrypy .response .headers ['Content-Type' ] = 'text/plain'
179
186
resString = '\n ' .join (resp ) + '\n '
180
187
return resString
181
188
189
+ # /labels
190
+ elif '/labels' == cherrypy .request .script_name :
191
+ resp = {}
192
+ for k , v in self .endpoints .items ():
193
+ labels = self .TOPO .getSensorLabels (v )
194
+ if labels :
195
+ resp [k ] = labels
196
+ cherrypy .response .headers ['Content-Type' ] = 'application/json'
197
+ resp = json .dumps (resp )
198
+ return resp
199
+
200
+ # /filters
201
+ elif '/filters' == cherrypy .request .script_name :
202
+ resp = {}
203
+ all_filters = self .TOPO .allFiltersMaps
204
+ for k , v in self .endpoints .items ():
205
+ if v in all_filters :
206
+ resp [k ] = all_filters [v ]
207
+ cherrypy .response .headers ['Content-Type' ] = 'application/json'
208
+ resp = json .dumps (resp )
209
+ return resp
210
+
182
211
else :
183
212
self .logger .error (MSG ['EndpointNotSupported' ].
184
213
format (cherrypy .request .script_name ))
0 commit comments