Bagikan melalui


QueueServiceClient Kelas

Klien untuk berinteraksi dengan Layanan Antrean di tingkat akun.

Klien ini menyediakan operasi untuk mengambil dan mengonfigurasi properti akun serta mencantumkan, membuat dan menghapus antrean dalam akun. Untuk operasi yang berkaitan dengan antrean tertentu, klien untuk entitas ini dapat diambil menggunakan get_queue_client fungsi .

Untuk konfigurasi opsional lainnya, silakan klik di sini.

Warisan
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)

Parameter

account_url
str
Diperlukan

URL ke titik akhir layanan antrean. Entitas lain yang disertakan dalam jalur URL (misalnya antrean) akan dibuang. URL ini dapat diautentikasi secara opsional dengan token SAS.

credential
nilai default: None

Kredensial yang digunakan untuk mengautentikasi. Ini bersifat opsional jika URL akun sudah memiliki token SAS. Nilainya dapat berupa string token SAS, instans AzureSasCredential atau AzureNamedKeyCredential dari azure.core.credentials, kunci akses bersama akun, atau instans kelas TokenCredentials dari azure.identity. Jika URI sumber daya sudah berisi token SAS, ini akan diabaikan demi kredensial eksplisit

  • kecuali dalam kasus AzureSasCredential, di mana token SAS yang bertentangan akan menaikkan ValueError. Jika menggunakan instans AzureNamedKeyCredential, "nama" harus menjadi nama akun penyimpanan, dan "kunci" harus menjadi kunci akun penyimpanan.
api_version
str

Versi Storage API yang digunakan untuk permintaan. Nilai default adalah versi layanan terbaru yang kompatibel dengan SDK saat ini. Pengaturan ke versi yang lebih lama dapat mengakibatkan kompatibilitas fitur yang berkurang.

secondary_hostname
str

Nama host titik akhir sekunder.

audience
str

