Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Paket pratinjau untuk Python ini memungkinkan pengguna untuk mendapatkan peristiwa umpan perubahan blob. Peristiwa ini dapat dihasilkan dengan malas, diulang berdasarkan halaman, diambil untuk interval waktu tertentu, atau diulang dari token kelanjutan tertentu.
Kode sumber | Paket (PyPi) | Dokumentasi | referensi API Dokumentasi | produk Sampel
Memulai
Prasyarat
- Python 3.6 atau yang lebih baru diperlukan untuk menggunakan paket ini.
- Anda harus memiliki langganan Azure dan akun penyimpanan Azure untuk menggunakan paket ini.
Instal paketnya
Instal pustaka klien Azure Storage Blob ChangeFeed untuk Python dengan pip:
pip install azure-storage-blob-changefeed --pre
Buat akun penyimpanan
Jika Anda ingin membuat akun penyimpanan baru, Anda dapat menggunakan Portal Microsoft Azure, Azure PowerShell, atau Azure CLI:
# Create a new resource group to hold the storage account -
# if using an existing resource group, skip this step
az group create --name my-resource-group --location westus2
# Create the storage account
az storage account create -n my-storage-account-name -g my-resource-group
Untuk mengaktifkan umpan perubahan, Anda dapat menggunakan: Portal Microsoft Azure, Azure PowerShell atau Templat.
Mengautentikasi klien
Interaksi dengan klien Blob ChangeFeed dimulai dengan instans kelas ChangeFeedClient. Anda memerlukan akun penyimpanan yang sudah ada, URL-nya, dan kredensial untuk membuat instans objek klien.
Mendapatkan kredensial
Untuk mengautentikasi klien, Anda memiliki beberapa opsi:
- Menggunakan string token SAS
- Menggunakan kunci akses bersama akun
- Menggunakan kredensial token dari azure.identity
Atau, Anda dapat mengautentikasi dengan string koneksi penyimpanan menggunakan metode .from_connection_string Lihat contoh: Pembuatan klien dengan string koneksi.
Anda dapat menghilangkan kredensial jika URL akun Anda sudah memiliki token SAS.
Membuat klien
Setelah URL akun dan kredensial Anda siap, Anda dapat membuat ChangeFeedClient:
from azure.storage.blob.changefeed import ChangeFeedClient
service = ChangeFeedClient(account_url="https://<my-storage-account-name>.blob.core.windows.net/", credential=credential)
Konsep utama
Klien
SDK Blob ChangeFeed menyediakan satu klien:
- ChangeFeedClient: klien ini memungkinkan Anda untuk mendapatkan peristiwa umpan perubahan menurut halaman, mendapatkan semua peristiwa umpan perubahan, mendapatkan peristiwa dalam rentang waktu, mulai mencantumkan peristiwa dengan token kelanjutan.
Contoh
Bagian berikut menyediakan beberapa cuplikan kode yang mencakup beberapa Storage Blob ChangeFeed yang paling umum, termasuk:
- Pembuatan klien dengan string koneksi
- Menghitung Peristiwa Dalam Rentang Waktu
- Menghitung Semua Peristiwa
- Menghitung Peristiwa menurut Halaman
Pembuatan klien dengan string koneksi
Buat ChangeFeedClient menggunakan string koneksi ke akun Azure Storage Anda.
from azure.storage.blob.changefeed import ChangeFeedClient
service = ChangeFeedClient.from_connection_string(conn_str="my_connection_string")
Menghitung Peristiwa Dalam Rentang Waktu
Mencantumkan semua peristiwa dalam rentang waktu.
from datetime import datetime
from azure.storage.blob.changefeed import ChangeFeedClient
cf_client = ChangeFeedClient("https://{}.blob.core.windows.net".format("YOUR_ACCOUNT_NAME"),
credential="Your_ACCOUNT_KEY")
start_time = datetime(2020, 1, 6)
end_time = datetime(2020, 3, 4)
change_feed = cf_client.list_changes(start_time=start_time, end_time=end_time)
# print range of events
for event in change_feed:
print(event)
Menghitung Semua Peristiwa
Mencantumkan semua peristiwa.
from azure.storage.blob.changefeed import ChangeFeedClient
cf_client = ChangeFeedClient("https://{}.blob.core.windows.net".format("YOUR_ACCOUNT_NAME"),
credential="Your_ACCOUNT_KEY")
change_feed = cf_client.list_changes()
# print all events
for event in change_feed:
print(event)
Menghitung Peristiwa menurut Halaman
Mencantumkan peristiwa menurut halaman.
from azure.storage.blob.changefeed import ChangeFeedClient
cf_client = ChangeFeedClient("https://{}.blob.core.windows.net".format("YOUR_ACCOUNT_NAME"),
credential="Your_ACCOUNT_KEY")
change_feed = cf_client.list_changes().by_page()
# print first page of events
change_feed_page1 = next(change_feed)
for event in change_feed_page1:
print(event)
Pemecahan Masalah
Pencatatan
Pustaka ini menggunakan pustaka pengelogan standar untuk pengelogan. Informasi dasar tentang sesi HTTP (URL, header, dll.) dicatat di tingkat INFO.
Pengelogan tingkat DEBUG terperinci, termasuk isi permintaan/respons dan header yang tidak diredaktifkan, dapat diaktifkan pada klien dengan logging_enable argumen :
import sys
import logging
from azure.storage.blob.changefeed import ChangeFeedClient
# Create a logger for the 'azure.storage.blob.changefeed' SDK
logger = logging.getLogger('azure.storage')
logger.setLevel(logging.DEBUG)
# Configure a console output
handler = logging.StreamHandler(stream=sys.stdout)
logger.addHandler(handler)
# This client will log detailed information about its HTTP sessions, at DEBUG level
service_client = ChangeFeedClient.from_connection_string("your_connection_string", logging_enable=True)
Langkah berikutnya
Lebih banyak kode sampel
Mulai menggunakan sampel Azure Blob ChangeFeed kami.
Beberapa sampel Storage Blob ChangeFeed Python SDK tersedia untuk Anda di repositori GitHub SDK. Sampel ini menyediakan kode contoh untuk skenario tambahan yang umum ditemui saat bekerja dengan Blob ChangeFeed:
- change_feed_samples.py - Contoh untuk mengautentikasi dan beroperasi pada klien:
- mencantumkan peristiwa menurut halaman
- mencantumkan semua peristiwa
- mencantumkan peristiwa dalam rentang waktu
- mencantumkan peristiwa mulai dari token kelanjutan
Berkontribusi
Proyek ini menyambut baik kontribusi dan saran. Sebagian besar kontribusi mengharuskan Anda menyetujui Perjanjian Lisensi Kontributor (CLA) yang menyatakan bahwa Anda memiliki hak untuk, dan benar-benar melakukannya, memberi kami hak untuk menggunakan kontribusi Anda. Untuk detailnya, kunjungi https://cla.microsoft.com.
Ketika Anda mengirimkan permintaan tarik, CLA-bot akan secara otomatis menentukan apakah Anda perlu memberikan CLA dan menghias PR dengan tepat (misalnya, label, komentar). Cukup ikuti instruksi yang diberikan oleh bot. Anda hanya perlu melakukan ini sekali di semua repos menggunakan CLA kami.
Proyek ini telah mengadopsi Kode Etik Sumber Terbuka Microsoft. Untuk informasi selengkapnya, lihat Tanya Jawab Umum Tata Tertib atau hubungi opencode@microsoft.com untuk pertanyaan atau komentar lainnya.
Azure SDK for Python