HTTP-állapotkódok az Azure Cosmos DB-hez

Ez a cikk a REST-műveletek által visszaadott HTTP-állapotkódokat tartalmazza.

Kód Leírás
200 OK Az alábbi REST-műveletek egyike sikeres volt:

- GET egy erőforráson.
- PUT egy erőforráson.
- POST egy erőforráson.
- POST tárolt eljárás erőforráson a tárolt eljárás végrehajtásához.
201 Létrehozva Az erőforrás létrehozásához szükséges POST művelet sikeres.
204 Nincs tartalom A DELETE művelet sikeres.
400 Hibás kérelem A kérelem törzsében található JSON, SQL vagy JavaScript érvénytelen.

Emellett 400-ás értéket is visszaadhat, ha egy erőforrás szükséges tulajdonságai nincsenek megadva vagy beállítva a POST vagy a PUT erőforrás törzsében.

A rendszer akkor is 400 értéket ad vissza, ha a GET művelet konzisztens szintjét felülírja a fiók egy készletének erősebb konzisztenciája.

A 400-at akkor is visszaadja a rendszer, ha egy x-ms-documentdb-partitionkey azonosítót igénylő kérés nem tartalmazza azt.
401 Nem engedélyezett A rendszer a 401-et adja vissza, ha a Authorization fejléc érvénytelen a kért erőforráshoz.
403 – Tiltott Az engedélyezési jogkivonat lejárt.

A 403-at a rendszer egy művelet során POST is visszaadja, hogy erőforrást hozzon létre az erőforráskvóta elérésekor. Erre a forgatókönyvre példa, ha olyan gyűjteményhez próbál dokumentumokat hozzáadni, amelyek elérték a kiépített tárterületet.

403-as hiba akkor is megjelenhet, ha egy tárolt eljárás, trigger vagy UDF meg lett jelölve nagymértékű erőforrás-használat miatt, és a rendszer blokkolja a végrehajtását.

403-as (Tiltott) hiba jelenik meg, ha az Azure Cosmos DB-fiókja esetében konfigurált tűzfalszabályok miatt a rendszer blokkolja a kérését. Az engedélyezési listán nem szereplő gépekről származó kérések esetében a rendszer 403-as hibát ad vissza.

403.3 – A manuális feladatátvételi művelet során a rendszer ezt az állapotkódot adja vissza írási kérésekhez. Ezt az állapotkódot az illesztőprogramok átirányítási kódként használják az írási kérelmek új írási régióba való továbbításához. A közvetlen REST-ügyfélnek GET művelet kell végrehajtania a DatabaseAccount fiókon az aktuális írási régió azonosításához és az írási kérés adott végponthoz való továbbításához.
404 Nem található A művelet egy már nem létező erőforrásra próbál reagálni. Előfordulhat például, hogy az erőforrás már törölve lett.
408 Kérelem időtúllépése A művelet nem fejeződött be a megadott időtartamon belül. Ez a kód akkor jelenik meg, ha egy tárolt eljárás, eseményindító vagy UDF (lekérdezésen belül) nem fejeződik be a végrehajtás a maximális végrehajtási időn belül.
409 Ütközés Egy PUT vagy POST műveletben érintett erőforráshoz megadott azonosítót egy meglévő erőforrás foglalt le. A probléma megoldásához használjon egy másik azonosítót az erőforráshoz. Particionált gyűjtemények esetén az azonosítónak minden azonos partíciókulcsú dokumentumban egyedinek kell lennie.
412 Előfeltételek hibája A művelet olyan eTaget adott meg, amely eltér a kiszolgálón elérhető verziótól, azaz optimista egyidejűségi hiba. Az erőforrás legfrissebb verziójának beolvasása és a kérés eTagjének frissítése után próbálkozzon újra a kéréssel.
413 Entity too large A dokumentum mérete a kérésben meghaladta a kéréshez megengedett dokumentumméretet. A legnagyobb megengedett dokumentumméret 2 MB.
423 Locked Az átvitelskálázási művelet nem hajtható végre, mert folyamatban van egy másik skálázási művelet.
424 Failed dependency Ha egy dokumentumművelet egy TransactionalBatch művelet tranzakciós hatókörben hiúsul meg, akkor a kötegen belüli összes művelet sikertelen függőségnek minősül. Ez az állapotkód azt jelzi, hogy az aktuális művelet a tranzakciós hatókörön belüli másik hiba miatt minősült sikertelennek.
429 Túl sok kérés A gyűjtemény meghaladta a számára megadott átvitelisebesség-korlátot. Ismételje meg a kérést, miután letelt a kiszolgáló által meghatározott újrapróbálkozási időköz. További információ: Kérelemegységek.
449 Újrapróbálkozás A művelet átmeneti hibát észlelt. Ez a kód csak írási műveleteknél fordul elő. A művelet újrapróbálkozása biztonságos.
500 Belső kiszolgálóhiba A művelet váratlan szolgáltatáshiba miatt meghiúsult. Vegye fel a kapcsolatot az ügyfélszolgálattal. Lásd: Azure-támogatás probléma bejelentése.
503 A szolgáltatás nem érhető el A művelet nem hajtható végre, mert a szolgáltatás nem érhető el. Ez a helyzet a hálózati kapcsolat vagy a szolgáltatás rendelkezésre állásával kapcsolatos problémák miatt fordulhat elő. A művelet újrapróbálkozása biztonságos. Ha a probléma továbbra is fennáll, forduljon a támogatási szolgálathoz.

