Aracılığıyla paylaş


Öğretici: Azure Veri Gezgini’nde izleme verilerini alma ve sorgulama

Bu öğreticide tanılama ve etkinlik günlüklerinden azure Veri Gezgini kümesine kod yazmadan veri alma işlemi öğretilecektir. Bu basit alma yöntemiyle, veri analizi için Azure Veri Gezgini sorgulamaya hızlı bir şekilde başlayabilirsiniz.

Bu öğreticide aşağıdakilerin nasıl yapılacağını öğreneceksiniz:

Not

Tüm kaynakları aynı Azure konumunda veya bölgesinde oluşturun.

Önkoşullar

Azure İzleyici veri sağlayıcısı: tanılama ölçümleri, günlükler ve etkinlik günlükleri

Aşağıdaki Azure İzleyici tanılama ölçümleri ve günlükleri ile etkinlik günlükleri tarafından sağlanan verileri görüntüleyin ve anlayın. Bu veri şemalarını temel alan bir alım işlem hattı oluşturacaksınız. Günlükteki her olayın bir kayıt dizisi olduğunu unutmayın. Bu kayıt dizisi öğreticinin ilerleyen bölümlerinde bölünecektir.

Tanılama ölçümleri, günlükleri ve etkinlik günlükleri örnekleri

Azure tanılama ölçümleri, günlükleri ve etkinlik günlükleri bir Azure hizmeti tarafından yayılır ve bu hizmetin çalışması hakkında veri sağlar.

Tanılama ölçümleri örneği

Tanılama ölçümleri 1 dakikalık bir zaman dilimiyle toplanır. Aşağıda, sorgu süresiyle ilgili Azure Veri Gezgini ölçüm-olay şeması örneği verilmiştir:

{
    "records": [
    {
        "count": 14,
        "total": 0,
        "minimum": 0,
        "maximum": 0,
        "average": 0,
        "resourceId": "/SUBSCRIPTIONS/<subscriptionID>/RESOURCEGROUPS/<resource-group>/PROVIDERS/MICROSOFT.KUSTO/CLUSTERS/<cluster-name>",
        "time": "2018-12-20T17:00:00.0000000Z",
        "metricName": "QueryDuration",
        "timeGrain": "PT1M"
    },
    {
        "count": 12,
        "total": 0,
        "minimum": 0,
        "maximum": 0,
        "average": 0,
        "resourceId": "/SUBSCRIPTIONS/<subscriptionID>/RESOURCEGROUPS/<resource-group>/PROVIDERS/MICROSOFT.KUSTO/CLUSTERS/<cluster-name>",
        "time": "2018-12-21T17:00:00.0000000Z",
        "metricName": "QueryDuration",
        "timeGrain": "PT1M"
    }
    ]
}

Azure Veri Gezgini'da alım işlem hattı ayarlama

Azure Veri Gezgini işlem hattını ayarlamak için tablo oluşturma ve veri alımı gibi çeşitli adımlar gerekir. Ayrıca verileri işleyebilir, eşleyebilir ve güncelleştirebilirsiniz.

Azure Veri Gezgini web kullanıcı arabirimine bağlanma

Azure Veri Gezgini TestDatabase veritabanınızda Sorgu'yu seçerek Azure Veri Gezgini web kullanıcı arabirimini açın.

Sorgu sayfası.

Hedef tabloları oluşturma

Azure İzleyici günlüklerinin yapısı tablosal değildir. Verileri işleyip her olayı bir veya daha fazla kayda genişleteceksiniz. Ham veriler etkinlik günlükleri için ActivityLogsRawRecords ve tanılama ölçümleri ve günlükleri için DiagnosticRawRecords adlı bir ara tabloya alınacaktır. Bu sırada veriler işlenecek ve genişletilecektir. Bir güncelleştirme ilkesi kullanılarak, genişletilmiş veriler etkinlik günlükleri için ActivityLogs tablosuna, tanılama ölçümleri için DiagnosticMetrics'e ve tanılama günlükleri için DiagnosticLogs'a aktarılır. Bu, etkinlik günlüklerini almak için iki ayrı tablo ve tanılama ölçümlerini ve günlüklerini almak için üç ayrı tablo oluşturmanız gerektiği anlamına gelir.

Azure Veri Gezgini veritabanında hedef tabloları oluşturmak için Azure Veri Gezgini web kullanıcı arabirimini kullanın.

Tanılama ölçümleri için tablolar oluşturma

  1. TestDatabase veritabanında tanılama ölçümleri kayıtlarını depolamak için DiagnosticMetrics adlı bir tablo oluşturun. Aşağıdaki .create table yönetim komutunu kullanın:

    .create table DiagnosticMetrics (Timestamp:datetime, ResourceId:string, MetricName:string, Count:int, Total:double, Minimum:double, Maximum:double, Average:double, TimeGrain:string)
    
  2. Tabloyu oluşturmak için Çalıştır'ı seçin.

    Sorguyu çalıştırın.

  3. Aşağıdaki sorguyu kullanarak veri işleme için TestDatabase veritabanında DiagnosticRawRecords adlı ara veri tablosunu oluşturun. Tabloyu oluşturmak için Çalıştır'ı seçin.

    .create table DiagnosticRawRecords (Records:dynamic)
    
  4. Ara tablo için sıfır bekletme ilkesi ayarlayın:

    .alter-merge table DiagnosticRawRecords policy retention softdelete = 0d
    

