Azure Storage Blob ChangeFeed-clientbibliotheek voor Python - versie 12.0.0b4
Met dit preview-pakket voor Python kunnen gebruikers gebeurtenissen in de blob-wijzigingenfeed ophalen. Deze gebeurtenissen kunnen eenvoudig worden gegenereerd, per pagina worden getimed, voor een bepaald tijdsinterval worden opgehaald of worden getimed uit een specifiek vervolgtoken.
Broncode | Pakket (PyPi) | API-referentiedocumentatie | Productdocumentatie | Monsters
Aan de slag
Vereisten
- Python 3.6 of hoger is vereist voor het gebruik van dit pakket.
- U moet een Azure-abonnement en een Azure-opslagaccount hebben om dit pakket te kunnen gebruiken.
Het pakket installeren
Installeer de Azure Storage Blob ChangeFeed-clientbibliotheek voor Python met pip:
pip install azure-storage-blob-changefeed --pre
Create a storage account
Als u een nieuw opslagaccount wilt maken, kunt u Azure Portal, Azure PowerShell of Azure CLI gebruiken:
# 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
Als u changefeed wilt inschakelen, kunt u: Azure Portal, Azure PowerShell of Sjabloon gebruiken.
De client verifiëren
Interactie met de Blob ChangeFeed-client begint met een exemplaar van de klasse ChangeFeedClient. U hebt een bestaand opslagaccount, de URL en een referentie nodig om het clientobject te instantiëren.
Referenties ophalen
Als u de client wilt verifiëren, hebt u een aantal opties:
- Een SAS-tokentekenreeks gebruiken
- Een gedeelde toegangssleutel voor een account gebruiken
- Een tokenreferentie van azure.identity gebruiken
U kunt zich ook verifiëren met een opslag-connection string met behulp van de from_connection_string
-methode. Zie voorbeeld: Client maken met een connection string.
U kunt de referentie weglaten als uw account-URL al een SAS-token heeft.
Client maken
Zodra u de ACCOUNT-URL en referenties bij de hand hebt, kunt u de ChangeFeedClient maken:
from azure.storage.blob.changefeed import ChangeFeedClient
service = ChangeFeedClient(account_url="https://<my-storage-account-name>.blob.core.windows.net/", credential=credential)
Belangrijkste concepten
Clients
De Blob ChangeFeed SDK biedt één client:
- ChangeFeedClient: met deze client kunt u gebeurtenissen van wijzigingenfeeds per pagina ophalen, alle wijzigingenfeed-gebeurtenissen ophalen, gebeurtenissen in een tijdsbereik ophalen, gebeurtenissen met een vervolgtoken gaan vermelden.
Voorbeelden
De volgende secties bevatten verschillende codefragmenten voor enkele van de meest voorkomende Storage Blob ChangeFeed, waaronder:
- Client maken met een connection string
- Gebeurtenissen opsommen binnen een tijdsbereik
- Alle gebeurtenissen opsommen
- Gebeurtenissen opsommen per pagina
Client maken met een connection string
Maak de ChangeFeedClient met behulp van de connection string naar uw Azure Storage-account.
from azure.storage.blob.changefeed import ChangeFeedClient
service = ChangeFeedClient.from_connection_string(conn_str="my_connection_string")
Gebeurtenissen opsommen binnen een tijdsbereik
Alle gebeurtenissen binnen een tijdsbereik weergeven.
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)
Alle gebeurtenissen opsommen
Alle gebeurtenissen weergeven.
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)
Gebeurtenissen opsommen per pagina
Gebeurtenissen weergeven op pagina.
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)
Problemen oplossen
Logboekregistratie
Deze bibliotheek maakt gebruik van de standaardbibliotheek voor logboekregistratie voor logboekregistratie. Basisinformatie over HTTP-sessies (URL's, headers, enzovoort) wordt geregistreerd op INFO-niveau.
Gedetailleerde logboekregistratie op foutopsporingsniveau, inclusief aanvraag-/antwoordteksten en niet-bewerkte headers, kan worden ingeschakeld op een client met het logging_enable
argument:
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)
Volgende stappen
Meer voorbeeldcode
Ga aan de slag met onze Azure Blob ChangeFeed-voorbeelden.
Verschillende Storage Blob ChangeFeed Python SDK-voorbeelden zijn voor u beschikbaar in de GitHub-opslagplaats van de SDK. Deze voorbeelden bieden voorbeeldcode voor aanvullende scenario's die vaak voorkomen tijdens het werken met Blob ChangeFeed:
- change_feed_samples.py - Voorbeelden voor verificatie en bediening op de client:
- gebeurtenissen weergeven op pagina
- alle gebeurtenissen weergeven
- gebeurtenissen in een tijdsbereik weergeven
- gebeurtenissen weergeven die beginnen met een vervolgtoken
Bijdragen
Wij verwelkomen bijdragen en suggesties voor dit project. Voor de meeste bijdragen moet u instemmen met een licentieovereenkomst voor bijdragers (CLA: Contributor License Agreement) waarin u verklaart dat u gerechtigd bent ons het recht te geven uw bijdrage te gebruiken, en dat u dit ook doet. Ga naar https://cla.microsoft.com voor meer informatie.
Wanneer u een pull-aanvraag indient, wordt met een CLA-bot automatisch bepaald of u een CLA moet verschaffen en wordt de pull-aanvraag dienovereenkomstig opgemaakt (bijvoorbeeld met een label of commentaar). Volg gewoon de instructies van de bot. U hoeft dit maar eenmaal te doen voor alle repo's waar gebruik wordt gemaakt van onze CLA.
Op dit project is de Microsoft Open Source Code of Conduct (Microsoft Open Source-gedragscode) van toepassing. Zie de Veelgestelde vragen over de gedragscode voor meer informatie of neem contact op opencode@microsoft.com met eventuele aanvullende vragen of opmerkingen.
Azure SDK for Python