コード例 #1
0
func (a *App) RouteProviderBasedMonitoring(cluster_id uuid.UUID) {
	provider := a.getProviderFromClusterId(cluster_id)
	if provider == nil {
		logger.Get().Warning("Faield to get provider for cluster: %v", cluster_id)
		return
	}
	var result models.RpcResponse

	vars := make(map[string]string)
	vars["cluster-id"] = cluster_id.String()

	err = provider.Client.Call(fmt.Sprintf("%s.%s",
		provider.Name, "MonitorCluster"),
		models.RpcRequest{RpcRequestVars: vars, RpcRequestData: []byte{}},
		&result)

	if err != nil || result.Status.StatusCode != http.StatusOK {
		logger.Get().Error("Monitoring by Provider: %s failed. Reason :%s", provider.Name, err)
		return
	}

	return
}