{"record":{"id":"f4962125a05ad76e","repo":"VictoriaMetrics/VictoriaMetrics","slug":"cannot-query-hcloud-api-for-networks-w","errorCode":null,"errorMessage":"cannot query hcloud api for networks: %w","messagePattern":"cannot query hcloud api for networks: %w","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"lib/promscrape/discovery/hetzner/hcloud.go","lineNumber":96,"sourceCode":"\n\t\tlabelName = discoveryutil.SanitizeLabelName(\"__meta_hetzner_hcloud_label_\" + labelKey)\n\t\tm.Add(labelName, labelValue)\n\t}\n\n\tms = append(ms, m)\n\treturn ms\n}\n\n// getHCloudNetworks returns hcloud networks obtained from the given cfg\nfunc getHCloudNetworks(cfg *apiConfig) ([]HCloudNetwork, error) {\n\t// See https://docs.hetzner.cloud/#networks-get-all-networks\n\tvar networks []HCloudNetwork\n\tpage := 1\n\tfor {\n\t\tpath := fmt.Sprintf(\"/v1/networks?page=%d\", page)\n\t\tdata, err := cfg.client.GetAPIResponse(path)\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"cannot query hcloud api for networks: %w\", err)\n\t\t}\n\t\tnetworksPage, nextPage, err := parseHCloudNetworksList(data)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\tnetworks = append(networks, networksPage...)\n\t\tif nextPage <= page {\n\t\t\tbreak\n\t\t}\n\t\tpage = nextPage\n\t}\n\treturn networks, nil\n}\n\nfunc parseHCloudNetworksList(data []byte) ([]HCloudNetwork, int, error) {\n\tvar resp HCloudNetworksList\n\tif err := json.Unmarshal(data, &resp); err != nil {\n\t\treturn nil, 0, fmt.Errorf(\"cannot unmarshal HCloudNetworksList from %q: %w\", data, err)","sourceCodeStart":78,"sourceCodeEnd":114,"githubUrl":"https://github.com/VictoriaMetrics/VictoriaMetrics/blob/5079fb58f1e8e62113f90c945ad71586c797d770/lib/promscrape/discovery/hetzner/hcloud.go#L78-L114","documentation":"Raised in getHCloudNetworks when a paginated request to the Hetzner Cloud /v1/networks API fails (GetAPIResponse error). It indicates network/auth/HTTP problems querying hcloud networks; the wrapped error has details.","triggerScenarios":"Thrown at lib/promscrape/discovery/hetzner/hcloud.go:96 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Verify the hcloud API token and network reachability","Check rate limits on the Hetzner Cloud API"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5079fb58f1e8e62113f90c945ad71586c797d770","analyzedAt":"2026-09-03T18:10:26.153Z","contentChangedAt":"2026-09-03T18:10:26.153Z","schemaVersion":2},"datasetVersion":"2026-09-08T15:18:49.778Z"}