Tablo eşlemeleri oluşturma

Veri biçimi olduğundan json, veri eşlemesi gereklidir. Eşleme, json her json yolunu bir tablo sütun adıyla eşler. Özel karakterler içeren JSON yollarından ['Özellik Adı'] olarak kaçış karakteri kullanılmalıdır. Daha fazla bilgi için bkz. JSONPath söz dizimi.

Tanılama ölçümlerini ve günlüklerini tabloyla eşleme

Tanılama ölçümünü ve günlük verilerini tabloyla eşlemek için aşağıdaki sorguyu kullanın:

.create table DiagnosticRawRecords ingestion json mapping 'DiagnosticRawRecordsMapping' '[{"column":"Records","Properties":{"path":"$.records"}}]'

Ölçüm ve günlük verileri için güncelleştirme ilkesi oluşturma

Tanılama ölçümleri için veri güncelleştirme ilkesi oluşturma

  1. Tanılama ölçüm kayıtları koleksiyonunu genişleterek koleksiyondaki her değerin ayrı bir satır almasını sağlayan bir işlev oluşturun. işlecini mv-expand kullanın:

    .create function DiagnosticMetricsExpand() {
       DiagnosticRawRecords
       | mv-expand events = Records
       | where isnotempty(events.metricName)
       | project
           Timestamp = todatetime(events['time']),
           ResourceId = tostring(events.resourceId),
           MetricName = tostring(events.metricName),
           Count = toint(events['count']),
           Total = todouble(events.total),
           Minimum = todouble(events.minimum),
           Maximum = todouble(events.maximum),
           Average = todouble(events.average),
           TimeGrain = tostring(events.timeGrain)
    }
    
  2. Güncelleştirme ilkesini hedef tabloya ekleyin. Bu ilke sorguyu DiagnosticRawRecords ara veri tablosundaki yeni alınan veriler üzerinde otomatik olarak çalıştırır ve sonuçlarını DiagnosticMetrics tablosuna alır:

    .alter table DiagnosticMetrics policy update @'[{"Source": "DiagnosticRawRecords", "Query": "DiagnosticMetricsExpand()", "IsEnabled": "True", "IsTransactional": true}]'
    

Azure Event Hubs ad alanı oluşturma

Azure tanılama ayarları, ölçümlerin ve günlüklerin bir depolama hesabına veya olay hub'ına dışarı aktarılmasını sağlar. Bu öğreticide, ölçümleri ve günlükleri bir olay hub'ı aracılığıyla yönlendireceğiz. Aşağıdaki adımlarda tanılama ölçümleri ve günlükleri için bir olay hub'ı ad alanı ve olay hub'ı oluşturacaksınız. Azure İzleyici, etkinlik günlükleri için olay hub'ı içgörüleri-operasyonel-günlüklerini oluşturur.

  1. Azure portal bir Azure Resource Manager şablonu kullanarak olay hub'ı oluşturun. Bu makaledeki diğer adımları izlemek için Azure'a Dağıt düğmesine sağ tıklayıpYeni pencerede aç'ı seçin. Azure'a Dağıt düğmesi sizi Azure portal götürür.

    Azure'a dağıt düğmesi.

  2. Tanılama günlükleri için bir olay hub'ı ad alanı ve olay hub'ı oluşturun. Event Hubs ad alanı oluşturmayı öğrenin.

  3. Formu aşağıdaki bilgilerle doldurun. Aşağıdaki tabloda listelenmeyen tüm ayarlar için varsayılan değerleri kullanın.

    Ayar Önerilen değer Açıklama
    Abonelik Aboneliğiniz Olay hub'ınız için kullanmak istediğiniz Azure aboneliğini seçin.
    Kaynak grubu test-resource-group Yeni bir kaynak grubu oluşturma.
    Konum gereksinimlerinize en uygun bölgeyi seçin. Olay hub'ı ad alanını diğer kaynaklarda olduğu gibi aynı konumda oluşturun.
    Ad alanı adı AzureMonitoringData Ad alanınızı tanımlayan benzersiz bir ad seçin.
    Olay hub'ı adı DiagnosticData Olay hub'ı benzersiz bir kapsayıcı kapsamı sunan ad alanında bulunur.
    Tüketici grubu adı adxpipeline Bir tüketici grubu adı oluşturun. Tüketici grupları birden fazla tüketici uygulamasının ayrı olay akışı görünümüne sahip olmasını sağlar.

Azure İzleyici ölçümlerini ve günlüklerini olay hub'ınıza bağlama

Şimdi tanılama ölçümlerinizi, günlüklerinizi ve etkinlik günlüklerinizi olay hub'ına bağlamanız gerekir.

Tanılama ölçümlerini ve günlüklerini olay hub'ınıza bağlama

