QueueServiceClient Třída

Klient pro interakci se službou Queue Service na úrovni účtu.

Tento klient poskytuje operace pro načtení a konfiguraci vlastností účtu a také výpis, vytvoření a odstranění front v rámci účtu. U operací souvisejících s konkrétní frontou je možné klienta pro tuto entitu get_queue_client načíst pomocí funkce .

Další volitelnou konfiguraci potřebujete kliknutím sem.

Dědičnost
azure.storage.queue._shared.base_client.StorageAccountHostsMixin
QueueServiceClient
azure.storage.queue._encryption.StorageEncryptionMixin
QueueServiceClient

Konstruktor

QueueServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)

Parametry

account_url
str
Vyžadováno

Adresa URL koncového bodu služby fronty Všechny ostatní entity zahrnuté v cestě URL (např. fronta) budou zahozeny. Tuto adresu URL je možné volitelně ověřit pomocí tokenu SAS.

credential
výchozí hodnota: None

Přihlašovací údaje, pomocí kterých se má ověřit. Tato možnost je volitelná, pokud adresa URL účtu už token SAS má. Hodnotou může být řetězec tokenu SAS, instance AzureSasCredential nebo AzureNamedKeyCredential z azure.core.credentials, sdílený přístupový klíč účtu nebo instance třídy TokenCredentials z azure.identity. Pokud identifikátor URI prostředku už obsahuje token SAS, bude se tento token ignorovat ve prospěch explicitních přihlašovacích údajů.

  • s výjimkou případu AzureSasCredential, kde konfliktní tokeny SAS způsobí chybu ValueError. Pokud používáte instanci AzureNamedKeyCredential, název by měl být název účtu úložiště a klíč by měl být klíč účtu úložiště.
api_version
str

Verze rozhraní API služby Storage, která se má použít pro požadavky. Výchozí hodnota je nejnovější verze služby, která je kompatibilní s aktuální sadou SDK. Nastavení na starší verzi může mít za následek snížení kompatibility funkcí.

secondary_hostname
str

Název hostitele sekundárního koncového bodu.

audience
str

Cílová skupina, která se má použít při žádosti o tokeny pro ověřování Azure Active Directory. Má vliv pouze v případě, že jsou přihlašovací údaje typu TokenCredential. Hodnota může být https://storage.azure.com/ (výchozí) nebo https://.queue.core.windows.net.

Příklady

Vytvoření QueueServiceClient s adresou URL účtu a přihlašovacími údaji


   from azure.storage.queue import QueueServiceClient
   queue_service = QueueServiceClient(account_url=self.account_url, credential=self.access_key)

Vytvoření QueueServiceClient s přihlašovacími údaji identity Azure


   # Get a token credential for authentication
   from azure.identity 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 import QueueServiceClient
   queue_service = QueueServiceClient(account_url=self.account_url, credential=token_credential)

Metody

close

Tato metoda slouží k zavření soketů otevřených klientem. Nemusí se používat při použití se správcem kontextu.

create_queue

Vytvoří novou frontu pod zadaným účtem.

Pokud již fronta se stejným názvem existuje, operace selže. Vrátí klienta, se kterým chcete pracovat s nově vytvořenou frontou.

delete_queue

Odstraní zadanou frontu a všechny zprávy, které obsahuje.

Když se fronta úspěšně odstraní, okamžitě se označí k odstranění a přestane být přístupná klientům. Fronta se později odebere ze služby Queue během uvolňování paměti.

Upozorňujeme, že odstranění fronty bude pravděpodobně trvat alespoň 40 sekund. Pokud dojde k pokusu o operaci s frontou v době, kdy byla odstraněna, <xref:azure.storage.queue.HttpResponseError> vyvolá se operace.

from_connection_string

Vytvořte QueueServiceClient z připojovacího řetězce.

get_queue_client

Získejte klienta pro interakci se zadanou frontou.

Fronta ještě nemusí existovat.

get_service_properties

Získá vlastnosti služby Queue účtu úložiště, včetně Azure Analýza úložiště.

get_service_stats

Načte statistiky související s replikací služby Queue.

Je k dispozici pouze v případě, že je pro účet úložiště povolená geograficky redundantní replikace s přístupem pro čtení.

Díky geograficky redundantní replikaci azure storage udržuje vaše data odolná ve dvou umístěních. V obou umístěních Azure Storage neustále udržuje několik replik dat, které jsou v pořádku. Umístění, kde čtete, vytváříte, aktualizujete nebo odstraňujete data, je primární umístění účtu úložiště. Primární umístění existuje v oblasti, kterou zvolíte, v okamžiku vytvoření účtu prostřednictvím portálu Azure Management Azure Classic, například USA – středosever. Umístění, do kterého se data replikují, je sekundární umístění. Sekundární umístění je automaticky určeno na základě umístění primární; nachází se ve druhém datovém centru, které se nachází ve stejné oblasti jako primární umístění. Přístup jen pro čtení je k dispozici ze sekundárního umístění, pokud je pro váš účet úložiště povolená geograficky redundantní replikace s přístupem pro čtení.

