← Cloudflare Logs / logs / logpull
Vyžádání protokolů
Endpointy
Rozhraní Logpull API podporuje tyto tři koncové body:
GET /logs/received- vrací data protokolu HTTP požadavků na základě zadaných parametrůGET /logs/received/fields- vrací seznam všech dostupných polí protokoluGET /logs/rayids/{ray_id}- vrací data protokolu HTTP požadavků odpovídající{ray_id}
Povinné autentizační hlavičky
Pro všechna volání koncového bodu jsou vyžadovány následující hlavičky:
X-Auth-Email- e-mailová adresa účtu Cloudflare přiřazená k doméněX-Auth-Key- klíč API Cloudflare
Alternativně lze k autentizaci použít také API tokeny s oprávněním Logs Read:
Authorization: Bearer <API_TOKEN>
Parametry
API očekává parametry endpointu v query řetězci GET požadavku. Níže jsou uvedeny příklady formátů:
logs/received
https://api.cloudflare.com/client/v4/zones/{zone_id}/logs/received?start=<unix|rfc3339>&end=<unix|rfc3339>[&count=<int>][&sample=<float>][&fields=<FIELDS>][×tamps=<string>][&CVE-2021-44228=<boolean>]logs/rayids/{ray_id}
https://api.cloudflare.com/client/v4/zones/{zone_id}/logs/rayids/{ray_id}?[&fields=<FIELDS>][×tamps=<string>]Následující tabulka popisuje dostupné parametry:
| Parametr | Popis | Platí pro | Povinné |
|---|---|---|---|
| start | - Inkluzivní - Časové razítko ve formátu - Nesmí být více než 7 dní před současným okamžikem |
/logs/received | Ano |
| end | - Exkluzivní - Stejný formát jako start - Musí být alespoň o 1 minutu dříve než nyní a později než start |
/logs/received | Ano |
| count | - Vrátí až tento počet záznamů - Nezahrnujte, pokud vracíte všechny záznamy - Výsledky nejsou seřazené, proto je pravděpodobné, že opakované požadavky vrátí odlišná data - Platí pro celkový počet vrácených záznamů, nikoli pro počet vzorkovaných záznamů |
/logs/received | Ne |
| vzorek | - Vrátí pouze vzorek záznamů - Nezahrnujte, pokud vracíte všechny záznamy - Hodnota se může pohybovat od - - Výsledky jsou náhodné, proto je pravděpodobné, že opakované požadavky vrátí odlišný počet výsledků |
/logs/received | Ne |
| pole | - Seznam polí k vrácení oddělených čárkami - Pokud je prázdné, vrátí se výchozí seznam |
/logs/received /logs/rayids |
Ne |
| časová razítka | - Formát, ve kterém budou vrácena pole časového razítka - Možné hodnoty jsou: - Časová razítka vrácená jako celá čísla pro |
/logs/received /logs/rayids |
Ne |
| CVE-2021-44228 | - Volitelné skrytí (redakce) pro CVE-2021-44228 ↗. Tato možnost nahradí každý výskyt řetězce Například: |
/logs/received |
Ne |
Příklady požadavků API pomocí cURL
logs/received
curl "https://api.cloudflare.com/client/v4/zones/{zone_id}/logs/received?start=2017-07-18T22:00:00Z&end=2017-07-18T22:01:00Z&count=1&fields=ClientIP,ClientRequestHost,ClientRequestMethod,ClientRequestURI,EdgeEndTimestamp,EdgeResponseBytes,EdgeResponseStatus,EdgeStartTimestamp,RayID" \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>"logs/rayids/{ray_id}
curl "https://api.cloudflare.com/client/v4/zones/{zone_id}/logs/rayids/{ray_id}}?timestamps=rfc3339" \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>"Pole
Pokud není uvedeno v pole parametr, rozhraní API vrátí omezenou sadu polí protokolu. Tato výchozí sada polí se může kdykoli změnit. Seznam všech dostupných polí najdete na:
https://api.cloudflare.com/client/v4/zones/{zone_id}/logs/received/fields
Na pořadí, v jakém jsou pole zadána, nezáleží a pořadí polí v odpovědi není definované.
Pomocí subshellu bash a jq, si můžete stáhnout protokoly se všemi dostupnými poli, aniž byste je museli ručně kopírovat a vkládat do požadavku. Například:
FIELDS=$(curl https://api.cloudflare.com/client/v4/zones/{zone_id}/logs/received/fields \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>" \
| jq '. | to_entries[] | .key' -r | paste -sd "," -)
curl "https://api.cloudflare.com/client/v4/zones/{zone_id}/logs/received?start=2017-07-18T22:00:00Z&end=2017-07-18T22:01:00Z&count=1&fields=$FIELDS" \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>"Viz Stáhněte si jq ↗ s dalšími informacemi o získání a instalaci jq.
Viz Pole HTTP požadavku pro aktuálně dostupná pole.