def get_all_datasources_and_delete(grafana_url, http_get_headers, verify_ssl,
                                   client_cert, debug, pretty_print,
                                   uid_support):
    status_code_and_content = search_datasource(grafana_url, http_get_headers,
                                                verify_ssl, client_cert, debug)
    if status_code_and_content[0] == 200:
        datasources = status_code_and_content[1]
        print("There are {0} datasources:".format(len(datasources)))
        for datasource in datasources:
            print(datasource)
            if uid_support:
                status = delete_datasource_by_uid(datasource['uid'],
                                                  grafana_url,
                                                  http_get_headers, verify_ssl,
                                                  client_cert, debug)
            else:
                status = delete_datasource_by_id(datasource['id'], grafana_url,
                                                 http_get_headers, verify_ssl,
                                                 client_cert, debug)

            if status == 200:
                print("datasource:{0} is deleted".format(datasource['name']))
            else:
                print("deleting of datasource {0} failed with: {1}".format(
                    datasource['name'], status))
    else:
        print("query datasource failed, status: {0}, msg: {1}".format(
            status_code_and_content[0], status_code_and_content[1]))
Esempio n. 2
0
def get_all_datasources_and_save(folder_path, grafana_url, http_get_headers, verify_ssl, client_cert, debug, pretty_print):
    status_code_and_content = search_datasource(grafana_url, http_get_headers, verify_ssl, client_cert, debug)
    if status_code_and_content[0] == 200:
        datasources = status_code_and_content[1]
        print("There are {0} datasources:".format(len(datasources)))
        for datasource in datasources:
            print(datasource)
            save_datasource(datasource['name'], datasource, folder_path, pretty_print)
    else:
        print("query datasource failed, status: {0}, msg: {1}".format(status_code_and_content[0],
                                                                      status_code_and_content[1]))