func (s *AWSSession) updateAWSElementList(elbs []*AWSElement, client *mkr.Client) { for _, elb := range elbs { hosts, err := client.FindHosts(&mkr.FindHostsParam{Name: elb.DNSName}) if err != nil { logger.Log("error", fmt.Sprintf("Mackerel FindHosts: %s", err.Error())) continue } if len(hosts) == 1 { elb.HostID = hosts[0].ID logger.Log("info", fmt.Sprintf("Host Found: %s -> %s", hosts[0].ID, hosts[0].Name)) } if len(hosts) == 0 { elb.HostID, err = client.CreateHost(&mkr.CreateHostParam{ Name: elb.DNSName, }) if err != nil { logger.Log("error", fmt.Sprintf("Mackerel CreateHost: %s", err.Error())) } } } return }