grafana-使用mysql作为数据源,通过API从仪表板获取值

grafana-使用mysql作为数据源,通过API从仪表板获取值,api,prometheus,grafana,grafana-api,Api,Prometheus,Grafana,Grafana Api,我试图从Grafana dashboard中提取仪表板中的值。我有MySQL作为数据源,我有一个从MySQL中的特定表中提取值的查询 我试图用一些API在仪表板上显示这些值 对于普罗米修斯,我遇到了这个API,它工作得很好。类似地,我想获得grafana仪表板的功能。我浏览了这些Grafana,但没有找到任何可以在仪表板上显示mysql记录的内容 还有其他API吗?或者其他任何获取这些记录的方法?我找到的唯一方法是: 打开仪表板,然后检查面板 打开查询选项卡并单击刷新 在您自己的api查询中使用

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

我试图用一些API在仪表板上显示这些值

对于普罗米修斯,我遇到了这个API,它工作得很好。类似地,我想获得grafana仪表板的功能。我浏览了这些Grafana,但没有找到任何可以在仪表板上显示mysql记录的内容


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

我找到的唯一方法是:

  • 打开仪表板,然后检查面板
  • 打开查询选项卡并单击刷新
  • 在您自己的api查询中使用url和参数

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

    我找到了提取记录的方法。它正在使用“Chro路径实用程序”,获取所需行/列/单元格的XPath,并在Selenium代码中使用它们。

    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')
    
    从selenium导入webdriver
    从selenium.webdriver.chrome.options导入选项
    chrome_options=options()
    chrome\u选项。添加\u参数(“--headless”)
    chrome_选项。添加_参数('--disable gpu')
    chrome_选项。添加_参数('--no sandbox')
    url=”http:///d/SsYvTg6Wk/rights?orgId=1&from=now-1h&to=现在”
    #从浏览器chrome复制url
    浏览器=webdriver.Chrome(可执行文件路径=“./chromedriver”,Chrome\u选项=Chrome\u选项)
    browser.header\u覆盖={
    “授权”:“持有人xxx”
    }
    浏览器。隐式等待(10)
    browser.get(url)
    #browser.execute_脚本(“returndocument.body.innerHTML”)
    browser.find_element_by_id('flotGagueValue0'))
    
    感谢您的回复。我找到了一种使用selenium和我在回答中提到的“Chro Path实用程序”获取这些值的方法。