Ölçümlerin dışarı aktarıldığı kaynağı seçin. Olay hub'ları ad alanı, Azure Key Vault, Azure IoT Hub ve Azure Veri Gezgini kümeleri gibi çeşitli kaynak türleri tanılama verilerini dışarı aktarmayı destekler. Bu öğreticide kaynağımız olarak bir Azure Veri Gezgini kümesi kullanacağız. Sorgu performansı ölçümlerini ve veri alımı sonuçları günlüklerini gözden geçireceğiz.

  1. Azure portal Kusto kümenizi seçin.

  2. Tanılama ayarları'nı ve ardından Tanılamayı aç bağlantısını seçin.

    Tanılama ayarları.

  3. Tanılama ayarları bölmesi açılır. Aşağıdaki adımları izleyin:

    1. Tanılama günlük verilerinize ADXExportedData adını verin.

    2. LOG altında Hem SucceededIngestion hem de FailedIngestion onay kutularını seçin.

    3. ÖLÇÜM altında Sorgu performansı onay kutusunu seçin.

    4. Olay hub'ına akışla aktar onay kutusunu seçin.

    5. Yapılandır'ı seçin.

      Tanılama ayarları bölmesi.

  4. Olay hub'ı seçin bölmesinde tanılama günlüklerinden oluşturduğunuz olay hub'ına verileri dışarı aktarmayı yapılandırın:

    1. Olay hub'ı ad alanı seçin listesinde AzureİzlemeVerileri'ni seçin.
    2. Olay hub'ı adını seçin listesinde TanılamaVerileri'ni seçin.
    3. Olay hub'ı ilke adını seçin listesinde RootManagerSharedAccessKey'i seçin.
    4. Tamam’ı seçin.
  5. Kaydet’i seçin.

Olay hub'larınıza akan verileri görme

  1. Bağlantı tanımlanana ve olay hub'ına etkinlik günlüğü dışarı aktarma işlemi tamamlanana kadar birkaç dakika bekleyin. Oluşturduğunuz olay hub'larını görmek için event hubs ad alanınıza gidin.

    Olay hub'ları oluşturuldu.

  2. Olay hub'ınıza akan verilere bakın:

    Olay hub'ı verileri.

Olay hub'ına Azure Veri Gezgini bağlama

Şimdi tanılama ölçümleriniz, günlükleriniz ve etkinlik günlükleriniz için veri bağlantıları oluşturmanız gerekir.

Tanılama ölçümleri, günlükler ve etkinlik günlükleri için veri bağlantısı oluşturma

  1. Kustodocs adlı Azure Veri Gezgini kümenizde soldaki menüden Veritabanları'nı seçin.

  2. Veritabanları penceresinde TestDatabase veritabanınızı seçin.

  3. Soldaki menüden Veri alımı'nı seçin.

  4. Veri alımı penceresinde + Veri Bağlantısı Ekle'yi seçin.

  5. Veri bağlantısı penceresinde aşağıdaki bilgileri girin:

    Olay hub'ı veri bağlantısı.

  1. Veri Bağlantısı penceresinde aşağıdaki ayarları kullanın:

    Veri kaynağı:

    Ayar Önerilen değer Alan açıklaması
    Veri bağlantısı adı DiagnosticsLogsConnection Azure Veri Gezgini'nde oluşturmak istediğiniz bağlantının adı.
    Olay hub'ı ad alanı AzureMonitoringData Önceden seçtiğiniz ve ad alanınızı tanımlayan ad.
    Olay hub'ı DiagnosticData Oluşturduğunuz olay hub'ı.
    Tüketici grubu adxpipeline Oluşturduğunuz olay hub'ında tanımlanan tüketici grubu.

    Hedef tablo:

    İki yönlendirme seçeneği vardır: statik ve dinamik. Bu öğreticide, tablo adını, veri biçimini ve eşlemeyi belirttiğiniz statik yönlendirmeyi (varsayılan) kullanacaksınız. Verilerimde yönlendirme bilgileri var seçeneğini işaretlemeyin.

    Ayar Önerilen değer Alan açıklaması
    Tablo DiagnosticRawRecords TestDatabase veritabanında oluşturduğunuz tablo.
    Veri biçimi JSON Tabloda kullanılan biçim.
    Sütun eşleme DiagnosticRawRecordsMapping TestDatabase veritabanında oluşturduğunuz eşleme, gelen JSON verilerini DiagnosticRawRecords tablosunun sütun adlarıyla ve veri türleriyle eşler.
  2. Oluştur’u seçin.

Yeni tabloları sorgulama

Artık veri akışı olan bir işlem hattınız var. Küme aracılığıyla veri alımı varsayılan olarak 5 dakika sürer, bu nedenle sorgulamaya başlamadan önce verilerin birkaç dakika boyunca akmasına izin verin.

Tanılama ölçümleri tablosunu sorgulama

Aşağıdaki sorgu, Azure Veri Gezgini tanılama ölçüm kayıtlarından sorgu süresi verilerini analiz eder:

DiagnosticMetrics
| where Timestamp > ago(15m) and MetricName == 'QueryDuration'
| summarize avg(Average)

Sorgu sonuçları:

avg_Average
00:06.156