Logstash'ten Azure Veri Gezgini'a veri alma

Önemli

Bu bağlayıcı, Microsoft Fabric'teki Gerçek Zamanlı Zeka'da kullanılabilir. Aşağıdaki özel durumlar için bu makaledeki yönergeleri kullanın:

Logstash, birçok kaynaktan aynı anda veri alan, verileri dönüştüren ve ardından sık kullandığınız "zula"ya gönderen açık kaynak, sunucu tarafı bir veri işleme işlem hattıdır. Bu makalede, bu verileri günlük ve telemetri verileri için hızlı ve yüksek oranda ölçeklenebilir bir veri araştırma hizmeti olan Azure Veri Gezgini'a göndereceksiniz. Başlangıçta test kümesinde bir tablo ve veri eşlemesi oluşturacak ve ardından Logstash'i tabloya veri göndermesi ve sonuçları doğrulaması için yönlendireceksiniz.

Not

Bu bağlayıcı şu anda yalnızca json veri biçimini destekler.

Önkoşullar

  • Microsoft hesabı veya Microsoft Entra kullanıcı kimliği. Azure aboneliği gerekmez.
  • Azure Veri Gezgini kümesi ve veritabanı. Küme ve veritabanı oluşturma.
  • Logstash sürüm 6+ Yükleme yönergeleri.

Tablo oluştur

Kümeniz ve veritabanınız olduktan sonra tablo oluşturmanın zamanı geldi.

  1. Tablo oluşturmak için veritabanı sorgu pencerenizde aşağıdaki komutu çalıştırın:

    .create table logs (timestamp: datetime, message: string)
    
  2. Yeni tablonun logs oluşturulduğunu ve boş olduğunu onaylamak için aşağıdaki komutu çalıştırın:

    logs
    | count
    

Eşleme oluşturma

Eşleme, Azure Veri Gezgini tarafından gelen verileri hedef tablo şemasına dönüştürmek için kullanılır. Aşağıdaki komut, tarafından path belirtildiği gibi gelen json'dan özellikleri ayıklayan ve bunlara columnçıkışını veren adlı basicmsg yeni bir eşleme oluşturur.

Sorgu penceresinde aşağıdaki komutu çalıştırın:

.create table logs ingestion json mapping 'basicmsg' '[{"column":"timestamp","path":"$.@timestamp"},{"column":"message","path":"$.message"}]'

Logstash çıkış eklentisini yükleme

Logstash çıkış eklentisi Azure Veri Gezgini ile iletişim kurar ve verileri hizmete gönderir. Daha fazla bilgi için bkz . Logstash eklentisi.

Komut kabuğunda Logstash kök dizinine gidin ve eklentiyi yüklemek için aşağıdaki komutu çalıştırın:

bin/logstash-plugin install logstash-output-kusto

Logstash'i örnek veri kümesi oluşturacak şekilde yapılandırma

Logstash, uçtan uca işlem hattını test etmek için kullanılabilecek örnek olaylar oluşturabilir. Logstash kullanıyorsanız ve kendi olay akışınıza erişiminiz varsa sonraki bölüme geçin.

Not

Kendi verilerinizi kullanıyorsanız, önceki adımlarda tanımlanan tablo ve eşleme nesnelerini değiştirin.

  1. Gerekli işlem hattı ayarlarını içerecek yeni bir metin dosyasını düzenleyin (vi kullanarak):

    vi test.conf
    
  2. Logstash'e 1000 test olayı oluşturmasını söyleyecek aşağıdaki ayarları yapıştırın:

    input {
        stdin { }
        generator {
            message => "Test Message 123"
            count => 1000
        }
    }
    

Bu yapılandırma, kendiniz daha fazla ileti yazmanızı sağlayacak giriş eklentisini de içerir stdin (bunları işlem hattına göndermek için Enter'ı kullandığınızdan emin olun).

Logstash'i Azure Veri Gezgini'a veri gönderecek şekilde yapılandırma

Aşağıdaki ayarları önceki adımda kullanılan yapılandırma dosyasına yapıştırın. Tüm yer tutucuları kurulumunuz için uygun değerlerle değiştirin. Daha fazla bilgi için bkz . Microsoft Entra Uygulaması Oluşturma.

output {
    kusto {
            path => "/tmp/kusto/%{+YYYY-MM-dd-HH-mm-ss}.txt"
            ingest_url => "https://ingest-<cluster name>.kusto.windows.net/"
            app_id => "<application id>"
            app_key => "<application key/secret>"
            app_tenant => "<tenant id>"
            database => "<database name>"
            table => "<target table>" # logs as defined above
            json_mapping => "<mapping name>" # basicmsg as defined above
    }
}
Parametre Adı Açıklama
yol Logstash eklentisi olayları Azure Veri Gezgini göndermeden önce geçici dosyalara yazar. Bu parametre, dosyaların yazılması gereken bir yolu ve Azure Veri Gezgini hizmetine yüklemeyi tetikleyen dosya döndürme için bir zaman ifadesi içerir.
ingest_url Alımla ilgili iletişim için Kusto uç noktası.
app_id, app_key ve app_tenant Azure Veri Gezgini'a bağlanmak için gereken kimlik bilgileri. Alma ayrıcalıklarına sahip bir uygulama kullandığınızdan emin olun.
veritabanı Olayları yerleştirmek için veritabanı adı.
masa Olayları yerleştirmek için hedef tablo adı.
json_mapping Eşleme, gelen olay json dizesini doğru satır biçimine eşlemek için kullanılır (hangi özelliğin hangi sütuna gittiğini tanımlar).

Logstash'ı çalıştırma

Artık Logstash'ı çalıştırmaya ve ayarlarımızı test etmeye hazırız.

  1. Komut kabuğunda Logstash kök dizinine gidin ve aşağıdaki komutu çalıştırın:

    bin/logstash -f test.conf
    

    Ekrana yazdırılan bilgileri ve ardından örnek yapılandırmamız tarafından oluşturulan 1000 iletiyi görmeniz gerekir. Bu noktada, el ile daha fazla ileti de girebilirsiniz.

  2. Birkaç dakika sonra, tanımladığınız tablodaki iletileri görmek için aşağıdaki Veri Gezgini sorgusunu çalıştırın:

    logs
    | order by timestamp desc
    
  3. Logstash'den çıkmak için Ctrl+C tuşlarını seçin

Kaynakları temizleme

Tabloyu temizlemek logs için veritabanınızda aşağıdaki komutu çalıştırın:

.drop table logs