HTTP-alállapotkódok

Ha Customer-Managed Kulcsokat (CMK) használ az Azure Cosmos DB-ben, hiba esetén az Azure Cosmos DB egy HTTP-alállapotkóddal együtt adja vissza a hiba részleteit a válaszban. Ezzel az alállapotkóddal hibakeresést végezhet a probléma kiváltó okán. Az Azure Cosmos DB jelenleg a következő alállapotkódokat támogatja:

Alállapotkódok kiszolgálóoldali problémákhoz

Az Azure Cosmos DB a következő alállapotkódokat támogatja kiszolgálóoldali problémák esetén:

Alállapotkód Leírás
4000 (Nem sikerült lekérni/elérni a Azure AD tokent) Ez a hiba akkor fordul elő, ha az Azure Cosmos DB nem tudja lekérni az Azure Active Directory (Azure AD) hozzáférési jogkivonatot. Ez a jogkivonat szükséges ahhoz, hogy az Azure Cosmos DB hozzáférjen a Key Vault. A hiba hálózati probléma vagy adatközpont-probléma miatt fordulhat elő, és a felhasználó nem tud műveletet végezni. Hozzon létre egy támogatási kérést az Azure Cosmos DB csapatához a probléma megoldásához.
4001 (Azure AD szolgáltatás nem érhető el) Ez a hiba akkor fordul elő, ha a Azure AD szolgáltatás leállt, vagy problémákat tapasztal. Az Azure szolgáltatáskimaradási irányítópulton ellenőrizheti, hogy van-e meglévő szolgáltatáskimaradás. Ezek a kimaradások általában néhány órán belül megoldódnak. A legjobb, ha kapcsolatba lép a Azure AD csapatával, és tudatja velük, hogy milyen problémát tapasztal. Ha a Azure AD csapat úgy találja, hogy nincs probléma, hozzon létre egy támogatási kérést az Azure Cosmos DB csapatának megoldásához.
4004 (Key Vault szolgáltatás nem érhető el) Ez a hiba akkor fordul elő, ha az Azure Cosmos DB megpróbál hozzáférni a Key Vault, de a szolgáltatás nem érhető el. Ennek oka lehet egy hálózati probléma, amely Key Vault érhető el, vagy maga a szolgáltatás leállhat. Az Azure szolgáltatáskimaradási irányítópulton ellenőrizheti, hogy van-e meglévő szolgáltatáskimaradás. Ezek a kimaradások általában néhány órán belül megoldódnak. A legjobb, ha kapcsolatba lép a Key Vault csapattal, és tudatja velük, hogy milyen problémát tapasztal. Ha a Key Vault csapat úgy találja, hogy nincs probléma, hozzon létre egy támogatási kérést az Azure Cosmos DB csapatának megoldásához.
4007 (belső kiszolgálóhiba) Ez egy belső kiszolgálóhiba, és akkor fordul elő, ha a bemeneti bájtok nem base64 formátumban vannak.
4008 (Key Vault belső szolgáltatáshibák) Ez a hiba akkor fordul elő, ha az Azure Cosmos DB nem tud hozzáférni a Key Vault. Ennek oka lehet egy hálózati probléma, vagy ha a Key Vault szolgáltatás leállt. Az Azure szolgáltatáskimaradási irányítópulton ellenőrizheti, hogy van-e meglévő szolgáltatáskimaradás. Ezek a kimaradások általában néhány órán belül megoldódnak. A legjobb, ha kapcsolatba lép a Key Vault csapattal, és tudatja velük, hogy milyen problémát tapasztal. Ha a Key Vault csapat úgy találja, hogy nincs probléma, forduljon az Azure Cosmos DB csapatához a megoldás érdekében.
1013 (A gyűjtemény létrehozási művelete folyamatban van) Ha időtúllépési kivételt tapasztal a gyűjtemény létrehozásakor, olvasási műveletet hajt végre annak ellenőrzéséhez, hogy a gyűjtemény sikeresen létrejött-e. Az olvasási művelet kivételt jelez, amíg a gyűjteménylétrehozási művelet sikeres nem lesz. Ha az olvasási művelet kivételt jelez a 404-s állapotkóddal és az 1013-at tartalmazó alállapotkóddal, az azt jelenti, hogy a gyűjteménylétrehozási művelet még folyamatban van. Próbálkozzon újra az olvasási művelettel, amíg 200 vagy 201 állapotkódot nem kap, ezek a kódok jelzik, hogy a gyűjtemény sikeresen létrejött.

