Logstash'tan Azure Veri Gezgini'a veri alma
Önemli
Bu bağlayıcı, Microsoft Fabric'teki Gerçek Zamanlı Analiz'de kullanılabilir. Aşağıdaki özel durumlar için bu makaledeki yönergeleri kullanın:
- Gerekirse KQL veritabanı oluşturma bölümündeki 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.
- Sorguları bir KQL sorgu kümesinde çalıştırın.
Logstash, birçok kaynaktan aynı anda veri alan, verileri dönüştüren ve ardından verileri sık kullandığınız "zulaya" gönderen açık kaynak, sunucu tarafı 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'e 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.
Bir tablo oluşturma
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 bu column
özellikleri öğesine çıkaran 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şturmak için 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 tabloyu 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, kendi kendinize 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'ı 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ı | Description |
---|---|
Yolu | 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 tetikleyecek 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ı. |
table | 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'i çalıştırma
Artık Logstash'i ç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'dan çı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
İlgili içerik
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin