- Remap inspired `reduce` transform to solve multiline merging · Issue #4258 · vectordotdev/vector
- This issue proposes an idea for a new reduce transform that borrows from the new remap transform. The intent is to solve event merging, as well as other reduce-like problems, through robust reduce ...
Bugün Vector adlı bir aracı tanıtmayı planlıyorum.
DataDog'un çıkardığı bir ürün.
Promtail, otel vb. bildiğimiz diğer araçların yaptığı işlevi üstleniyor.
Log toplama, toplama ve dönüştürmeyi destekliyor.
Özellikleri aşağıdaki gibidir
1. Golang yerine rust ile yazılmıştır
2. Otel'e kıyasla log dönüştürme kodunu yazmak daha kolaydır
3. Bildirimsal olarak yönetilebilir
4. İyi yazılmış resmi doküman
Resmi siteye girdiğinizde aşağıdaki noktaları avantaj olarak öne sürüyorlar ancak
Yukarıdakilerin çoğunun diğer araçlarda da öne sürüldüğünü düşünüyorum, bu nedenle yukarıda hariç tuttum.
Ayrıca kullanırken karşılaştığım dezavantajlardan bahsetmek gerekirse
1. Güncellenmemiş resmi doküman
2. İlgili materyalleri bulmak zor
Bu kadar sanırım.
Kullanırken çok rahatsız edici bir şeyle karşılaşmadım, ancak ilgili materyallerin olmaması veya güncellenmemiş olması oldukça üzücüydü.
Sadece helm kullanıyorum, bu nedenle helm tabanlı yazdığım için şimdiden özür dilerim 흑....
Şu basit values.yaml dosyasını oluşturup
Yukarıdaki komut aracılığıyla k8s'den gelen logları loki ile basit bir şekilde entegre edebildim.
Bunları yazarken birkaç sorunla karşılaştım.
Birincisi, customConfig oluştururken varsayılan olarak uygulanan seçenekler devre dışı bırakılıyor, bu nedenle source, transform ve sinks'i kendiniz yazmanız gerekiyor.
İkincisi, k8s loglarının doğası gereği satır bazlı loglar geliyor, bu nedenle hata izleme gibi çok satırlı loglar birleştirilmeli.
Source.file'da bunun için çok satırlı ilgili seçenekler var ancak k8s'de yok.
Ayrıca Vector ekibinin iç tartışmaları sonucunda transform.reduce'un desteklendiği ve bunun aracılığıyla yapılması gerektiği sonucuna vardık.
Üçüncüsü, root.data_dir'in yanı sıra custom_config içindeki data_dir'i de ayarlamanız gerekiyor...
İçine bu şekilde değerler yerleştiriliyor ve ayarlanmadığı takdirde loglarla ilgili yetkilendirme hatası sık sık meydana geliyor.. ㅎ
Dördüncüsü, dağıtımda helm kullandım ve bu yüzden söz dizimleri çakıştığı için kaçış karakteri kullanılması gerektiği durumlar oldu.
Bu yüzden dokümanda "{{ metadata }}" şeklinde gösteriliyor ve aynen yapıştırdığımda hata aldım...
Bu yüzden özellikle helm'de "{{ {{ metadata }} }}" şeklinde kaçış karakteri kullanmanız gerekiyor!
Ek olarak mimariyle ilgili bir sorunuz varsa, aşağıdaki yazıya göz atmanızı öneririm.
https://vector.dev/docs/setup/deployment/topologies/
Yorumlar0