【问题标题】:grafana- get values from dashboard with mysql as data source with APIgrafana- 从仪表板获取值,使用 mysql 作为 API 的数据源
【发布时间】:2020-04-29 11:14:20
【问题描述】:

我正在尝试从 Grafana 仪表板的仪表板中提取值。我有 MySQL 作为数据源,我有一个查询来从 MySQL 中的特定表中提取值。

我正在尝试使用一些 API 将这些值显示在仪表板上。

对于prometheus,我遇到过Instant Queries这个API,效果很好。同样,我想获得 for grafana 仪表板。我浏览了这些 Grafana HTTP APIs,但没有找到任何可以在仪表板上显示 mysql 记录。

还有其他 API 吗?或者任何其他方式来获取这些记录?

【问题讨论】:

    标签: api prometheus grafana grafana-api


    【解决方案1】:

    我发现的唯一方法是:

    1. 打开仪表板,然后检查面板
    2. 打开查询选项卡并点击refresh
    3. 在你自己的api查询中使用url和参数

    注意:首先您需要在 UI 中创建一个具有适当角色的 API 密钥,并将 bearer 添加到请求标头中

    【讨论】:

    • 感谢您的回复。我找到了一种方法来使用我在答案中提到的 selenium 和“Chro Path Utility”来获取这些值。
    【解决方案2】:

    我找到了一种提取记录的方法。它使用“Chro Path Utility”,获取所需行/列/单元格的 XPath,并在您的 Selenium 代码中使用它们。

    【讨论】:

      【解决方案3】:

      emmmm,我发现这是 chrome 问题,无法添加自定义标题... 用它工作的 PHANTOMJS 替换。 bur PHANTOMJS 看不到完整数据(下载 png 看那个)....

      ......................

      哦,你能告诉我怎么做吗? 我使用 selenium 但无法获取数据...这是我的代码。

      from selenium import webdriver
      from selenium.webdriver.chrome.options import Options
      
      
      chrome_options = Options()
      chrome_options.add_argument("--headless")
      chrome_options.add_argument('--disable-gpu')
      chrome_options.add_argument('--no-sandbox')    
      
      url="http://<IP:PORT>/d/SsYvTg6Wk/rights?orgId=1&from=now-1h&to=now" 
      #url copy from browser chrome
      
      browser=webdriver.Chrome(executable_path="./chromedriver", chrome_options=chrome_options)
      browser.header_overrides = {
          'Authorization': 'Bearer xxx'
      }
      browser.implicitly_wait(10)
      browser.get(url)
      # browser.execute_script("return document.body.innerHTML")
      browser.find_element_by_id('flotGagueValue0')
      

      【讨论】:

        猜你喜欢
        • 2015-09-18
        • 2019-07-13
        • 1970-01-01
        • 2019-02-25
        • 1970-01-01
        • 2020-11-30
        • 2019-12-05
        • 2019-08-25
        • 1970-01-01
        相关资源
        最近更新 更多