Monitoraggio della soluzione orientata ai servizi con BAM

La soluzione monitora l'attività in tutte le versioni dell'orchestrazione CustomerService usando l'API BAM (Business Activity Monitoring). In particolare, usa il nuovo oggetto OrchestrationEventStream .

Che cos'è l'oggetto OrchestrationEventStream?

Il nuovo oggetto OrchestrationEventStream consente il rilevamento e il monitoraggio dalle orchestrazioni. Le informazioni acquisite sono coerenti a livello di transazioni con lo stato dell'orchestrazione. Ad esempio, se l'istanza dell'host dell'orchestrazione si riavvia durante l'esecuzione dell'orchestrazione, l'istanza di orchestrazione viene riavviata dall'ultimo punto di persistenza dell'istanza. La classe OrchestrationEventStream garantisce che i dati acquisiti siano coerenti in modo transazionale con l'ultimo punto di persistenza dell'istanza di orchestrazione. Tutti i metodi OrchestrationEventStream sono statici in modo che l'orchestrazione non debba crearne un'istanza.

Nota

Per utilizzare l'oggetto OrchestrationEventStream , è necessario aggiungere riferimenti agli assembly Microsoft.BizTalk.Bam.XLANGs e Microsoft.BizTalk.Bam.EventObservation . Anche se l'oggetto OrchestrationEventStream si trova nello spazio dei nomi Microsoft.BizTalk.Bam.EventObservation , risiede nell'assembly Microsoft.BizTalk.Bam.XLANGs .

Sebbene l'Editor profili di rilevamento rappresenti il modo preferito per utilizzare BAM, non è in grado di acquisire i valori delle variabili di orchestrazione, né di gestire oggetti personalizzati. La soluzione utilizza l'API BAM per superare queste limitazioni.

Per informazioni generali su BAM, vedere Using Business Activity Monitoring.For general information about BAM, see Using Business Activity Monitoring. Per informazioni sull'Editor profili di rilevamento, vedere Editor profilo di rilevamento.

Wrapping dell'oggetto OrchestrationEventStream

La soluzione orientata ai servizi esegue il wrapping della classe OrchestrationEventStream con la classe ServiceLevelTracking . La classe ServiceLevelTracking fornisce metodi cardine specifici dell'applicazione e nasconde alcuni dettagli dell'uso di OrchestrationEventStream.

Come in OrchestrationEventStream, tutti i metodi di ServiceLevelTracking sono statici. In questo modo, l'orchestrazione o il componente personalizzato non deve necessariamente crearne un'istanza. Il metodo che inizia a tenere traccia di un'attività, TrackingBeginRequest, restituisce un ID istanza di attività univoco. Tutti gli eventi di rilevamento successivi devono essere associati a questo ID istanza dell'attività per acquisire correttamente i dati a livello di servizio, perché sono univoci per l'istanza dell'orchestrazione CustomerService .

Vedere anche

Sviluppo di una soluzione orientata ai servizi
Implementazione della soluzione orientata ai servizi