QueueServiceClient Clase
Un cliente para interactuar con Queue Service en el nivel de cuenta.
Este cliente proporciona operaciones para recuperar y configurar las propiedades de la cuenta, así como enumerar, crear y eliminar colas dentro de la cuenta. En el caso de las operaciones relacionadas con una cola específica, se puede recuperar un cliente para esta entidad mediante la get_queue_client función .
Para obtener más configuración opcional, haga clic aquí.
- Herencia
-
azure.storage.queue._shared.base_client.StorageAccountHostsMixinQueueServiceClientazure.storage.queue._encryption.StorageEncryptionMixinQueueServiceClient
Constructor
QueueServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)
Parámetros
- account_url
- str
Dirección URL del punto de conexión de queue service. Cualquier otra entidad incluida en la ruta de acceso url (por ejemplo, cola) se descartará. Esta dirección URL se puede autenticar opcionalmente con un token de SAS.
- credential
Credenciales con las que se va a autenticar. Esto es opcional si la dirección URL de la cuenta ya tiene un token de SAS. El valor puede ser una cadena de token de SAS, una instancia de AzureSasCredential o AzureNamedKeyCredential de azure.core.credentials, una clave de acceso compartido de cuenta o una instancia de una clase TokenCredentials de azure.identity. Si el URI del recurso ya contiene un token de SAS, se omitirá en favor de una credencial explícita.
- excepto en el caso de AzureSasCredential, donde los tokens de SAS en conflicto generarán un valor ValueError. Si usa una instancia de AzureNamedKeyCredential, "name" debe ser el nombre de la cuenta de almacenamiento y "key" debe ser la clave de la cuenta de almacenamiento.
- api_version
- str
La versión de la API de Storage que se va a usar para las solicitudes. El valor predeterminado es la versión de servicio más reciente que es compatible con el SDK actual. Establecer en una versión anterior puede dar lugar a una reducción de la compatibilidad de características.
- secondary_hostname
- str
Nombre de host del punto de conexión secundario.
- audience
- str
Audiencia que se va a usar al solicitar tokens para la autenticación de Azure Active Directory. Solo tiene un efecto cuando la credencial es de tipo TokenCredential. El valor podría ser https://storage.azure.com/ (valor predeterminado) o https://.queue.core.windows.net.
Ejemplos
Creación de QueueServiceClient con una dirección URL de cuenta y una credencial.
from azure.storage.queue import QueueServiceClient
queue_service = QueueServiceClient(account_url=self.account_url, credential=self.access_key)
Creación de QueueServiceClient con credenciales de identidad de 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)
Métodos
close |
Este método es cerrar los sockets abiertos por el cliente. No es necesario usarse cuando se usa con un administrador de contexto. |
create_queue |
Crea una cola en la cuenta especificada. Si ya existe una cola con el mismo nombre, se produce un error en la operación. Devuelve un cliente con el que interactuar con la cola recién creada. |
delete_queue |
Elimina la cola especificada y los mensajes que contiene. Cuando se elimina correctamente una cola, se marca inmediatamente para su eliminación y ya no es accesible para los clientes. La cola se quita más tarde del servicio Cola, durante la recolección de elementos no utilizados. Tenga en cuenta que es probable que la eliminación de una cola tarde al menos 40 segundos en completarse. Si se intenta realizar una operación en la cola mientras se estaba eliminando, se producirá una <xref:azure.storage.queue.HttpResponseError> excepción . |
from_connection_string |
Cree QueueServiceClient a partir de una cadena de conexión. |
get_queue_client |
Obtener un cliente para interactuar con la cola especificada. La cola aún no debe existir. |
get_service_properties |
Obtiene las propiedades de Queue Service de una cuenta de almacenamiento, incluido Azure Storage Analytics. |
get_service_stats |
Recupera las estadísticas relacionadas con la replicación para el servicio Cola. Solo está disponible cuando la replicación con redundancia geográfica con acceso de lectura está habilitada para la cuenta de almacenamiento. Con la replicación con redundancia geográfica, Azure Storage mantiene los datos duraderos en dos ubicaciones. En las dos ubicaciones, Azure Storage mantiene constantemente réplicas en estado correcto de los datos. La ubicación en la que lee, crea, actualiza o elimina los datos es la ubicación de la cuenta de almacenamiento principal. La ubicación principal existe en la región que elija en el momento en que cree una cuenta a través del Portal de Administración de Azure clásico de Azure, por ejemplo, Centro-norte de EE. UU. La ubicación en la que se replican los datos es la ubicación secundaria. La ubicación secundaria se determina automáticamente según la ubicación de la principal; está en un segundo centro de datos que se encuentra en la misma región que la ubicación principal. El acceso de solo lectura está disponible en la ubicación secundaria, si la replicación con redundancia geográfica con acceso de lectura está habilitada para la cuenta de almacenamiento. |
list_queues |
Devuelve un generador para enumerar las colas de la cuenta especificada. El generador seguirá de forma diferida los tokens de continuación devueltos por el servicio y se detendrá cuando se devuelvan todas las colas. |
set_service_properties |
Establece las propiedades de Queue Service de una cuenta de almacenamiento, incluido Azure Storage Analytics. Si un elemento (por ejemplo, analytics_logging) se deja como None, se conserva la configuración existente en el servicio para esa funcionalidad. |
close
Este método es cerrar los sockets abiertos por el cliente. No es necesario usarse cuando se usa con un administrador de contexto.
close()
create_queue
Crea una cola en la cuenta especificada.
Si ya existe una cola con el mismo nombre, se produce un error en la operación. Devuelve un cliente con el que interactuar con la cola recién creada.
create_queue(name: str, metadata: Dict[str, str] | None = None, **kwargs: Any) -> QueueClient
Parámetros
Un dict con pares de name_value que se van a asociar a la cola como metadatos. Ejemplo: {'Category': 'test'}
- timeout
- int
El parámetro de tiempo de espera se expresa en segundos.
Devoluciones
QueueClient para la cola recién creada.
Tipo de valor devuelto
Ejemplos
Cree una cola en el servicio.
queue_service.create_queue("myqueue1")
delete_queue
Elimina la cola especificada y los mensajes que contiene.
Cuando se elimina correctamente una cola, se marca inmediatamente para su eliminación y ya no es accesible para los clientes. La cola se quita más tarde del servicio Cola, durante la recolección de elementos no utilizados.
Tenga en cuenta que es probable que la eliminación de una cola tarde al menos 40 segundos en completarse. Si se intenta realizar una operación en la cola mientras se estaba eliminando, se producirá una <xref:azure.storage.queue.HttpResponseError> excepción .
delete_queue(queue: QueueProperties | str, **kwargs: Any) -> None
Parámetros
- queue
- str o QueueProperties
Cola que se va a eliminar. Puede ser el nombre de la cola o una instancia de QueueProperties.
- timeout
- int
El parámetro de tiempo de espera se expresa en segundos.
Tipo de valor devuelto
Ejemplos
Elimine una cola en el servicio.
queue_service.delete_queue("myqueue1")
from_connection_string
Cree QueueServiceClient a partir de una cadena de conexión.
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parámetros
- credential
Credenciales con las que se va a autenticar. Esto es opcional si la dirección URL de la cuenta ya tiene un token de SAS o el cadena de conexión ya tiene valores de clave de acceso compartido. El valor puede ser una cadena de token de SAS, una instancia de AzureSasCredential o AzureNamedKeyCredential de azure.core.credentials, una clave de acceso compartido de cuenta o una instancia de una clase TokenCredentials de azure.identity. Las credenciales proporcionadas aquí tendrán prioridad sobre las de la cadena de conexión. Si usa una instancia de AzureNamedKeyCredential, "name" debe ser el nombre de la cuenta de almacenamiento y "key" debe ser la clave de la cuenta de almacenamiento.
- audience
- str
Audiencia que se va a usar al solicitar tokens para la autenticación de Azure Active Directory. Solo tiene un efecto cuando la credencial es de tipo TokenCredential. El valor podría ser https://storage.azure.com/ (valor predeterminado) o https://.queue.core.windows.net.
Devoluciones
Un cliente de Queue Service.
Tipo de valor devuelto
Ejemplos
Creación de QueueServiceClient con un cadena de conexión.
from azure.storage.queue import QueueServiceClient
queue_service = QueueServiceClient.from_connection_string(conn_str=self.connection_string)
get_queue_client
Obtener un cliente para interactuar con la cola especificada.
La cola aún no debe existir.
get_queue_client(queue: QueueProperties | str, **kwargs: Any) -> QueueClient
Parámetros
- queue
- str o QueueProperties
Cola. Puede ser el nombre de la cola o una instancia de QueueProperties.
Devoluciones
Un objeto QueueClient.
Tipo de valor devuelto
Ejemplos
Obtenga el cliente de cola.
# Get the queue client to interact with a specific queue
queue = queue_service.get_queue_client(queue="myqueue2")
get_service_properties
Obtiene las propiedades de Queue Service de una cuenta de almacenamiento, incluido Azure Storage Analytics.
get_service_properties(**kwargs: Any) -> Dict[str, Any]
Parámetros
- timeout
- int
El parámetro de tiempo de espera se expresa en segundos.
Devoluciones
Objeto que contiene propiedades del servicio de cola, como el registro de análisis, las métricas de hora y minuto, las reglas de cors, etc.
Tipo de valor devuelto
Ejemplos
Obtención de propiedades de Queue Service.
properties = queue_service.get_service_properties()
get_service_stats
Recupera las estadísticas relacionadas con la replicación para el servicio Cola.
Solo está disponible cuando la replicación con redundancia geográfica con acceso de lectura está habilitada para la cuenta de almacenamiento.
Con la replicación con redundancia geográfica, Azure Storage mantiene los datos duraderos en dos ubicaciones. En las dos ubicaciones, Azure Storage mantiene constantemente réplicas en estado correcto de los datos. La ubicación en la que lee, crea, actualiza o elimina los datos es la ubicación de la cuenta de almacenamiento principal. La ubicación principal existe en la región que elija en el momento en que cree una cuenta a través del Portal de Administración de Azure clásico de Azure, por ejemplo, Centro-norte de EE. UU. La ubicación en la que se replican los datos es la ubicación secundaria. La ubicación secundaria se determina automáticamente según la ubicación de la principal; está en un segundo centro de datos que se encuentra en la misma región que la ubicación principal. El acceso de solo lectura está disponible en la ubicación secundaria, si la replicación con redundancia geográfica con acceso de lectura está habilitada para la cuenta de almacenamiento.
get_service_stats(**kwargs: Any) -> Dict[str, Any]
Parámetros
- timeout
- int
El parámetro de tiempo de espera se expresa en segundos.
Devoluciones
Las estadísticas del servicio Cola.
Tipo de valor devuelto
list_queues
Devuelve un generador para enumerar las colas de la cuenta especificada.
El generador seguirá de forma diferida los tokens de continuación devueltos por el servicio y se detendrá cuando se devuelvan todas las colas.
list_queues(name_starts_with: str | None = None, include_metadata: bool | None = False, **kwargs: Any) -> ItemPaged[QueueProperties]
Parámetros
- name_starts_with
- str
Filtra los resultados para devolver solo las colas cuyos nombres comienzan por el prefijo especificado.
- include_metadata
- bool
Especifica que los metadatos de la cola se devuelven en la respuesta.
- results_per_page
- int
Número máximo de nombres de cola que se van a recuperar por llamada API. Si la solicitud no especifica que el servidor devuelva hasta 5000 elementos.
- timeout
- int
Establece el tiempo de espera del lado servidor para la operación en segundos. Para más información, consulte https://learn.microsoft.com/en-us/rest/api/storageservices/setting-timeouts-for-queue-service-operations. Este valor no se realiza ni se valida en el cliente. Para configurar los tiempos de espera de red del lado cliente, consulte aquí. Esta función puede realizar varias llamadas al servicio en cuyo caso el valor de tiempo de espera especificado se aplicará a cada llamada individual.
Devoluciones
Iterable (paginación automática) de QueueProperties.
Tipo de valor devuelto
Ejemplos
Enumera las colas en el servicio.
# 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
Establece las propiedades de Queue Service de una cuenta de almacenamiento, incluido Azure Storage Analytics.
Si un elemento (por ejemplo, analytics_logging) se deja como None, se conserva la configuración existente en el servicio para esa funcionalidad.
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
Parámetros
- analytics_logging
- QueueAnalyticsLogging
Agrupa los valores de Logging de análisis de Azure.
- hour_metrics
- Metrics
La configuración de métricas de hora proporciona un resumen de las estadísticas de solicitud agrupadas por API en agregados por hora para las colas.
- minute_metrics
- Metrics
La configuración de métricas por minuto proporciona estadísticas de solicitud para cada minuto para las colas.
Puede incluir hasta cinco elementos CorsRule en la lista. Si se especifica una lista vacía, se eliminarán todas las reglas de CORS y CORS se deshabilitará para el servicio.
- timeout
- int
El parámetro de tiempo de espera se expresa en segundos.
Ejemplos
Establecer las propiedades del servicio de colas.
# 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)
Atributos
api_version
location_mode
Modo de ubicación que el cliente está usando actualmente.
De forma predeterminada, será "principal". Las opciones incluyen "primary" y "secondary".
Tipo de valor devuelto
primary_endpoint
primary_hostname
secondary_endpoint
Dirección URL completa del punto de conexión secundario si está configurada.
Si no está disponible, se generará un valor ValueError. Para especificar explícitamente un nombre de host secundario, use el argumento opcional secondary_hostname palabra clave en la creación de instancias.
Tipo de valor devuelto
Excepciones
secondary_hostname
Nombre de host del punto de conexión secundario.
Si no está disponible, será Ninguno. Para especificar explícitamente un nombre de host secundario, use el argumento opcional secondary_hostname palabra clave en la creación de instancias.
Tipo de valor devuelto
url
Dirección URL completa del punto de conexión a esta entidad, incluido el token de SAS si se usa.
Puede ser el punto de conexión principal o el punto de conexión secundario según el actual location_mode. :returns: la dirección URL completa del punto de conexión a esta entidad, incluido el token de SAS si se usa. :rtype: str
Azure SDK for Python