list_queues

Vrátí generátor pro výpis front v rámci zadaného účtu.

Generátor bude líně sledovat tokeny pokračování vrácené službou a zastaví se, jakmile se vrátí všechny fronty.

set_service_properties

Nastaví vlastnosti služby Queue účtu úložiště, včetně Azure Analýza úložiště.

Pokud je prvek (např. analytics_logging) ponechán jako Žádný, stávající nastavení služby pro tuto funkci se zachovají.

close

Tato metoda slouží k zavření soketů otevřených klientem. Nemusí se používat při použití se správcem kontextu.

close()

create_queue

Vytvoří novou frontu pod zadaným účtem.

Pokud již fronta se stejným názvem existuje, operace selže. Vrátí klienta, se kterým chcete pracovat s nově vytvořenou frontou.

create_queue(name: str, metadata: Dict[str, str] | None = None, **kwargs: Any) -> QueueClient

Parametry

name
str
Vyžadováno

Název fronty, která se má vytvořit.

metadata
Dict[str, str]
Vyžadováno

Dikt s name_value páry, které se přidruží k frontě jako metadata. Příklad: {'Category': 'test'}

timeout
int

Parametr časového limitu je vyjádřen v sekundách.

Návraty

QueueClient pro nově vytvořenou frontu.

Návratový typ

Příklady

Vytvořte frontu ve službě.


   queue_service.create_queue("myqueue1")

delete_queue

Odstraní zadanou frontu a všechny zprávy, které obsahuje.

Když se fronta úspěšně odstraní, okamžitě se označí k odstranění a přestane být přístupná klientům. Fronta se později odebere ze služby Queue během uvolňování paměti.

Upozorňujeme, že odstranění fronty bude pravděpodobně trvat alespoň 40 sekund. Pokud dojde k pokusu o operaci s frontou v době, kdy byla odstraněna, <xref:azure.storage.queue.HttpResponseError> vyvolá se operace.

delete_queue(queue: QueueProperties | str, **kwargs: Any) -> None

Parametry

queue
str nebo QueueProperties
Vyžadováno

Fronta, která se má odstranit. Může to být buď název fronty, nebo instance QueueProperties.

timeout
int

Parametr časového limitu je vyjádřen v sekundách.

Návratový typ

Příklady

Odstranění fronty ve službě


   queue_service.delete_queue("myqueue1")

from_connection_string

Vytvořte QueueServiceClient z připojovacího řetězce.

from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

Parametry

conn_str
str
Vyžadováno

Připojovací řetězec k účtu služby Azure Storage.

credential
výchozí hodnota: None

Přihlašovací údaje, pomocí kterých se má ověřit. Tato možnost je volitelná, pokud adresa URL účtu už má token SAS nebo připojovací řetězec již obsahuje hodnoty sdíleného přístupového klíče. Hodnotou může být řetězec tokenu SAS, instance AzureSasCredential nebo AzureNamedKeyCredential z azure.core.credentials, sdílený přístupový klíč účtu nebo instance třídy TokenCredentials z azure.identity. Zde zadané přihlašovací údaje budou mít přednost před přihlašovacími údaji v připojovací řetězec. Pokud používáte instanci AzureNamedKeyCredential, název by měl být název účtu úložiště a klíč by měl být klíč účtu úložiště.

audience
str

Cílová skupina, která se má použít při žádosti o tokeny pro ověřování Azure Active Directory. Má vliv pouze v případě, že jsou přihlašovací údaje typu TokenCredential. Hodnota může být https://storage.azure.com/ (výchozí) nebo https://.queue.core.windows.net.

Návraty

Klient frontové služby.

Návratový typ

Příklady

Vytvoření QueueServiceClient pomocí připojovací řetězec.


   from azure.storage.queue import QueueServiceClient
   queue_service = QueueServiceClient.from_connection_string(conn_str=self.connection_string)

get_queue_client

Získejte klienta pro interakci se zadanou frontou.

Fronta ještě nemusí existovat.

get_queue_client(queue: QueueProperties | str, **kwargs: Any) -> QueueClient

Parametry

queue
str nebo QueueProperties
Vyžadováno

Fronta. Může to být buď název fronty, nebo instance QueueProperties.

Návraty

Objekt QueueClient .

Návratový typ

Příklady

Získejte klienta fronty.


   # Get the queue client to interact with a specific queue
   queue = queue_service.get_queue_client(queue="myqueue2")

get_service_properties

Získá vlastnosti služby Queue účtu úložiště, včetně Azure Analýza úložiště.

get_service_properties(**kwargs: Any) -> Dict[str, Any]

Parametry

timeout
int

Parametr časového limitu je vyjádřen v sekundách.

Návraty

Objekt obsahující vlastnosti služby fronty, jako je protokolování analýz, metriky hodin a minut, pravidla cors atd.

Návratový typ

Příklady

Získání vlastností služby fronty


   properties = queue_service.get_service_properties()

get_service_stats

Načte statistiky související s replikací služby Queue.

Je k dispozici pouze v případě, že je pro účet úložiště povolená geograficky redundantní replikace s přístupem pro čtení.

