QueueServiceClient Osztály
Egy ügyfél, amely a queue szolgáltatással kommunikál a fiók szintjén.
Ez az ügyfél műveleteket biztosít a fióktulajdonságok lekéréséhez és konfigurálásához, valamint a fiókon belüli üzenetsorok létrehozásához és törléséhez. Egy adott üzenetsorhoz kapcsolódó műveletek esetén az entitáshoz tartozó ügyfél lekérhető a get_queue_client függvénnyel.
- Öröklődés
-
azure.storage.queue._shared.base_client_async.AsyncStorageAccountHostsMixinQueueServiceClientazure.storage.queue._shared.base_client.StorageAccountHostsMixinQueueServiceClientazure.storage.queue._encryption.StorageEncryptionMixinQueueServiceClient
Konstruktor
QueueServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | AsyncTokenCredential | None = None, **kwargs: Any)
Paraméterek
- account_url
- str
Az üzenetsor-szolgáltatásvégpont URL-címe. Az URL-cím elérési útjának (pl. üzenetsor) minden más entitása el lesz vetve. Ez az URL opcionálisan hitelesíthető SAS-jogkivonattal.
- credential
A hitelesítéshez használt hitelesítő adatok. Ez nem kötelező, ha a fiók URL-címe már rendelkezik SAS-jogkivonattal. Az érték lehet SAS-jogkivonat-sztring, egy AzureSasCredential vagy AzureNamedKeyCredential példánya az azure.core.credentials-ből, egy fiók megosztott hozzáférési kulcsa vagy az azure.identity tokencredentials osztályának egy példánya. Ha az erőforrás URI-ja már tartalmaz SAS-jogkivonatot, a rendszer ezt figyelmen kívül hagyja egy explicit hitelesítő adat javára.
- kivéve az AzureSasCredential esetében, ahol az ütköző SAS-jogkivonatok ValueError értéket fognak létrehozni. Ha azureNamedKeyCredential-példányt használ, a "név" a tárfiók neve, a "kulcs" pedig a tárfiók kulcsa.
- api_version
- str
A kérésekhez használandó Storage API-verzió. Az alapértelmezett érték az aktuális SDK-val kompatibilis legújabb szolgáltatásverzió. A régebbi verzióra való beállítás csökkentett funkciókompatibilitást eredményezhet.
- secondary_hostname
- str
A másodlagos végpont állomásneve.
- audience
- str
Az Azure Active Directory-hitelesítés jogkivonatainak lekéréséhez használni kívánt célközönség. Csak akkor van hatása, ha a hitelesítő adatok TokenCredential típusúak. Az érték lehet https://storage.azure.com/ (alapértelmezett) vagy https://.queue.core.windows.net.
Példák
A QueueServiceClient létrehozása egy fiók URL-címével és hitelesítő adataival.
from azure.storage.queue.aio import QueueServiceClient
queue_service = QueueServiceClient(account_url=self.account_url, credential=self.access_key)
A QueueServiceClient létrehozása Azure Identity-hitelesítő adatokkal.
# Get a token credential for authentication
from azure.identity.aio import ClientSecretCredential
token_credential = ClientSecretCredential(
self.active_directory_tenant_id,
self.active_directory_application_id,
self.active_directory_application_secret
)
# Instantiate a QueueServiceClient using a token credential
from azure.storage.queue.aio import QueueServiceClient
queue_service = QueueServiceClient(account_url=self.account_url, credential=token_credential)
Metódusok
close |
Ezzel a módszerrel zárja be az ügyfél által megnyitott szoftvercsatornákat. A környezetkezelővel való használathoz nem szükséges használni. |
create_queue |
Új üzenetsort hoz létre a megadott fiók alatt. Ha már létezik azonos nevű üzenetsor, a művelet meghiúsul. Egy ügyfelet ad vissza, amellyel az újonnan létrehozott üzenetsort használhatja. |
delete_queue |
Törli a megadott üzenetsort és a benne lévő üzeneteket. Ha egy üzenetsor sikeresen törölve van, a rendszer azonnal megjelöli törlésre, és már nem érhető el az ügyfelek számára. A rendszer később eltávolítja az üzenetsort a Queue szolgáltatásból a szemétgyűjtés során. Vegye figyelembe, hogy az üzenetsor törlése valószínűleg legalább 40 másodpercet vesz igénybe. Ha a rendszer egy műveletet kísérel meg az üzenetsoron a törlés közben, a rendszer egy <xref:azure.storage.queue.aio.HttpResponseError> üzenetet küld. |
from_connection_string |
QueueServiceClient létrehozása kapcsolati sztringből. |
get_queue_client |
Kérje meg az ügyfelet, hogy kommunikáljon a megadott üzenetsorsal. Az üzenetsornak még nem kell léteznie. |
get_service_properties |
Lekéri a tárfiók Queue szolgáltatásának tulajdonságait, beleértve az Azure Storage Analytics. |
get_service_stats |
Lekéri a Queue szolgáltatás replikációval kapcsolatos statisztikáit. Ez csak akkor érhető el, ha az olvasási hozzáférés georedundáns replikációja engedélyezve van a tárfiókhoz. A georedundáns replikációval az Azure Storage két helyen tartja tartósan az adatokat. Az Azure Storage mindkét helyen folyamatosan fenntartja az adatok több kifogástalan állapotú replikáját. Az adatok olvasási, létrehozási, frissítési vagy törlési helye az elsődleges tárfiók helye. Az elsődleges hely abban a régióban található, amelyben a fiók létrehozásakor a klasszikus Azure-beli Azure-portálon (például az USA északi középső régióján) keresztül hoz létre fiókot. Az adatok replikálásának helye a másodlagos hely. A másodlagos hely automatikusan meg lesz határozva az elsődleges hely alapján; egy második adatközpontban található, amely ugyanabban a régióban található, mint az elsődleges hely. Az írásvédett hozzáférés a másodlagos helyről érhető el, ha az olvasási hozzáférés georedundáns replikációja engedélyezve van a tárfiókban. |
list_queues |
Egy generátort ad vissza a megadott fiókban lévő üzenetsorok listázásához. A generátor lazán követi a szolgáltatás által visszaadott folytatási jogkivonatokat, és leáll az összes üzenetsor visszaadásakor. |
set_service_properties |
Beállítja a tárfiók Queue szolgáltatásának tulajdonságait, beleértve az Azure Storage Analytics. Ha egy elem (például analytics_logging) Nincs értéken marad, a szolgáltatás meglévő beállításai megmaradnak a funkcióhoz. |
close
Ezzel a módszerrel zárja be az ügyfél által megnyitott szoftvercsatornákat. A környezetkezelővel való használathoz nem szükséges használni.
async close()
create_queue
Új üzenetsort hoz létre a megadott fiók alatt.
Ha már létezik azonos nevű üzenetsor, a művelet meghiúsul. Egy ügyfelet ad vissza, amellyel az újonnan létrehozott üzenetsort használhatja.
async create_queue(name: str, metadata: Dict[str, str] | None = None, **kwargs: Any) -> QueueClient
Paraméterek
Egy diktálás name_value párokkal, amely metaadatként társítja az üzenetsort. Példa: {'Category': 'test'}
- timeout
- int
Az időtúllépési paraméter másodpercben van kifejezve.
Válaszok
Egy QueueClient az újonnan létrehozott üzenetsorhoz.
Visszatérési típus
Példák
Hozzon létre egy üzenetsort a szolgáltatásban.
await queue_service.create_queue("myqueue1")
delete_queue
Törli a megadott üzenetsort és a benne lévő üzeneteket.
Ha egy üzenetsor sikeresen törölve van, a rendszer azonnal megjelöli törlésre, és már nem érhető el az ügyfelek számára. A rendszer később eltávolítja az üzenetsort a Queue szolgáltatásból a szemétgyűjtés során.
Vegye figyelembe, hogy az üzenetsor törlése valószínűleg legalább 40 másodpercet vesz igénybe. Ha a rendszer egy műveletet kísérel meg az üzenetsoron a törlés közben, a rendszer egy <xref:azure.storage.queue.aio.HttpResponseError> üzenetet küld.
async delete_queue(queue: QueueProperties | str, **kwargs: Any) -> None
Paraméterek
- queue
- str vagy QueueProperties
A törölni kívánt üzenetsor. Ez lehet az üzenetsor neve vagy a QueueProperties egy példánya.
- timeout
- int
Az időtúllépési paraméter másodpercben van kifejezve.
Visszatérési típus
Példák
Üzenetsor törlése a szolgáltatásban.
await queue_service.delete_queue("myqueue1")
from_connection_string
QueueServiceClient létrehozása kapcsolati sztringből.
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | AsyncTokenCredential | None = None, **kwargs: Any) -> Self
Paraméterek
- credential
A hitelesítéshez használt hitelesítő adatok. Ez nem kötelező, ha a fiók URL-címe már rendelkezik SAS-jogkivonattal, vagy a kapcsolati karakterlánc már rendelkezik közös hozzáférési kulcsértékekkel. Az érték lehet SAS-jogkivonat-sztring, egy AzureSasCredential vagy AzureNamedKeyCredential példánya az azure.core.credentials-ből, egy fiók megosztott hozzáférési kulcsa vagy az azure.identity tokencredentials osztályának egy példánya. Az itt megadott hitelesítő adatok elsőbbséget élveznek a kapcsolati karakterlánc. Ha azureNamedKeyCredential-példányt használ, a "név" a tárfiók neve, a "kulcs" pedig a tárfiók kulcsa.
Válaszok
Üzenetsor-szolgáltatásügyfél.
Visszatérési típus
Példák
A QueueServiceClient létrehozása egy kapcsolati karakterlánc.
from azure.storage.queue import QueueServiceClient
queue_service = QueueServiceClient.from_connection_string(conn_str=self.connection_string)
get_queue_client
Kérje meg az ügyfelet, hogy kommunikáljon a megadott üzenetsorsal.
Az üzenetsornak még nem kell léteznie.
get_queue_client(queue: QueueProperties | str, **kwargs: Any) -> QueueClient
Paraméterek
- queue
- str vagy QueueProperties
Az üzenetsor. Ez lehet az üzenetsor neve vagy a QueueProperties egy példánya.
Válaszok
Egy QueueClient objektum.
Visszatérési típus
Példák
Kérje le az üzenetsor-ügyfelet.
# Get the queue client to interact with a specific queue
queue = queue_service.get_queue_client(queue="myqueue2")
get_service_properties
Lekéri a tárfiók Queue szolgáltatásának tulajdonságait, beleértve az Azure Storage Analytics.
async get_service_properties(**kwargs: Any) -> Dict[str, Any]
Paraméterek
- timeout
- int
Az időtúllépési paraméter másodpercben van kifejezve.
Válaszok
Üzenetsor-szolgáltatástulajdonságokat, például elemzési naplózást, óra/perc metrikákat, cors-szabályokat stb. tartalmazó objektum.
Visszatérési típus
Példák
Üzenetsor-szolgáltatás tulajdonságainak lekérése.
properties = await queue_service.get_service_properties()
get_service_stats
Lekéri a Queue szolgáltatás replikációval kapcsolatos statisztikáit.
Ez csak akkor érhető el, ha az olvasási hozzáférés georedundáns replikációja engedélyezve van a tárfiókhoz.
A georedundáns replikációval az Azure Storage két helyen tartja tartósan az adatokat. Az Azure Storage mindkét helyen folyamatosan fenntartja az adatok több kifogástalan állapotú replikáját. Az adatok olvasási, létrehozási, frissítési vagy törlési helye az elsődleges tárfiók helye. Az elsődleges hely abban a régióban található, amelyben a fiók létrehozásakor a klasszikus Azure-beli Azure-portálon (például az USA északi középső régióján) keresztül hoz létre fiókot. Az adatok replikálásának helye a másodlagos hely. A másodlagos hely automatikusan meg lesz határozva az elsődleges hely alapján; egy második adatközpontban található, amely ugyanabban a régióban található, mint az elsődleges hely. Az írásvédett hozzáférés a másodlagos helyről érhető el, ha az olvasási hozzáférés georedundáns replikációja engedélyezve van a tárfiókban.
async get_service_stats(**kwargs: Any) -> Dict[str, Any]
Paraméterek
- timeout
- int
Az időtúllépési paraméter másodpercben van kifejezve.
Válaszok
Az üzenetsor-szolgáltatás statisztikái.
Visszatérési típus
list_queues
Egy generátort ad vissza a megadott fiókban lévő üzenetsorok listázásához.
A generátor lazán követi a szolgáltatás által visszaadott folytatási jogkivonatokat, és leáll az összes üzenetsor visszaadásakor.
list_queues(name_starts_with: str | None = None, include_metadata: bool | None = False, **kwargs: Any) -> AsyncItemPaged
Paraméterek
- name_starts_with
- str
Az eredményeket úgy szűri, hogy csak azokat az üzenetsorokat adja vissza, amelyeknek a neve a megadott előtaggal kezdődik.
- include_metadata
- bool
Megadja, hogy az üzenetsor metaadatai vissza legyenek adva a válaszban.
- results_per_page
- int
Az API-hívásonként lekérhető üzenetsornevek maximális száma. Ha a kérelem nem adja meg, a kiszolgáló legfeljebb 5000 elemet ad vissza.
- timeout
- int
Beállítja a művelet kiszolgálóoldali időtúllépését másodpercben. További információ: https://learn.microsoft.com/en-us/rest/api/storageservices/setting-timeouts-for-queue-service-operations. Ez az érték nincs nyomon követve vagy érvényesítve az ügyfélen. Az ügyféloldali hálózati időtúllépések konfigurálásához lásd itt. Ez a függvény több hívást is kezdeményezhet a szolgáltatáshoz, ebben az esetben a megadott időtúllépési érték lesz alkalmazva minden egyes hívásra.
Válaszok
A QueueProperties iterable (automatikus lapozás) eleme.
Visszatérési típus
Példák
Várólisták listázása a szolgáltatásban.
# List all the queues in the service
list_queues = queue_service.list_queues()
async for queue in list_queues:
print(queue)
# List the queues in the service that start with the name "my_"
list_my_queues = queue_service.list_queues(name_starts_with="my_")
async for queue in list_my_queues:
print(queue)
set_service_properties
Beállítja a tárfiók Queue szolgáltatásának tulajdonságait, beleértve az Azure Storage Analytics.
Ha egy elem (például analytics_logging) Nincs értéken marad, a szolgáltatás meglévő beállításai megmaradnak a funkcióhoz.
async set_service_properties(analytics_logging: QueueAnalyticsLogging | None = None, hour_metrics: Metrics | None = None, minute_metrics: Metrics | None = None, cors: List[CorsRule] | None = None, **kwargs: Any) -> None
Paraméterek
- analytics_logging
- QueueAnalyticsLogging
Az Azure Analytics naplózási beállításainak csoportosítása.
- hour_metrics
- Metrics
Az órametrikák beállításai az API-k szerint csoportosított kérésstatisztikák összegzését biztosítják óránkénti összesítésekben az üzenetsorokhoz.
- minute_metrics
- Metrics
A percmetrika-beállítások az üzenetsorok percenkénti statisztikáit adják meg.
A listában legfeljebb öt CorsRule-elem szerepelhet. Ha egy üres lista van megadva, az összes CORS-szabály törlődik, és a CORS le lesz tiltva a szolgáltatáshoz.
- timeout
- int
Az időtúllépési paraméter másodpercben van kifejezve.
Példák
Üzenetsor-szolgáltatás tulajdonságainak beállítása.
# Create service properties
from azure.storage.queue import QueueAnalyticsLogging, Metrics, CorsRule, RetentionPolicy
# Create logging settings
logging = QueueAnalyticsLogging(read=True, write=True, delete=True, retention_policy=RetentionPolicy(enabled=True, days=5))
# Create metrics for requests statistics
hour_metrics = Metrics(enabled=True, include_apis=True, retention_policy=RetentionPolicy(enabled=True, days=5))
minute_metrics = Metrics(enabled=True, include_apis=True, retention_policy=RetentionPolicy(enabled=True, days=5))
# Create CORS rules
cors_rule1 = CorsRule(['www.xyz.com'], ['GET'])
allowed_origins = ['www.xyz.com', "www.ab.com", "www.bc.com"]
allowed_methods = ['GET', 'PUT']
max_age_in_seconds = 500
exposed_headers = ["x-ms-meta-data*", "x-ms-meta-source*", "x-ms-meta-abc", "x-ms-meta-bcd"]
allowed_headers = ["x-ms-meta-data*", "x-ms-meta-target*", "x-ms-meta-xyz", "x-ms-meta-foo"]
cors_rule2 = CorsRule(
allowed_origins,
allowed_methods,
max_age_in_seconds=max_age_in_seconds,
exposed_headers=exposed_headers,
allowed_headers=allowed_headers
)
cors = [cors_rule1, cors_rule2]
# Set the service properties
await queue_service.set_service_properties(logging, hour_metrics, minute_metrics, cors)
Attribútumok
api_version
location_mode
Az ügyfél által jelenleg használt hely mód.
Alapértelmezés szerint ez lesz az "elsődleges". A beállítások közé tartozik az "elsődleges" és a "másodlagos".
Visszatérési típus
primary_endpoint
primary_hostname
secondary_endpoint
A teljes másodlagos végpont URL-címe, ha konfigurálva van.
Ha nem érhető el, a rendszer létrehoz egy ValueError értéket. Másodlagos állomásnév explicit megadásához használja az opcionális secondary_hostname kulcsszóargumentumot a példányosításkor.
Visszatérési típus
Kivételek
secondary_hostname
A másodlagos végpont állomásneve.
Ha nem érhető el, ez Nem lesz. Másodlagos állomásnév explicit megadásához használja az opcionális secondary_hostname kulcsszóargumentumot a példányosításkor.
Visszatérési típus
url
Az entitás teljes végponti URL-címe, beleértve az SAS-jogkivonatot is, ha használják.
Ez lehet az elsődleges végpont vagy a másodlagos végpont az aktuálistól location_modefüggően. :returns: Az entitás teljes végponti URL-címe, beleértve az SAS-jogkivonatot is, ha használják. :rtype: str
Azure SDK for Python