Sdílet prostřednictvím


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

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í:

  1. Použití řetězce tokenu SAS
  2. Použití sdíleného přístupového klíče účtu
  3. 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

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.