]> git.proxmox.com Git - ceph.git/blame - ceph/src/pybind/mgr/dashboard/controllers/grafana.py
update sources to ceph Nautilus 14.2.1
[ceph.git] / ceph / src / pybind / mgr / dashboard / controllers / grafana.py
CommitLineData
11fdf7f2
TL
1# -*- coding: utf-8 -*-
2from __future__ import absolute_import
3
4import requests
5
6from . import ApiController, BaseController, Endpoint, ReadPermission
7from ..security import Scope
8from ..settings import Settings
9
10
11class GrafanaRestClient(object):
12
13 def url_validation(self, method, path):
14 response = requests.request(
15 method,
16 path)
17
18 return response.status_code
19
20
21@ApiController('/grafana', Scope.GRAFANA)
22class Grafana(BaseController):
23
24 @Endpoint()
25 @ReadPermission
26 def url(self):
27 response = {'instance': Settings.GRAFANA_API_URL}
28 return response
29
30 @Endpoint()
31 @ReadPermission
32 def validation(self, params):
33 grafana = GrafanaRestClient()
34 method = 'GET'
35 url = Settings.GRAFANA_API_URL.rstrip('/') + \
36 '/api/dashboards/uid/' + params
37 response = grafana.url_validation(method, url)
38 return response