2016-03-22 17 views
1

EventHub -> Stream Analytics Job -> Storage Table/Blob yapısını kullanan bu proje üzerinde çalışıyorum ve bunun için birkaç ünite testi yazmak istiyorum.Birim Test Azure EventHub, Akış Analizi İş ve Depolama Tablosu

Sorguların beklenen davranışa sahip olup olmadığını görmek için EventHub Gönderen durumunu test edebilirim, ancak tüm işlem anında gerçekleşmediğinden ve oldukça güzel olduğundan, verilerin Tablo Depolama Alanı'na gönderilip gönderilmediğini nasıl kontrol edebilirim? EventHub'a ulaştığım andan itibaren uzun gecikme ve verilerin Depolama'ya kaydedildiği an.

cevap

1

Önce yeni bir Azure Table depolama hesabı oluşturun ve ardından bu hesapta yeni bir Azure tablosu oluşturun. Akış Analizi işinizde Tablo depolama alanı için yeni bir çıktı ekleyin. Çıktı ayrıntılarını ayarladığınızda, depolama hesabını, hesap anahtarını, tablo adını ve etkinlikte hangi sütun adlarının Azure Tablosu bölümünü ve satır anahtarlarını göstereceğini belirtmeniz gerekir. Örnek olarak, böyle mayın kurmak: Çıkış ayarı

Output details screenshot

sonra Azure Tablo çıkışına Olay Hub'dan giriş işlemlerini eşleyen basit Akış Analytics sorgusu oluşturabilirsiniz. Send/Listen izinleriyle 'eventhub' adında bir Event Hub girdim var. Benim sorgu şöyle görünür: Bu noktada

SELECT 
    * 
INTO 
    tableoutput 
FROM 
    eventhub 

Akış Analytics işi çalıştırmak için Azure portal 'Başlat' düğmesine basın. Olayları oluşturmak için, talimatları here izleyin ama bu olay mesajı değiştirebilirsiniz:

string guid = Guid.NewGuid().ToString(); 
var message = "pk,rk,value\n" + guid + ",1,hello"; 
Console.WriteLine("{0} > Sending message: {1}", DateTime.Now, message); 
eventHubClient.Send(new EventData(Encoding.UTF8.GetBytes(message))); 

Azure Tablo sonuçlarını göz küresi TableXplorer gibi bir araç indirmek ve depolama hesap ayrıntılarını girin. Azure Table'ınızı çift tıklayın ve aşağıdaki gibi bir şey görmelisiniz. Verileri zorlanana kadar 10-5 saniye boyunca TableXplorer sorgunuzda düzenli olarak F5'e basmanız gerekebileceğini unutmayın. Eğer bir veri yapısı içine Olay Hub kodu oluşturulur bölüm tuşu/satır anahtarı değerleri itmek gerekir test programlı birimi için

TableXplorer Screenshot

ve bir çalışan vardır: o kadar gösterdiğinde aşağıdaki gibi görünecektir Azure Tablosunu nokta sorguları kullanarak yoklayın. Azure Table kullanımı hakkında iyi bir genel bakış here.