Biblioteka klienta ChangeFeed usługi Azure Storage Blob dla języka Python — wersja 12.0.0b4
Ten pakiet w wersji zapoznawczej dla języka Python umożliwia użytkownikom pobieranie zdarzeń zestawienia zmian obiektów blob. Te zdarzenia można generować z opóźnieniem, iterować według strony, pobierać dla określonego interwału czasu lub iterować z określonego tokenu kontynuacji.
Kod | źródłowy Pakiet (PyPi) | Dokumentacja referencyjna interfejsu | API Dokumentacja | produktu Próbki
Wprowadzenie
Wymagania wstępne
- Do korzystania z tego pakietu jest wymagany język Python 3.6 lub nowszy.
- Aby korzystać z tego pakietu, musisz mieć subskrypcję platformy Azure i konto usługi Azure Storage .
Instalowanie pakietu
Zainstaluj bibliotekę klienta Azure Storage Blob ChangeFeed dla języka Python za pomocą narzędzia pip:
pip install azure-storage-blob-changefeed --pre
Tworzenie konta magazynu
Jeśli chcesz utworzyć nowe konto magazynu, możesz użyć witryny Azure Portal, Azure PowerShell lub interfejsu wiersza polecenia platformy Azure:
# 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
Aby włączyć kanał zmian, możesz użyć witryny Azure Portal, Azure PowerShell lub szablonu.
Uwierzytelnianie klienta
Interakcja z klientem ChangeFeed obiektu blob rozpoczyna się od wystąpienia klasy ChangeFeedClient. Do utworzenia wystąpienia obiektu klienta potrzebne jest istniejące konto magazynu, jego adres URL i poświadczenia.
Pobieranie poświadczeń
Aby uwierzytelnić klienta, masz kilka opcji:
- Używanie ciągu tokenu sygnatury dostępu współdzielonego
- Używanie klucza dostępu współdzielonego konta
- Używanie poświadczeń tokenu z pliku azure.identity
Alternatywnie można uwierzytelnić się za pomocą parametrów połączenia magazynu przy użyciu from_connection_string
metody . Zobacz przykład: Tworzenie klienta przy użyciu parametrów połączenia.
Możesz pominąć poświadczenie, jeśli adres URL konta ma już token SAS.
Tworzenie klienta
Po uzyskaniu gotowego adresu URL konta i poświadczeń możesz utworzyć element ChangeFeedClient:
from azure.storage.blob.changefeed import ChangeFeedClient
service = ChangeFeedClient(account_url="https://<my-storage-account-name>.blob.core.windows.net/", credential=credential)
Kluczowe pojęcia
Klienci
Zestaw SDK ChangeFeed obiektu blob udostępnia jednego klienta:
- ChangeFeedClient: ten klient umożliwia pobieranie zdarzeń zestawienia zmian według strony, pobieranie wszystkich zdarzeń zestawienia zmian, pobieranie zdarzeń w zakresie czasu, rozpoczynanie wyświetlania listy zdarzeń za pomocą tokenu kontynuacji.
Przykłady
W poniższych sekcjach przedstawiono kilka fragmentów kodu obejmujących niektóre z najbardziej typowych zmian obiektu blob usługi Storage, w tym:
- Tworzenie klienta przy użyciu parametrów połączenia
- Wyliczanie zdarzeń w zakresie czasu
- Wyliczanie wszystkich zdarzeń
- Wyliczanie zdarzeń według strony
Tworzenie klienta przy użyciu parametrów połączenia
Utwórz obiekt ChangeFeedClient przy użyciu parametrów połączenia z kontem usługi Azure Storage.
from azure.storage.blob.changefeed import ChangeFeedClient
service = ChangeFeedClient.from_connection_string(conn_str="my_connection_string")
Wyliczanie zdarzeń w zakresie czasu
Wyświetl listę wszystkich zdarzeń w zakresie czasu.
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)
Wyliczanie wszystkich zdarzeń
Wyświetl listę wszystkich zdarzeń.
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)
Wyliczanie zdarzeń według strony
Wyświetlanie listy zdarzeń według strony.
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)
Rozwiązywanie problemów
Rejestrowanie
Ta biblioteka używa standardowej biblioteki rejestrowania do rejestrowania. Podstawowe informacje o sesjach HTTP (adresach URL, nagłówkach itp.) są rejestrowane na poziomie INFORMACJI.
Szczegółowe rejestrowanie na poziomie DEBUG, w tym treści żądań/odpowiedzi i nieredagowanych nagłówków, można włączyć na kliencie z argumentem logging_enable
:
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)
Następne kroki
Więcej przykładów kodu
Rozpocznij pracę z przykładami usługi Azure Blob ChangeFeed.
Kilka przykładów zestawu SDK usługi Storage Blob ChangeFeed dla języka Python jest dostępnych w repozytorium GitHub zestawu SDK. Te przykłady zawierają przykładowy kod dla dodatkowych scenariuszy, które często występują podczas pracy z funkcją ChangeFeed obiektu blob:
- change_feed_samples.py — przykłady uwierzytelniania i działania na kliencie:
- wyświetlanie listy zdarzeń według strony
- wyświetlanie listy wszystkich zdarzeń
- wyświetlanie listy zdarzeń w zakresie czasu
- wyświetlanie listy zdarzeń rozpoczynających się od tokenu kontynuacji
Współtworzenie
W tym projekcie zachęcamy do współtworzenia i zgłaszania sugestii. Współtworzenie w większości przypadków wymaga zgody na umowę licencyjną dotyczącą współautorów (CLA, Contributor License Agreement), zgodnie z którą współautor ma prawo udzielić i faktycznie udziela nam praw do używania wytworzonej przez siebie zawartości. Aby uzyskać szczegółowe informacje, odwiedź stronę https://cla.microsoft.com.
Po przesłaniu żądania ściągnięcia robot CLA automatycznie określi, czy musisz przekazać umowę CLA, i doda odpowiednie informacje do tego żądania (na przykład etykietę czy komentarz). Po prostu postępuj zgodnie z instrukcjami robota. Wystarczy zrobić to raz dla wszystkich repozytoriów, w przypadku których jest używana nasza umowa CLA.
W tym projekcie przyjęto Kodeks postępowania oprogramowania Open Source firmy Microsoft. Aby uzyskać więcej informacji, zobacz Często zadawane pytania dotyczące kodeksu postępowania lub skontaktuj się z opencode@microsoft.com dodatkowymi pytaniami lub komentarzami.
Azure SDK for Python