Klientská knihovna ChangeFeed objektů blob služby Azure Storage pro Python – verze 12.0.0b4
Tento balíček Preview pro Python umožňuje uživatelům získávat události kanálu změn objektů blob. Tyto události lze líně generovat, iteovat podle stránky, načíst po konkrétní časový interval nebo iterated z konkrétního pokračovacího tokenu.
Zdrojový kód | Balíček (PyPi) | Referenční dokumentace k | rozhraní API Dokumentace k | produktu Vzorky
Začínáme
Požadavky
- K použití tohoto balíčku se vyžaduje Python 3.6 nebo novější.
- Abyste mohli tento balíček používat, musíte mít předplatné Azure a účet úložiště Azure .
Instalace balíčku
Nainstalujte klientskou knihovnu ChangeFeed objektů blob služby Azure Storage pro Python pomocí pipu:
pip install azure-storage-blob-changefeed --pre
Vytvoření účtu úložiště
Pokud chcete vytvořit nový účet úložiště, můžete použít Azure Portal, Azure PowerShell nebo 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
K povolení kanálu změn můžete použít azure portal, Azure PowerShell nebo šablonu.
Ověření klienta
Interakce s klientem Blob ChangeFeed začíná instancí třídy ChangeFeedClient. K vytvoření instance objektu klienta potřebujete existující účet úložiště, jeho adresu URL a přihlašovací údaje.
Získání přihlašovacích údajů
K ověření klienta máte několik možností:
- Použití řetězce tokenu SAS
- Použití sdíleného přístupového klíče účtu
- Použití přihlašovacích údajů tokenu z azure.identity
Alternativně můžete provést ověření pomocí připojovacího from_connection_string
řetězce úložiště pomocí metody . Viz příklad: Vytvoření klienta s připojovacím řetězcem.
Pokud adresa URL vašeho účtu už token SAS má, můžete je vynechat.
Vytvoření klienta
Jakmile budete mít připravenou adresu URL účtu a přihlašovací údaje, můžete vytvořit ChangeFeedClient:
from azure.storage.blob.changefeed import ChangeFeedClient
service = ChangeFeedClient(account_url="https://<my-storage-account-name>.blob.core.windows.net/", credential=credential)
Klíčové koncepty
Klienti
Sada Blob ChangeFeed SDK poskytuje jednoho klienta:
- ChangeFeedClient: Tento klient umožňuje získat události kanálu změn podle stránky, získat všechny události kanálu změn, získat události v časovém rozsahu a začít výpis událostí s tokenem pokračování.
Příklady
Následující části obsahují několik fragmentů kódu, které pokrývají některé z nejběžnějších funkcí ChangeFeed objektů blob služby Storage, mezi které patří:
- Vytvoření klienta s připojovacím řetězcem
- Výčet událostí v rámci časového rozsahu
- Výčet všech událostí
- Výčet událostí podle stránky
Vytvoření klienta s připojovacím řetězcem
Vytvořte ChangeFeedClient pomocí připojovacího řetězce k účtu služby Azure Storage.
from azure.storage.blob.changefeed import ChangeFeedClient
service = ChangeFeedClient.from_connection_string(conn_str="my_connection_string")
Výčet událostí v rámci časového rozsahu
Vypíše všechny události v časovém rozsahu.
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)
Výčet všech událostí
Zobrazit seznam všech událostí
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)
Výčet událostí podle stránky
Výpis událostí podle stránky
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)
Poradce při potížích
protokolování
Tato knihovna používá pro protokolování standardní knihovnu protokolování . Základní informace o relacích HTTP (adresy URL, hlavičky atd.) se protokolují na úrovni INFO.
Podrobné protokolování úrovně LADĚNÍ, včetně těl požadavků/odpovědí a nereagovaných hlaviček, je možné povolit na klientovi s 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)
Další kroky
Další ukázkový kód
Začněte s našimi ukázkami služby Azure Blob ChangeFeed.
Několik ukázek sady Python SDK ChangeFeed v objektech blob služby Storage je k dispozici v úložišti sady SDK Na GitHubu. Tyto ukázky poskytují příklad kódu pro další scénáře, se kterými se běžně setkáváme při práci se službou Blob ChangeFeed:
- change_feed_samples.py – příklady ověřování a provozu na klientovi:
- list events by page
- vypsat všechny události
- výpis událostí v časovém rozsahu
- seznam událostí počínaje tokenem pro pokračování
Přispívání
Tento projekt vítá příspěvky a návrhy. Většina příspěvků vyžaduje souhlas s licenční smlouvou s přispěvatelem (CLA), která stanoví, že máte právo udělit nám práva k používání vašeho příspěvku a skutečně tak činíte. Podrobnosti najdete tady: https://cla.microsoft.com
Při odesílání žádosti o přijetí změn robot CLA automaticky určí, jestli je potřeba poskytnout smlouvu CLA, a příslušným způsobem žádost o přijetí změn upraví (např. přidáním jmenovky nebo komentáře). Stačí postupovat podle pokynů robota. Pro všechna úložiště používající naši smlouvu CLA to stačí udělat jenom jednou.
Tento projekt přijal pravidla chování pro Microsoft Open Source. Další informace najdete v nejčastějších dotazech k pravidlům chování nebo se obraťte na opencode@microsoft.com případné další dotazy nebo komentáře.
Azure SDK for Python