Hala kendim birleştirme / bölme yaklaşımı arıyorum, ancak bu arada Kubernetes belgeleri tarafından önerilen bu yaklaşım sağlam bir çözüm gibi görünüyor: Her bir ayrı günlük için bir sepet kullanın .
"Sepet", bir şekilde çalışmak için başka bir docker konteynerinin yanında kullandığınız herhangi bir docker konteyneri. Bu durumda üç günlüğünüzün her biri için günlükleri ve çıkışları stdout'a tarayan veya kuyruklayan ayrı bir kapsayıcı olacaktır.
Bu şekilde, günlük sepet sepetlerinizin her birinin kendi stdout'undan kendi docker günlüğü vardır. Bunun gibi ayrı olmak için, ayırma veya toplama için standart docker (ve kubernetes, vb.) Uygulamalarını kullanabilirsiniz. Kubernetes sayfasının söyledikleri:
Bu yaklaşım, bazı günlük akışlarını uygulamanızın farklı bölümlerinden ayırmanıza olanak tanır; bunlardan bazıları stdout veya stderr'e yazma desteği alamaz. Günlükleri yeniden yönlendirmenin arkasındaki mantık asgari düzeydedir, bu yüzden önemli bir yük değildir. Ayrıca, stdout ve stderr kubelet tarafından işlendiğinden, kubectl günlükleri gibi yerleşik araçları kullanabilirsiniz.
"Ayrı günlük akışları", docker'ın, burada docker belgelerinde açıklanan farklı kaplardaki günlüklere uyguladığı yerleşik etiketlemeden kaynaklanır :
Etiket günlüğü seçeneği, kapsayıcının günlük iletilerini tanımlayan bir etiketin nasıl biçimlendirileceğini belirler. Varsayılan olarak, sistem kapsayıcı kimliğinin ilk 12 karakterini kullanır. Bu davranışı geçersiz kılmak için bir etiket seçeneği belirtin