/* Initializes a server object */ func newServerMonitor(url string) (*ServerMonitor, error) { server := new(ServerMonitor) server.URL = url server.Host, server.Port = splitHostPort(url) var err error server.IP, err = dbhelper.CheckHostAddr(server.Host) if err != nil { return server, errors.New(fmt.Sprintf("ERROR: DNS resolution error for host %s", server.Host)) } server.Conn, err = dbhelper.MySQLConnect(dbUser, dbPass, dbhelper.GetAddress(server.Host, server.Port, *socket)) if err != nil { return server, errors.New(fmt.Sprintf("ERROR: could not connect to server %s: %s", url, err)) } return server, nil }
/* Initializes a server object */ func newServerMonitor(url string) (*ServerMonitor, error) { server := new(ServerMonitor) server.URL = url server.Host, server.Port = splitHostPort(url) var err error server.IP, err = dbhelper.CheckHostAddr(server.Host) if err != nil { return server, errors.New(fmt.Sprintf("ERROR: DNS resolution error for host %s", server.Host)) } params := fmt.Sprintf("timeout=%ds", timeout) server.Conn, err = dbhelper.MySQLConnect(dbUser, dbPass, dbhelper.GetAddress(server.Host, server.Port, socket), params) if err != nil { server.State = stateFailed return server, err } return server, nil }