2017-02-09 43 views
1

我想用他们的API创建数据源。所以我可以创建没有任何问题的DataSource,但我不能指定我想使用的ID。如何使用Grafana API指定数据源的ID?

,因为我想创建数据源动态地按照这一逻辑这将是对我有用的:

检查是否有新主机正常运行 - >如果一个人了创建一个数据源

检查一台主机宕机 - >如果有一个向下删除其数据源

所以要创建数据源我所做的:

createDataSource = Meteor.bindEnvironment(function() { 
    setTimeout(Meteor.bindEnvironment(function(){ 
    HTTP.call("POST", "http://localhost:3000/api/datasources", { 
      headers: { 
       'Accept': 'application/json', 
       'Content-Type': 'application/json', 
       'Authorization': 'Bearer 123', 
      }, 
      data: { 
       "name":"test_datasource_from_js", 
       "id":5, 
       "type":"prometheus", 
       "url":"http://dataSourceFromJs:9090", 
       "access":"proxy", 
       "basicAuth":false 
      } 
     }, 
     function(error, result) { 
      if (!error) { 
       console.log(result); 
      } else { 
       console.error(error); 
      } 
     }); 
    }),500); 
}); 

但字段"id":5没有影响数据源创建的ID为3.

回答

1

您不能自己设置ID。 Grafana内部在数据库中使用增量计数器来避免ID冲突。

我建议你使用数据库名称而不是ID。

+0

哦,好吧,这是一个很好的输入,所以我会寻求做一些名字!谢谢 – Jerome