QueueServiceClient Klasa
Klient do interakcji z usługą Kolejki na poziomie konta.
Ten klient udostępnia operacje pobierania i konfigurowania właściwości konta, a także tworzenia i usuwania kolejek w ramach konta. W przypadku operacji związanych z określoną kolejką można pobrać klienta dla tej jednostki przy użyciu get_queue_client funkcji .
- Dziedziczenie
-
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)
Parametry
- account_url
- str
Adres URL punktu końcowego usługi kolejki. Wszystkie inne jednostki uwzględnione w ścieżce adresu URL (np. kolejka) zostaną odrzucone. Ten adres URL można opcjonalnie uwierzytelnić przy użyciu tokenu SAS.
- credential
Poświadczenia, za pomocą których należy się uwierzytelniać. Jest to opcjonalne, jeśli adres URL konta ma już token SAS. Wartość może być ciągiem tokenu sygnatury dostępu współdzielonego, wystąpieniem klasy AzureSasCredential lub AzureNamedKeyCredential z elementu azure.core.credentials, kluczem dostępu współużytkowanego konta lub wystąpieniem klasy TokenCredentials z klasy azure.identity. Jeśli identyfikator URI zasobu zawiera już token sygnatury dostępu współdzielonego, zostanie on zignorowany na rzecz jawnego poświadczenia
- z wyjątkiem przypadków usługi AzureSasCredential, gdzie powodujące konflikty tokeny SYGNATURy dostępu współdzielonego spowodują podniesienie wartościError. Jeśli używasz wystąpienia elementu AzureNamedKeyCredential, wartość "name" powinna być nazwą konta magazynu, a "klucz" powinien być kluczem konta magazynu.
- api_version
- str
Wersja interfejsu API usługi Storage do użycia dla żądań. Wartość domyślna to najnowsza wersja usługi zgodna z bieżącym zestawem SDK. Ustawienie starszej wersji może spowodować zmniejszenie zgodności funkcji.
- secondary_hostname
- str
Nazwa hosta pomocniczego punktu końcowego.
- audience
- str
Odbiorcy do użycia podczas żądania tokenów na potrzeby uwierzytelniania usługi Azure Active Directory. Ma wpływ tylko wtedy, gdy poświadczenie ma typ TokenCredential. Wartość może być https://storage.azure.com/ (domyślna) lub https://.queue.core.windows.net.
Przykłady
Tworzenie obiektu QueueServiceClient przy użyciu adresu URL konta i poświadczeń.
from azure.storage.queue.aio import QueueServiceClient
queue_service = QueueServiceClient(account_url=self.account_url, credential=self.access_key)
Tworzenie obiektu QueueServiceClient przy użyciu poświadczeń tożsamości platformy Azure.
# 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)
Metody
close |
Ta metoda polega na zamknięciu gniazd otwartych przez klienta. Nie trzeba jej używać w przypadku używania z menedżerem kontekstu. |
create_queue |
Tworzy nową kolejkę w ramach określonego konta. Jeśli kolejka o tej samej nazwie już istnieje, operacja zakończy się niepowodzeniem. Zwraca klienta, z którym można korzystać z nowo utworzonej kolejki. |
delete_queue |
Usuwa określoną kolejkę i wszystkie komunikaty, które zawiera. Gdy kolejka zostanie pomyślnie usunięta, zostanie ona natychmiast oznaczona do usunięcia i nie jest już dostępna dla klientów. Kolejka zostanie później usunięta z usługi Kolejki podczas odzyskiwania pamięci. Pamiętaj, że usunięcie kolejki może potrwać co najmniej 40 sekund. Jeśli operacja zostanie podjęta względem kolejki podczas jej usunięcia, <xref:azure.storage.queue.aio.HttpResponseError> zostanie zwrócona operacja. |
from_connection_string |
Utwórz element QueueServiceClient na podstawie parametrów połączenia. |
get_queue_client |
Pobierz klienta do interakcji z określoną kolejką. Kolejka nie musi już istnieć. |
get_service_properties |
Pobiera właściwości usługi kolejki konta magazynu, w tym usługę Azure analityka magazynu. |
get_service_stats |
Pobiera statystyki związane z replikacją dla usługi Kolejki. Jest ona dostępna tylko wtedy, gdy dla konta magazynu jest włączona replikacja geograficznie nadmiarowa dostępu do odczytu. Dzięki replikacji geograficznie nadmiarowej usługa Azure Storage utrzymuje trwałość danych w dwóch lokalizacjach. W obu lokalizacjach usługa Azure Storage stale utrzymuje wiele replik w dobrej kondycji danych. Lokalizacja, w której odczytujesz, utworzysz, zaktualizujesz lub usuniesz dane, jest podstawową lokalizacją konta magazynu. Lokalizacja podstawowa istnieje w wybranym regionie podczas tworzenia konta za pośrednictwem klasycznego portalu Azure Management, na przykład północno-środkowe stany USA. Lokalizacja, do której są replikowane dane, to lokalizacja pomocnicza. Lokalizacja pomocnicza jest automatycznie określana na podstawie lokalizacji podstawowej; znajduje się w drugim centrum danych, które znajduje się w tym samym regionie co lokalizacja podstawowa. Dostęp tylko do odczytu jest dostępny z lokalizacji pomocniczej, jeśli dla konta magazynu jest włączona replikacja geograficznie nadmiarowa dostępu do odczytu. |
list_queues |
Zwraca generator, aby wyświetlić listę kolejek w ramach określonego konta. Generator będzie z opóźnieniem śledzić tokeny kontynuacji zwracane przez usługę i zatrzymywać się po zwróceniu wszystkich kolejek. |
set_service_properties |
Ustawia właściwości usługi kolejkowania konta magazynu, w tym usługi Azure analityka magazynu. Jeśli element (np. analytics_logging) zostanie pozostawiony jako Brak, istniejące ustawienia usługi dla tej funkcji zostaną zachowane. |
close
Ta metoda polega na zamknięciu gniazd otwartych przez klienta. Nie trzeba jej używać w przypadku używania z menedżerem kontekstu.
async close()
create_queue
Tworzy nową kolejkę w ramach określonego konta.
Jeśli kolejka o tej samej nazwie już istnieje, operacja zakończy się niepowodzeniem. Zwraca klienta, z którym można korzystać z nowo utworzonej kolejki.
async create_queue(name: str, metadata: Dict[str, str] | None = None, **kwargs: Any) -> QueueClient
Parametry
Dykt z parami name_value do skojarzenia z kolejką jako metadanymi. Przykład: {'Category': 'test'}
- timeout
- int
Parametr limitu czasu jest wyrażony w sekundach.
Zwraca
Element QueueClient dla nowo utworzonej kolejki.
Typ zwracany
Przykłady
Utwórz kolejkę w usłudze.
await queue_service.create_queue("myqueue1")
delete_queue
Usuwa określoną kolejkę i wszystkie komunikaty, które zawiera.
Gdy kolejka zostanie pomyślnie usunięta, zostanie ona natychmiast oznaczona do usunięcia i nie jest już dostępna dla klientów. Kolejka zostanie później usunięta z usługi Kolejki podczas odzyskiwania pamięci.
Pamiętaj, że usunięcie kolejki może potrwać co najmniej 40 sekund. Jeśli operacja zostanie podjęta względem kolejki podczas jej usunięcia, <xref:azure.storage.queue.aio.HttpResponseError> zostanie zwrócona operacja.
async delete_queue(queue: QueueProperties | str, **kwargs: Any) -> None
Parametry
- queue
- str lub QueueProperties
Kolejka do usunięcia. Może to być nazwa kolejki lub wystąpienie właściwości QueueProperties.
- timeout
- int
Parametr limitu czasu jest wyrażony w sekundach.
Typ zwracany
Przykłady
Usuń kolejkę w usłudze.
await queue_service.delete_queue("myqueue1")
from_connection_string
Utwórz element QueueServiceClient na podstawie parametrów połączenia.
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | AsyncTokenCredential | None = None, **kwargs: Any) -> Self
Parametry
- credential
Poświadczenia, za pomocą których należy się uwierzytelniać. Jest to opcjonalne, jeśli adres URL konta ma już token SAS lub parametry połączenia ma już wartości klucza dostępu współdzielonego. Wartość może być ciągiem tokenu sygnatury dostępu współdzielonego, wystąpieniem klasy AzureSasCredential lub AzureNamedKeyCredential z elementu azure.core.credentials, kluczem dostępu współużytkowanego konta lub wystąpieniem klasy TokenCredentials z klasy azure.identity. Poświadczenia podane w tym miejscu będą miały pierwszeństwo przed tymi w parametry połączenia. Jeśli używasz wystąpienia elementu AzureNamedKeyCredential, wartość "name" powinna być nazwą konta magazynu, a "klucz" powinien być kluczem konta magazynu.
Zwraca
Klient usługi kolejki.
Typ zwracany
Przykłady
Tworzenie obiektu QueueServiceClient przy użyciu parametry połączenia.
from azure.storage.queue import QueueServiceClient
queue_service = QueueServiceClient.from_connection_string(conn_str=self.connection_string)
get_queue_client
Pobierz klienta do interakcji z określoną kolejką.
Kolejka nie musi już istnieć.
get_queue_client(queue: QueueProperties | str, **kwargs: Any) -> QueueClient
Parametry
- queue
- str lub QueueProperties
Kolejka. Może to być nazwa kolejki lub wystąpienie właściwości QueueProperties.
Zwraca
Obiekt QueueClient.
Typ zwracany
Przykłady
Pobierz klienta kolejki.
# Get the queue client to interact with a specific queue
queue = queue_service.get_queue_client(queue="myqueue2")
get_service_properties
Pobiera właściwości usługi kolejki konta magazynu, w tym usługę Azure analityka magazynu.
async get_service_properties(**kwargs: Any) -> Dict[str, Any]
Parametry
- timeout
- int
Parametr limitu czasu jest wyrażony w sekundach.
Zwraca
Obiekt zawierający właściwości usługi kolejki, takie jak rejestrowanie analiz, metryki godzin/minuty, reguły cors itp.
Typ zwracany
Przykłady
Pobieranie właściwości usługi kolejki.
properties = await queue_service.get_service_properties()
get_service_stats
Pobiera statystyki związane z replikacją dla usługi Kolejki.
Jest ona dostępna tylko wtedy, gdy dla konta magazynu jest włączona replikacja geograficznie nadmiarowa dostępu do odczytu.
Dzięki replikacji geograficznie nadmiarowej usługa Azure Storage utrzymuje trwałość danych w dwóch lokalizacjach. W obu lokalizacjach usługa Azure Storage stale utrzymuje wiele replik w dobrej kondycji danych. Lokalizacja, w której odczytujesz, utworzysz, zaktualizujesz lub usuniesz dane, jest podstawową lokalizacją konta magazynu. Lokalizacja podstawowa istnieje w wybranym regionie podczas tworzenia konta za pośrednictwem klasycznego portalu Azure Management, na przykład północno-środkowe stany USA. Lokalizacja, do której są replikowane dane, to lokalizacja pomocnicza. Lokalizacja pomocnicza jest automatycznie określana na podstawie lokalizacji podstawowej; znajduje się w drugim centrum danych, które znajduje się w tym samym regionie co lokalizacja podstawowa. Dostęp tylko do odczytu jest dostępny z lokalizacji pomocniczej, jeśli dla konta magazynu jest włączona replikacja geograficznie nadmiarowa dostępu do odczytu.
async get_service_stats(**kwargs: Any) -> Dict[str, Any]
Parametry
- timeout
- int
Parametr limitu czasu jest wyrażony w sekundach.
Zwraca
Statystyki usługi kolejki.
Typ zwracany
list_queues
Zwraca generator, aby wyświetlić listę kolejek w ramach określonego konta.
Generator będzie z opóźnieniem śledzić tokeny kontynuacji zwracane przez usługę i zatrzymywać się po zwróceniu wszystkich kolejek.
list_queues(name_starts_with: str | None = None, include_metadata: bool | None = False, **kwargs: Any) -> AsyncItemPaged
Parametry
- name_starts_with
- str
Filtruje wyniki, aby zwracać tylko kolejki, których nazwy zaczynają się od określonego prefiksu.
- results_per_page
- int
Maksymalna liczba nazw kolejek do pobrania na wywołanie interfejsu API. Jeśli żądanie nie określi serwera, zwróci maksymalnie 5000 elementów.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/en-us/rest/api/storageservices/setting-timeouts-for-queue-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj. Ta funkcja może wykonywać wiele wywołań do usługi w takim przypadku, gdy określona wartość limitu czasu zostanie zastosowana do każdego wywołania indywidualnego.
Zwraca
Iterowalne (automatyczne stronicowanie) właściwości QueueProperties.
Typ zwracany
Przykłady
Wyświetl listę kolejek w usłudze.
# 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
Ustawia właściwości usługi kolejkowania konta magazynu, w tym usługi Azure analityka magazynu.
Jeśli element (np. analytics_logging) zostanie pozostawiony jako Brak, istniejące ustawienia usługi dla tej funkcji zostaną zachowane.
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
Parametry
- analytics_logging
- QueueAnalyticsLogging
Grupuje ustawienia rejestrowania usługi Azure Analytics.
- hour_metrics
- Metrics
Ustawienia metryk godzin zawierają podsumowanie statystyk żądań pogrupowanych według interfejsu API w agregacjach godzinowych dla kolejek.
- minute_metrics
- Metrics
Ustawienia metryk minut zapewniają statystyki żądań dla każdej minuty kolejek.
Na liście można uwzględnić maksymalnie pięć elementów CorsRule. Jeśli zostanie określona pusta lista, wszystkie reguły CORS zostaną usunięte, a mechanizm CORS zostanie wyłączony dla usługi.
- timeout
- int
Parametr limitu czasu jest wyrażony w sekundach.
Przykłady
Ustawianie właściwości usługi kolejki.
# 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)
Atrybuty
api_version
location_mode
Tryb lokalizacji używany przez klienta.
Domyślnie będzie to "podstawowe". Opcje obejmują "podstawowe" i "pomocnicze".
Typ zwracany
primary_endpoint
primary_hostname
secondary_endpoint
Pełny pomocniczy adres URL punktu końcowego, jeśli został skonfigurowany.
Jeśli parametr ValueError nie jest dostępny, zostanie zgłoszony. Aby jawnie określić pomocniczą nazwę hosta, użyj opcjonalnego argumentu słowa kluczowego secondary_hostname wystąpienia.
Typ zwracany
Wyjątki
secondary_hostname
Nazwa hosta pomocniczego punktu końcowego.
Jeśli ta opcja nie będzie dostępna, będzie to Brak. Aby jawnie określić pomocniczą nazwę hosta, użyj opcjonalnego argumentu słowa kluczowego secondary_hostname wystąpienia.
Typ zwracany
url
Pełny adres URL punktu końcowego do tej jednostki, w tym token SAS, jeśli jest używany.
Może to być podstawowy punkt końcowy lub pomocniczy punkt końcowy w zależności od bieżącego location_modeelementu . :zwraca: pełny adres URL punktu końcowego do tej jednostki, w tym token SAS, jeśli jest używany. :rtype: str
Azure SDK for Python