← Cloudflare Magic Transit / magic-transit / network-health
Spusťte kontroly stavu koncových bodů (beta)
Magic Transit využívá kontroly stavu koncových bodů ke zjištění celkového stavu vaší mezisíťová propojení. Sondy vycházejí z infrastruktury Cloudflare, mimo síťové jmenné prostory zákazníka, a míří na IP adresy hluboko uvnitř vaší sítě, za hraničním routerem, kde tunel končí. Tyto sondy „na dálku“ slouží čistě k diagnostice.
Při výběru IP adres koncových bodů, které chcete sledovat pomocí kontrol stavu, se řiďte těmito pokyny:
- Pro každý prefix, který Cloudflare inzeruje, zadejte jednu IP adresu.
- Redundantní IP adresy směrované přes stejného ISP (Internet Service Provider) a stejnou infrastrukturu nejsou nutné, ale hodí se při řešení problémů.
Cloudflare odesílá pingy na IP adresy kontrol stavu zevnitř zveřejněný rozsah IP adres Cloudflare ↗, což je dostupné také prostřednictvím Cloudflare API.
Při konfiguraci kontroly stavu koncového bodu pro prefix IP vyberte IP adresu z rozsahu tohoto prefixu. Příklad konfigurace kontroly stavu koncového bodu najdete v tabulce.
| Prefix | IP adresa koncového bodu |
|---|---|
103.21.244.0/24 |
103.21.244.100 |
103.21.245.0/24 |
103.21.245.100 |
Viz Tunnel health checks s dalšími informacemi.
Konfigurace kontrol stavu koncových bodů (beta)
Kontroly stavu koncových bodů lze nastavit pouze přes Cloudflare API, v dashboardu tato možnost není k dispozici. Konfigurace kontrol stavu je v současnosti funkcí ve fázi beta.
Viz Dokumentace API se dozvíte, jak vytvářet, vypisovat a mazat kontroly stavu koncových bodů. Následující příklad vytváří novou kontrolu stavu koncového bodu.
curl "https://api.cloudflare.com/client/v4/accounts/account_id/diagnostics/endpoint-healthchecks" \
--request POST \
--json '{
"check_type": "icmp",
"endpoint": "8.31.160.1",
"name": "Datacenter 1 - primary"
}'{
"result": {
"id": "<HEALTH_CHECK_ID>",
"check_type": "icmp",
"endpoint": "8.31.160.1",
"name": "Datacenter 1 - primary"
},
"success": true,
"errors": [],
"messages": []
}Dotazování na kontroly stavu koncových bodů pomocí GraphQL
Použijte GraphQL Analytics API k dotazování na výsledky kontrol stavu koncových bodů pro váš účet. magicEndpointHealthCheckAdaptiveGroups dataset vrací výsledky sond agregované podle dimenzí a časového intervalu, které zadáte.
Všechny dotazy GraphQL odesílejte jako HTTP POST požadavky na https://api.cloudflare.com/client/v4/graphql.
Předpoklady
K dotazování dat kontrol stavu koncových bodů potřebujete následující:
- Váš ID účtu.
- API token hodnotou
Account > Account Analytics > Readoprávnění. Podrobnosti najdete v Nakonfigurujte token Analytics API.
Parametry dotazu
Následující parametry patří mezi nejběžnější v filter objekt:
| Parametr | Popis |
|---|---|
date_geq |
Počáteční datum dotazu ve formátu YYYY-MM-DD formát (například 2026-01-01). Při použití s dimenzí zaokrouhlování data vrátí výsledky od tohoto data dále. Můžete také použít úplné časové razítko ve formátu ISO 8601 (například 2026-01-01T00:00:00Z). |
date_leq |
(Volitelné) Koncové datum dotazu. Používá stejný formát jako date_geq. |
datetime_geq |
(Volitelné) Počáteční časové razítko ve formátu ISO 8601 (například 2026-01-01T00:00:00Z). Použijte místo date_geq pro časové dimenze založené na zkrácení. |
datetime_leq |
(Volitelné) Koncové časové razítko ve formátu ISO 8601. |
limit |
Maximální počet skupin výsledků, které se mají vrátit. |
Filtrovat můžete také podle libovolné dimenze uvedené v Dostupné dimenze tabulku. Filtr vytvoříte připojením přípony operátoru k názvu dimenze, například endpoint_in k filtrování podle seznamu koncových bodů, nebo checkType_neq k vyloučení konkrétního typu kontroly. Použití názvu dimenze bez přípony filtruje podle rovnosti. Úplný seznam podporovaných operátorů najdete v Filtrování.
Dostupné dimenze
Následující dimenze můžete dotazovat v dimensions pole:
| Dimenze | Popis |
|---|---|
checkId |
Jedinečné ID nakonfigurované kontroly stavu. |
checkType |
Typ kontroly stavu (například icmp). |
endpoint |
IP adresa kontrolovaného endpointu. |
name |
Název přiřazený kontrole stavu při jejím nastavení (může být prázdný, pokud není nastaven). |
date |
Časové razítko události zkrácené na den. |
datetime |
Úplné časové razítko události. |
datetimeMinute |
Časové razítko události zkrácené na minutu. |
datetimeFiveMinutes |
Časové razítko události zkrácené na pětiminutové intervaly. |
datetimeFifteenMinutes |
Časové razítko události zkrácené na 15minutové intervaly. |
datetimeHalfOfHour |
Časové razítko události zkrácené na 30minutové intervaly. |
datetimeHour |
Časové razítko události zkrácené na hodinu. |
Dostupné metriky
| Metrika | Popis |
|---|---|
count |
Celkový počet událostí kontroly stavu ve skupině. |
sum.total |
Celkový počet odeslaných sond kontroly stavu. |
sum.failures |
Počet neúspěšných sond kontroly stavu. |
avg.lossPercentage |
Průměrné vypočítané procento ztráty (0-100). |
volání API
Následující příklad dotazuje výsledky kontrol stavu koncových bodů pro konkrétní účet a vrací počty sond agregované v pětiminutových intervalech. Nahraďte <ACCOUNT_ID> s vaším ID účtu a <API_TOKEN> s vaším API token.
echo '{ "query":
"query GetEndpointHealthCheckResults($accountTag: string, $datetimeStart: string) {
viewer {
accounts(filter: {accountTag: $accountTag}) {
magicEndpointHealthCheckAdaptiveGroups(
filter: {
datetime_geq: $datetimeStart
}
limit: 10
) {
count
dimensions {
checkId
checkType
endpoint
datetimeFiveMinutes
}
sum {
failures
total
}
}
}
}
}",
"variables": {
"accountTag": "<ACCOUNT_ID>",
"datetimeStart": "2026-01-21T00:00:00Z"
}
}' | tr -d '\n' | curl --silent \
https://api.cloudflare.com/client/v4/graphql \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--data @-Výstup přesměrujte rourou do jq k naformátování odpovědi JSON pro snazší čtení:
... | curl --silent \
https://api.cloudflare.com/client/v4/graphql \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--data @- | jq .Ukázková odpověď
{
"data": {
"viewer": {
"accounts": [
{
"magicEndpointHealthCheckAdaptiveGroups": [
{
"count": 288,
"dimensions": {
"checkId": "90b478c7-bb51-4640-b94b-2c3050e9fa00",
"checkType": "icmp",
"datetimeFiveMinutes": "2026-01-21T12:00:00Z",
"endpoint": "103.21.244.100"
},
"sum": {
"failures": 0,
"total": 288
}
},
{
"count": 288,
"dimensions": {
"checkId": "90b478c7-bb51-4640-b94b-2c3050e9fa00",
"checkType": "icmp",
"datetimeFiveMinutes": "2026-01-21T12:05:00Z",
"endpoint": "103.21.244.100"
},
"sum": {
"failures": 2,
"total": 288
}
}
]
}
]
}
},
"errors": null
}V této odpovědi sum.total je počet sond odeslaných během intervalu a sum.failures je počet těch, které nedostaly odpověď. failures hodnotu 0 značí, že endpoint byl po celé toto období plně dostupný.
Konfigurace upozornění pro kontroly stavu koncových bodů
Můžete si nastavit upozornění, která vás informují, jakmile stav vašeho koncového bodu klesne pod vámi zvolenou hranici.
- Vytvořte
GETpožadavek, kterým získáte seznam ID všech nakonfigurovaných kontrol stavu koncových bodů:
curl "https://api.cloudflare.com/client/v4/accounts/account_id/diagnostics/endpoint-healthchecks" \
--request GET{
"result": [
{
"id": "<HEALTH_CHECK_ID>",
"check_type": "icmp",
"endpoint": "8.31.160.1",
"name": "Datacenter 1 - primary"
}
],
"success": true,
"errors": [],
"messages": []
}- Poznamenejte si
idhodnotu koncového bodu, pro který chcete dostávat upozornění. - V dashboardu Cloudflare přejděte na Oznámení stránce.
- Vyberte Přidat.
- V rozbalovací nabídce vyberte Magic Transit.
- Vyberte Magic Endpoint Health Check Alert.
- Zadejte název nové notifikace a volitelně přidejte i popis.
- V Cíl úrovně služby (SLO) rozbalovací nabídce vyberte prahovou hodnotu SLO pro své upozornění. SLO určuje procento kontrol stavu koncových bodů, které musí projít. Pokud počet úspěšných kontrol stavu koncových bodů klesne pod tuto hodnotu, Cloudflare vygeneruje upozornění:
- Vysoká - 99%
- Medium - 98%
- Low - 97%
- V rozevírací nabídce pod SLOs vyberte
idhodnotu, která odpovídáidkteré jste získali přes API v kroku 1. Tatoidby mělo odpovídat kontrole stavu koncového bodu, pro kterou chcete dostávat upozornění. - Vyberte preferovaný způsob oznamování (například e-mail nebo webhooky).
- Vyberte Save.
Nyní budete zvoleným způsobem dostávat upozornění pokaždé, když SLO vašich kontrol stavu koncových bodů klesne pod zvolenou hranici.