package activities import ( "context" "log" "net/http" ) type HealtcheckHttpActivityParam struct { Url string Method string } type HealthcheckHttpActivityResult struct { StatusCode int } func HealthcheckHttpActivityDefinition(ctx context.Context, param HealtcheckHttpActivityParam) (*HealthcheckHttpActivityResult, error) { if param.Method == "" { param.Method = "GET" } var ( response *http.Response err error ) switch param.Method { case "GET": response, err = http.Get(param.Url) case "POST": response, err = http.Post(param.Url, "application/json", nil) } if err != nil { return nil, err } log.Printf("HealthcheckHttpActivityDefinition produced statuscode %d for url %s", response.StatusCode, param.Url) return &HealthcheckHttpActivityResult{StatusCode: response.StatusCode}, nil }