Audiens yang digunakan saat meminta token untuk autentikasi Azure Active Directory. Hanya memiliki efek ketika kredensial berjenis TokenCredential. Nilainya bisa ( https://storage.azure.com/ default) atau https://.queue.core.windows.net.

Contoh

Membuat QueueServiceClient dengan url akun dan kredensial.


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

Membuat QueueServiceClient dengan kredensial Azure Identity.


   # 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)

Metode

close

Metode ini untuk menutup soket yang dibuka oleh klien. Ini tidak perlu digunakan saat menggunakan dengan manajer konteks.

create_queue

Membuat antrean baru di bawah akun yang ditentukan.

Jika antrean dengan nama yang sama sudah ada, operasi gagal. Mengembalikan klien untuk berinteraksi dengan antrean yang baru dibuat.

delete_queue

Menghapus antrean yang ditentukan dan pesan apa pun yang ada di dalamnya.

Ketika antrean berhasil dihapus, antrean segera ditandai untuk penghapusan dan tidak lagi dapat diakses oleh klien. Antrean kemudian dihapus dari layanan Antrean selama pengumpulan sampah.

Perhatikan bahwa menghapus antrean kemungkinan akan memakan waktu setidaknya 40 detik untuk diselesaikan. Jika operasi dicoba terhadap antrean saat sedang dihapus, operasi <xref:azure.storage.queue.HttpResponseError> akan dilemparkan.

from_connection_string

Buat QueueServiceClient dari String Koneksi.

get_queue_client

Mendapatkan klien untuk berinteraksi dengan antrean yang ditentukan.

Antrean belum ada.

get_service_properties

Mendapatkan properti layanan Antrean akun penyimpanan, termasuk Azure Storage Analytics.

get_service_stats

Mengambil statistik yang terkait dengan replikasi untuk layanan Antrean.

Ini hanya tersedia ketika replikasi geo-redundan akses baca diaktifkan untuk akun penyimpanan.

Dengan replikasi geo-redundan, Azure Storage mempertahankan data Anda tetap tahan lama di dua lokasi. Di kedua lokasi, Azure Storage terus mempertahankan beberapa replika data Anda yang sehat. Lokasi tempat Anda membaca, membuat, memperbarui, atau menghapus data adalah lokasi akun penyimpanan utama. Lokasi utama ada di wilayah yang Anda pilih pada saat Anda membuat akun melalui portal klasik Azure Management Azure, misalnya, US Tengah Utara. Lokasi tempat data Anda direplikasi adalah lokasi sekunder. Lokasi sekunder secara otomatis ditentukan berdasarkan lokasi primer; berada di pusat data kedua yang berada di wilayah yang sama dengan lokasi utama. Akses baca-saja tersedia dari lokasi sekunder, jika replikasi geo-redundan akses baca diaktifkan untuk akun penyimpanan Anda.

list_queues

Mengembalikan generator untuk mencantumkan antrean di bawah akun yang ditentukan.

Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan dan berhenti ketika semua antrean telah dikembalikan.

set_service_properties

Mengatur properti layanan Antrean akun penyimpanan, termasuk Azure Storage Analytics.

Jika elemen (misalnya analytics_logging) dibiarkan sebagai Tidak Ada, pengaturan yang ada pada layanan untuk fungsi tersebut dipertahankan.

close

Metode ini untuk menutup soket yang dibuka oleh klien. Ini tidak perlu digunakan saat menggunakan dengan manajer konteks.

close()

create_queue

Membuat antrean baru di bawah akun yang ditentukan.

Jika antrean dengan nama yang sama sudah ada, operasi gagal. Mengembalikan klien untuk berinteraksi dengan antrean yang baru dibuat.

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

Parameter

name
str
Diperlukan

Nama antrean yang akan dibuat.

metadata
Dict[str, str]
Diperlukan

Dict dengan pasangan name_value untuk dikaitkan dengan antrean sebagai metadata. Contoh: {'Category': 'test'}

timeout
int

Parameter batas waktu dinyatakan dalam detik.

Mengembalikan

QueueClient untuk Antrean yang baru dibuat.

Tipe hasil

Contoh

Buat antrean di layanan.


   queue_service.create_queue("myqueue1")

delete_queue

Menghapus antrean yang ditentukan dan pesan apa pun yang ada di dalamnya.

Ketika antrean berhasil dihapus, antrean segera ditandai untuk penghapusan dan tidak lagi dapat diakses oleh klien. Antrean kemudian dihapus dari layanan Antrean selama pengumpulan sampah.

Perhatikan bahwa menghapus antrean kemungkinan akan memakan waktu setidaknya 40 detik untuk diselesaikan. Jika operasi dicoba terhadap antrean saat sedang dihapus, operasi <xref:azure.storage.queue.HttpResponseError> akan dilemparkan.

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

Parameter

queue
str atau QueueProperties
Diperlukan

Antrean yang akan dihapus. Ini bisa menjadi nama antrean, atau instans QueueProperties.

timeout
int

Parameter batas waktu dinyatakan dalam detik.

Tipe hasil

Contoh

Menghapus antrean dalam layanan.


   queue_service.delete_queue("myqueue1")

from_connection_string

Buat QueueServiceClient dari String Koneksi.

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

Parameter

conn_str
str
Diperlukan

string koneksi ke akun Azure Storage.

credential
nilai default: None

Kredensial yang digunakan untuk mengautentikasi. Ini bersifat opsional jika URL akun sudah memiliki token SAS, atau string koneksi sudah memiliki nilai kunci akses bersama. Nilainya dapat berupa string token SAS, instans AzureSasCredential atau AzureNamedKeyCredential dari azure.core.credentials, kunci akses bersama akun, atau instans kelas TokenCredentials dari azure.identity. Kredensial yang disediakan di sini akan lebih diutamakan daripada yang ada di string koneksi. Jika menggunakan instans AzureNamedKeyCredential, "nama" harus menjadi nama akun penyimpanan, dan "kunci" harus menjadi kunci akun penyimpanan.

audience
str

Audiens yang digunakan saat meminta token untuk autentikasi Azure Active Directory. Hanya memiliki efek ketika kredensial berjenis TokenCredential. Nilainya bisa ( https://storage.azure.com/ default) atau https://.queue.core.windows.net.

Mengembalikan

Klien layanan Antrean.

Tipe hasil

Contoh

Membuat QueueServiceClient dengan string koneksi.


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

get_queue_client

Mendapatkan klien untuk berinteraksi dengan antrean yang ditentukan.

Antrean belum ada.

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

Parameter

queue
str atau QueueProperties
Diperlukan

Antrean. Ini bisa menjadi nama antrean, atau instans QueueProperties.

Mengembalikan

Objek QueueClient.

Tipe hasil

Contoh

Dapatkan klien antrean.


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

get_service_properties

Mendapatkan properti layanan Antrean akun penyimpanan, termasuk Azure Storage Analytics.

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

Parameter

timeout
int

Parameter batas waktu dinyatakan dalam detik.

Mengembalikan

Objek yang berisi properti layanan antrean seperti pengelogan analitik, metrik jam/menit, aturan cors, dll.

Tipe hasil

Contoh

Mendapatkan properti layanan antrean.


   properties = queue_service.get_service_properties()

get_service_stats

Mengambil statistik yang terkait dengan replikasi untuk layanan Antrean.

Ini hanya tersedia ketika replikasi geo-redundan akses baca diaktifkan untuk akun penyimpanan.

Dengan replikasi geo-redundan, Azure Storage mempertahankan data Anda tetap tahan lama di dua lokasi. Di kedua lokasi, Azure Storage terus mempertahankan beberapa replika data Anda yang sehat. Lokasi tempat Anda membaca, membuat, memperbarui, atau menghapus data adalah lokasi akun penyimpanan utama. Lokasi utama ada di wilayah yang Anda pilih pada saat Anda membuat akun melalui portal klasik Azure Management Azure, misalnya, US Tengah Utara. Lokasi tempat data Anda direplikasi adalah lokasi sekunder. Lokasi sekunder secara otomatis ditentukan berdasarkan lokasi primer; berada di pusat data kedua yang berada di wilayah yang sama dengan lokasi utama. Akses baca-saja tersedia dari lokasi sekunder, jika replikasi geo-redundan akses baca diaktifkan untuk akun penyimpanan Anda.

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

Parameter

timeout
int

Parameter batas waktu dinyatakan dalam detik.

Mengembalikan

Statistik layanan antrean.

Tipe hasil

list_queues

Mengembalikan generator untuk mencantumkan antrean di bawah akun yang ditentukan.

Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan dan berhenti ketika semua antrean telah dikembalikan.

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

Parameter

name_starts_with
str
Diperlukan

Memfilter hasil untuk mengembalikan hanya antrean yang namanya dimulai dengan awalan yang ditentukan.

include_metadata
bool
Diperlukan

Menentukan bahwa metadata antrean dikembalikan dalam respons.

results_per_page
int

Jumlah maksimum nama antrean untuk diambil per panggilan API. Jika permintaan tidak menentukan server akan mengembalikan hingga 5.000 item.

timeout
int

Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/en-us/rest/api/storageservices/setting-timeouts-for-queue-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini. Fungsi ini dapat melakukan beberapa panggilan ke layanan dalam hal ini nilai batas waktu yang ditentukan akan diterapkan ke setiap panggilan individu.

Mengembalikan

QueueProperties yang dapat diulang (halaman otomatis).

Tipe hasil

Contoh

Mencantumkan antrean dalam layanan.


   # 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

Mengatur properti layanan Antrean akun penyimpanan, termasuk Azure Storage Analytics.

Jika elemen (misalnya analytics_logging) dibiarkan sebagai Tidak Ada, pengaturan yang ada pada layanan untuk fungsi tersebut dipertahankan.

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

Parameter

analytics_logging
QueueAnalyticsLogging
Diperlukan

Mengelompokkan pengaturan Pengelogan Azure Analytics.

hour_metrics
Metrics
Diperlukan

Pengaturan metrik jam menyediakan ringkasan statistik permintaan yang dikelompokkan menurut API dalam agregat per jam untuk antrean.

minute_metrics
Metrics
Diperlukan

Pengaturan metrik menit menyediakan statistik permintaan untuk setiap menit untuk antrean.

cors
Optional[List[CorsRule]]
Diperlukan

Anda dapat menyertakan hingga lima elemen CorsRule dalam daftar. Jika daftar kosong ditentukan, semua aturan CORS akan dihapus, dan CORS akan dinonaktifkan untuk layanan.

timeout
int

Parameter batas waktu dinyatakan dalam detik.

Contoh

Mengatur properti layanan antrean.


   # 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)

Atribut

api_version

Versi STORAGE API yang digunakan untuk permintaan.

Tipe hasil

str

location_mode

Mode lokasi yang saat ini digunakan klien.

Secara default ini akan menjadi "primer". Opsi termasuk "primer" dan "sekunder".

Tipe hasil

str

primary_endpoint

URL titik akhir utama lengkap.

Tipe hasil

str

primary_hostname

Nama host titik akhir utama.

Tipe hasil

str

secondary_endpoint

URL titik akhir sekunder penuh jika dikonfigurasi.

Jika tidak tersedia, ValueError akan dinaikkan. Untuk secara eksplisit menentukan nama host sekunder, gunakan argumen kata kunci secondary_hostname opsional pada instantiation.

Tipe hasil

str

Pengecualian

secondary_hostname

Nama host titik akhir sekunder.

Jika tidak tersedia, ini akan menjadi Tidak Ada. Untuk secara eksplisit menentukan nama host sekunder, gunakan argumen kata kunci secondary_hostname opsional pada instantiation.

Tipe hasil

url

URL titik akhir lengkap untuk entitas ini, termasuk token SAS jika digunakan.

Ini bisa berupa titik akhir utama, atau titik akhir sekunder tergantung pada saat ini location_mode. :returns: URL titik akhir penuh ke entitas ini, termasuk token SAS jika digunakan. :rtype: str