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:
- Gerekirse, KQL veritabanı oluşturma başlığındaki yönergeleri kullanarak veritabanları oluşturun.
- Gerekirse, Boş tablo oluşturma başlığındaki yönergeleri kullanarak tablolar oluşturun.
- Kopyalama URI'sindeki yönergeleri kullanarak sorgu veya alma URI'lerini alın.
- KQL sorgu kümesinde sorgu çalıştırma.
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.
Tablo oluşturmak için veritabanı sorgu pencerenizde aşağıdaki komutu çalıştırın:
.create table logs (timestamp: datetime, message: string)
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.
Gerekli işlem hattı ayarlarını içerecek yeni bir metin dosyasını düzenleyin (vi kullanarak):
vi test.conf
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.
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.
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
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