Díky geograficky redundantní replikaci azure storage udržuje vaše data odolná ve dvou umístěních. V obou umístěních Azure Storage neustále udržuje několik replik dat, které jsou v pořádku. Umístění, kde čtete, vytváříte, aktualizujete nebo odstraňujete data, je primární umístění účtu úložiště. Primární umístění existuje v oblasti, kterou zvolíte, v okamžiku vytvoření účtu prostřednictvím portálu Azure Management Azure Classic, například USA – středosever. Umístění, do kterého se data replikují, je sekundární umístění. Sekundární umístění je automaticky určeno na základě umístění primární; nachází se ve druhém datovém centru, které se nachází ve stejné oblasti jako primární umístění. Přístup jen pro čtení je k dispozici ze sekundárního umístění, pokud je pro váš účet úložiště povolená geograficky redundantní replikace s přístupem pro čtení.

get_service_stats(**kwargs: Any) -> Dict[str, Any]

Parametry

timeout
int

Parametr časového limitu je vyjádřen v sekundách.

Návraty

Statistiky služby front.

Návratový typ

list_queues

Vrátí generátor pro výpis front v rámci zadaného účtu.

Generátor bude líně sledovat tokeny pokračování vrácené službou a zastaví se, jakmile se vrátí všechny fronty.

list_queues(name_starts_with: str | None = None, include_metadata: bool | None = False, **kwargs: Any) -> ItemPaged[QueueProperties]

Parametry

name_starts_with
str
Vyžadováno

Filtruje výsledky tak, aby vracely pouze fronty, jejichž názvy začínají zadanou předponou.

include_metadata
bool
Vyžadováno

Určuje, že se v odpovědi vrátí metadata fronty.

results_per_page
int

Maximální počet názvů front, které se mají načíst na volání rozhraní API. Pokud požadavek neurčil, server vrátí až 5 000 položek.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://video2.skills-academy.com/en-us/rest/api/storageservices/setting-timeouts-for-queue-service-operations. Tato hodnota se v klientovi nesleduje ani neověřuje. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady. Tato funkce může provádět více volání služby. V takovém případě se zadaná hodnota časového limitu použije na každé jednotlivá volání.

Návraty

Iterable (automatické stránkování) QueueProperties.

Návratový typ

Příklady

Vypíše fronty ve službě.


   # List all the queues in the service
   list_queues = queue_service.list_queues()
   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")
   for queue in list_my_queues:
       print(queue)

set_service_properties

Nastaví vlastnosti služby Queue účtu úložiště, včetně Azure Analýza úložiště.

Pokud je prvek (např. analytics_logging) ponechán jako Žádný, stávající nastavení služby pro tuto funkci se zachovají.

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

Parametry

analytics_logging
QueueAnalyticsLogging
Vyžadováno

Seskupí nastavení protokolování Azure Analytics.

hour_metrics
Metrics
Vyžadováno

Nastavení hodinové metriky poskytují souhrn statistik žádostí seskupených podle rozhraní API v hodinové agregaci pro fronty.

minute_metrics
Metrics
Vyžadováno

Nastavení minutových metrik poskytují statistiky požadavků pro každou minutu front.

cors
Optional[List[CorsRule]]
Vyžadováno

Do seznamu můžete zahrnout až pět prvků CorsRule. Pokud zadáte prázdný seznam, odstraní se všechna pravidla CORS a CORS se pro službu zakáže.

timeout
int

Parametr časového limitu se vyjadřuje v sekundách.

Příklady

Nastavení vlastností služby fronty


   # 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
   queue_service.set_service_properties(logging, hour_metrics, minute_metrics, cors)

Atributy

api_version

Verze rozhraní API služby Storage, která se používá pro požadavky.

Návratový typ

str

location_mode

Režim umístění, který klient aktuálně používá.

Ve výchozím nastavení to bude "primární". Mezi možnosti patří "primární" a "sekundární".

Návratový typ

str

primary_endpoint

Úplná adresa URL primárního koncového bodu.

Návratový typ

str

primary_hostname

Název hostitele primárního koncového bodu.

Návratový typ

str

secondary_endpoint

Úplná adresa URL sekundárního koncového bodu, pokud je nakonfigurovaná.

Pokud není k dispozici, bude vyvolána chyba ValueError. Pokud chcete explicitně zadat název sekundárního hostitele, použijte volitelný argument secondary_hostname klíčového slova pro vytvoření instance.

Návratový typ

str

Výjimky

secondary_hostname

Název hostitele sekundárního koncového bodu.

Pokud není k dispozici, bude to Žádný. Pokud chcete explicitně zadat název sekundárního hostitele, použijte volitelný argument secondary_hostname klíčového slova pro vytvoření instance.

Návratový typ

url

Úplná adresa URL koncového bodu pro tuto entitu, včetně tokenu SAS, pokud je použit.

To může být primární koncový bod nebo sekundární koncový bod v závislosti na aktuálním location_mode. :returns: Úplná adresa URL koncového bodu pro tuto entitu, včetně tokenu SAS, pokud je použit. :rtype: str