Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule wyjaśniono, jak pracować z wyzwalaczem rdzeni wirtualnych usługi Azure Cosmos DB dla bazy danych MongoDB w usłudze Azure Functions. Powiązania używają strumieni zmian w interfejsie API usługi Azure Cosmos DB dla bazy danych MongoDB do nasłuchiwania wstawiania i aktualizacji.
Kanał informacyjny zmian publikuje tylko nowe i zaktualizowane elementy. Obserwowanie operacji usuwania przy użyciu strumieni zmian nie jest obecnie obsługiwane.
Ważne
Rozszerzenie Usługi Azure Cosmos DB dla bazy danych MongoDB (rdzeń wirtualny) jest obecnie dostępne w wersji zapoznawczej.
Obecnie obsługiwane są tylko aplikacje platformy .NET korzystające z modelu przetwarzania .
Przykład
W tym przykładzie przedstawiono funkcję zwracającą pojedynczy dokument wstawiony lub zaktualizowany:
[FunctionName("TriggerSample")]
public static void TriggerRun(
[CosmosDBMongoTrigger("TestDatabase", "TestCollection")] ChangeStreamDocument<BsonDocument> doc,
ILogger log)
{
log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
log.LogInformation(doc.FullDocument.ToString());
}
Aby zapoznać się z kompletnym przykładem, zobacz Sample.cs w repozytorium rozszerzeń.
Atrybuty
W tej tabeli opisano właściwości konfiguracji powiązania atrybutu CosmosDBMongoTrigger
.
Parametr | Opis |
---|---|
Identyfikator funkcji | (Opcjonalnie) Identyfikator funkcji wyzwalacza. |
Nazwa bazy danych | Nazwa bazy danych monitorowanej przez wyzwalacz pod kątem zmian. Wymagane, chyba że TriggerLevel ustawiono wartość MonitorLevel.Cluser . |
CollectionName | Nazwa kolekcji w bazie danych monitorowanej przez wyzwalacz pod kątem zmian. Wymagane gdy TriggerLevel jest ustawione na MonitorLevel.Collection . |
ConnectionStringSetting | Nazwa ustawienia aplikacji lub kolekcji ustawień, która określa sposób nawiązywania połączenia z monitorowanym kontem usługi Azure Cosmos DB. |
TriggerLevel | Wskazuje poziom, na którym są monitorowane zmiany. Prawidłowe wartości MonitorLevel to: Collection , Database i Cluster . |
Zastosowanie
Użyj parametru , TriggerLevel
aby ustawić zakres monitorowanych zmian.
Możesz użyć atrybutu CosmosDBMongo
, aby uzyskać i pracować bezpośrednio z klientem bazy danych MongoDB w kodzie funkcji:
[FunctionName("ClientBindingSample")]
public static void ClientBindingRun(
[TimerTrigger("*/5 * * * * *")] TimerInfo myTimer,
[CosmosDBMongo] IMongoClient client,
ILogger log)
{
var documents = client.GetDatabase("TestDatabase").GetCollection<BsonDocument>("TestCollection").Find(new BsonDocument()).ToList();
foreach (BsonDocument d in documents)
{
log.LogInformation(d.ToString());
}
}
Powiązane artykuły
- Usługa Azure Cosmos DB dla bazy danych MongoDB (rdzeń wirtualny)
- Powiązania usługi Azure Cosmos DB dla bazy danych MongoDB (rdzenie wirtualne) dla usługi Azure Functions
- Powiązanie danych wejściowych usługi Azure Cosmos DB dla bazy danych MongoDB (rdzenia wirtualnego) dla usługi Azure Functions
- Powiązanie wyjściowe usługi Azure Cosmos DB dla bazy danych MongoDB (rdzenia wirtualnego) dla usługi Azure Functions