Végfelhasználói problémák alállapotkódjai

Az Azure Cosmos DB a következő alállapotkódokat támogatja a végfelhasználó által okozott problémák esetén:

Alállapotkód Leírás
4002 (Key Vault nem ad engedélyt a Azure AD, vagy a kulcs le van tiltva) Ez a probléma akkor fordul elő, ha eltávolította az Azure Cosmos DB-identitást a Key Vault hozzáférési szabályzatokból, vagy ha letiltotta a kulcsot. Ezt a problémát általában a végfelhasználó okozza. Ha ez a hiba jelentkezik, győződjön meg arról, hogy az Azure Cosmos DB hozzáfér a Key Vault, és a kulcs engedélyezve van.
4003 (A kulcs nem található) Ez a probléma akkor fordul elő, ha a kulcsot törölték a Key Vault. Ezt a problémát általában a végfelhasználó okozza. Az Azure Cosmos DB ügyfél által felügyelt kulcsokkal való használatának egyik előfeltétele, hogy a Key Vault engedélyezve legyen a helyreállítható törlés és törlés elleni védelem. Ez azt jelenti, hogy helyreállíthatja a törölt kulcsot, és visszaállíthatja az Azure Cosmos DB-hez való hozzáférést.
4005 (A kulcs nem tördelhető vagy bontható ki) Ez a hiba akkor fordul elő, ha a Key Vault nem tudja tördelni vagy kicsomagolni a kulcsot. Ezt a problémát általában a végfelhasználó okozza. A hiba egyik lehetséges oka az, hogy a Key Vault nem tudta dekódolni a titkosított blobot a legújabb kulccsal, mert elforgatta a kulcsot. A hiba elhárításához engedélyezze a legutóbb letiltott kulcsokat, és körülbelül egy óra múlva megoldjuk. Ha a probléma több mint 2 óra elteltével nem oldódott meg, adja át a problémát az Azure Cosmos DB-nek.
4006 (A kulcs URL-címe érvénytelen) Ez a hiba akkor fordul elő a kiépítés során, ha a kulcsverziót a Key Vault URL-címbe foglalta. Ezt a hibát gyakran a végfelhasználó okozza. A hiba elhárításához távolítsa el a verziót, és próbálkozzon újra. Ha például az URL-címet a formátumban használta, frissítse a következőre https://<KeyVaultName>.vault.azure.net/keys/<KeyName>/<KeyVersion>: https://<KeyVaultName>.vault.azure.net/keys/<KeyName>/
4009 (Key Vault DNS-név nem oldható fel) Ez a hiba akkor fordul elő, ha a Key Vault DNS-név nem oldható fel, mert helytelen Key Vault nevet használt. Ezt a hibát a végfelhasználó okozza. A probléma megoldásához javítsa ki a Key Vault nevét, és próbálkozzon újra.

Lásd még