Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Von Bedeutung
Die Azure DocumentDB-Erweiterung befindet sich derzeit in der Vorschau. Derzeit werden nur .NET-Apps unterstützt, die das Legacy-In-Process-Modell verwenden.
Der Azure DocumentDB-Trigger überwacht Änderungsströme auf Einfügungen und Updates in Ihren DocumentDB-Sammlungen. Dieser Artikel erklärt, wie man den Trigger in Azure Functions konfiguriert und verwendet, einschließlich Codebeispielen und Attributparametern, die Ihnen helfen, in Echtzeit auf Datenänderungen zu reagieren.
Der Feed veröffentlicht nur neue und aktualisierte Einträge. Das Achten auf Löschvorgänge mit Änderungsströmen wird derzeit nicht unterstützt.
Voraussetzungen
Ein Azure-Abonnement
- Wenn Sie nicht über ein Azure-Abonnement verfügen, erstellen Sie ein kostenloses Konto
Ein vorhandener Azure DocumentDB-Cluster
Wenn Sie keinen Cluster haben, erstellen Sie einen neuen Cluster.
Change-Stream-Funktion aktiviert
Azure Functions .NET 8.0-Projekt unter Verwendung des Legacy-In-Process Worker-Modells
Microsoft.Azure.WebJobs.Extensions.AzureCosmosDb.MongoNuGet-Paket
Examples
Dieses Beispiel zeigt eine Funktion, die durch eine Einfügungs- oder Ersatzoperation in einer Sammlung in Azure DocumentDB ausgelöst wird. Die Funktion protokolliert den Hauptteil des geänderten Dokuments.
using Microsoft.Azure.WebJobs;
using Microsoft.Extensions.Logging;
using Microsoft.Azure.WebJobs.Extensions.AzureCosmosDb.Mongo;
using MongoDB.Bson;
using MongoDB.Driver;
public static class DocumentDBTrigger
{
[FunctionName(nameof(DocumentDBTrigger))]
public static void Run(
[CosmosDBMongoTrigger(databaseName: "<database-name>",
collectionName: "<collection-name>",
ConnectionStringSetting = "AZURE_DOCUMENTDB_CONNECTION_STRING")]
ChangeStreamDocument<BsonDocument> change,
ILogger logger)
{
logger.LogInformation("C# Azure DocumentDB trigger function processed a change.");
logger.LogInformation($"{change.FullDocument}");
}
}
Attribute
Diese Tabelle beschreibt die Bindungskonfigurationseigenschaften des Attributs CosmosDBMongoTrigger .
| Parameter | Description |
|---|---|
FunctionId |
(Optional) Die ID der Auslöserfunktion. |
DatabaseName |
Der Name der Datenbank, die vom Trigger für Änderungen überwacht wird. Ein gültiger Wert ist erforderlich, es sei denn TriggerLevel , gesetzt auf MonitorLevel.Cluster. Andernfalls kann ein leerer String bereitgestellt werden. |
CollectionName |
Der Name der Sammlung in der Datenbank, die vom Trigger für Änderungen überwacht wird. Ein gültiger Wert ist erforderlich, es sei denn TriggerLevel , gesetzt auf MonitorLevel.Database oder MonitorLevel.Cluster. Andernfalls kann ein leerer String bereitgestellt werden. |
ConnectionStringSetting |
Der Name einer App-Einstellung oder Einstellungssammlung, die angibt, wie man sich mit dem Azure DocumentDB-Cluster verbindet. |
TriggerLevel |
Gibt das Niveau an, auf dem Änderungen überwacht werden. Gültige Werte von MonitorLevel sind: Collection, Database, und Cluster. |
Usage
Verwenden Sie den Parameter TriggerLevel , um den Umfang der überwachten Änderungen festzulegen.
[FunctionName(nameof(DocumentDBTrigger))]
public static void Run(
[CosmosDBMongoTrigger(databaseName: "",
collectionName: "",
ConnectionStringSetting = "<name-of-app-setting>",
TriggerLevel = MonitorLevel.Cluster)]
ChangeStreamDocument<BsonDocument> change,
ILogger logger)
{
logger.LogInformation("C# Azure DocumentDB trigger function processed a change.");
logger.LogInformation($"{change.FullDocument}");
}