Utilità per eventi aziendali di NotebookUtils per Fabric

Usa il notebookutils.businessEvents modulo per pubblicare eventi aziendali da un quaderno Fabric. Puoi pubblicare un singolo evento o un lotto di eventi che seguono uno schema di eventi aziendali in un insieme di schema di eventi.

Le utilità per gli eventi aziendali sono disponibili nei notebook Python 3.12 e PySpark (Python).

La tabella seguente elenca i metodi disponibili:

Method Signature Descrizione
help help(methodName: str = '') -> None Visualizza la Guida per il modulo o il metodo specificato.
publish publish(eventSchemaSetWorkspace: str, eventSchemaSet: str, eventTypeName: str, eventData: Union[Dict[str, Any], List[Dict[str, Any]]], dataVersion: str = 'v1') -> bool Pubblica uno o più eventi aziendali nel tipo di evento specificato.

Come ottenere assistenza

Esegui il seguente comando per avere una panoramica del modulo:

notebookutils.businessEvents.help()

Per ottenere aiuto per il publish metodo, specifica il nome del metodo:

notebookutils.businessEvents.help("publish")

Pubblica un evento aziendale

Usare publish() per inviare un payload che corrisponde allo schema di un evento aziendale:

published = notebookutils.businessEvents.publish(
    eventSchemaSetWorkspace="ContosoWorkspace",
    eventSchemaSet="OrderEvents",
    eventTypeName="OrderDelayed",
    eventData={
        "orderId": "12345",
        "status": "delayed",
        "reason": "weather"
    },
    dataVersion="v1"
)

print(f"Published: {published}")

La tabella seguente descrive i parametri:

Parameter Type Descrizione
eventSchemaSetWorkspace Stringa Il nome o ID dello spazio di lavoro che contiene il set di schema degli eventi.
eventSchemaSet Stringa Il nome o ID del set di schema degli eventi.
eventTypeName Stringa Il nome del tipo di evento aziendale da pubblicare.
eventData Dizionario o elenco di dizionari Il carico utile degli eventi. Ogni dizionario deve conformarsi allo schema degli eventi aziendali selezionato.
dataVersion Stringa La versione dello schema degli eventi aziendali. Il valore predefinito è v1.

Il metodo ritorna True quando l'evento viene pubblicato con successo. Se l'evento non può essere pubblicato, il metodo solleva un'eccezione.

Pubblica più eventi aziendali

Per pubblicare più eventi dello stesso tipo in un'unica chiamata, passa una lista di dizionari a eventData:

published = notebookutils.businessEvents.publish(
    eventSchemaSetWorkspace="ContosoWorkspace",
    eventSchemaSet="OrderEvents",
    eventTypeName="OrderDelayed",
    eventData=[
        {
            "orderId": "12345",
            "status": "delayed",
            "reason": "weather"
        },
        {
            "orderId": "12346",
            "status": "delayed",
            "reason": "traffic"
        }
    ],
    dataVersion="v1"
)

print(f"Published: {published}")

Tutti i payload nella lista devono conformarsi alla versione dello schema specificata da dataVersion.

Considerazioni

  • Crea il tipo di evento aziendale e il suo schema prima di pubblicare gli eventi da un notebook.
  • Usa nomi o ID per eventSchemaSetWorkspace e eventSchemaSet.
  • Abbina i nomi delle proprietà, i tipi di dati e i campi obbligatori in eventData alla versione dello schema selezionata.
  • Gestire le eccezioni provenienti da publish() in modo che le esecuzioni di notebook e pipeline segnalino gli errori di pubblicazione.