Linux’ta Log Silme, Taşıma ve Job Oluşturma İşlemleri

Uygulama Yönetimi Ekibi
Doğuş Teknoloji
Published in
3 min readSep 3, 2021

Bu yazımızda Linux üzerinde log temizliği, path değiştirme ve job oluşturma işlemlerini nasıl yapacağımızı öğreneceğiz. Disk alanları hızla dolduğundan, disk alarmları oluşmakta ve Kibana yavaşlamaktadır. Bu durumun önüne geçmek için log kayıtlarımızı kontrol altında tutmanız gerekmektedir.

Linux Log Kayıtlarını Silme

İşlemlere df –h terminal komutu ile başlayabiliriz. Öncelikle disk doluluk oranlarına bakıp hangi diske müdahale etmemiz gerektiğini tespit ediyoruz.

Disk kullanımını tespit etmek ve hangi dosyanın ne kadar yer kapladığını görmek için “du” komutu kullanılır.

  • h, anlaşılabilir bir hale getirir.
  • s, her dosya için dizinde disk kullanımını gösterir.
  • x, verilmiş olan dizin haricinde raporlama yapmaz.
  • *yerine içine bakılmak istenen dosyanın adı yazılabilir.
  • Sort komutu sıralama için kullanılır.
  • Head ile baştan itibaren kaç kaydı görmek istediğimizi belirtiriz.

/var /log/logstash dosyası çok yer kapladığından içine bakılır. Bu dosya Linux üzerindeki standart log saklama dosyasıdır. Örnekte logstash uygulamasının loglarının saklandığı tespit edilmiştir. Öneri(best practice), uygulamanın root üzerine kurulmaması ve dosyaların ayrı bir diskte tutulması şeklindedir.

İşlemlerimize aşağıdaki terminal komutu ile devam edelim.

Bu komut ile /var/log/logstash dosyasının altında 30 günden eski herhangi bir log varsa tespit edilir. Sonrasında Logstash dosyasına bakılır. İzleyen terminal komutu ise,

30 günden fazla süredir yaşamakta olan logstash log dosyalarını temizlemek için kullanılır. -exec komutu rm -rf ile belirtilen işlemleri icra etmek için kullanılır ve nihayetinde gerekli silme operasyonu gerçekleştirilir.

Notlar

Eğer log dosyası /var/ içinde ise kök dizine(root) atılıyor demektir. Bu alan best practice tavsiyesine uygun hale getirilebilir. Bunun için birer data ve log dosyası yaratılır. İlgili içeriğin bu yeni konumlara akması için config dosyasındaki data ve path tanımlamaları aşağıdaki gibi değiştirilir.

Mkdir dizin yaratma komutudur. Chown dosya sahipliğini belirler. Bu aşamada dosyaya yetkisi olan kullanıcı/program seçilir ve dosya adı girilir. Chmod dosyada neler yapabileceğini belirtir (Read, write vb.)

ls /etc/* | grep logstash terminal komutu ile Etc dosyasında logstash’e ait dosyalar içinden konfigurasyon değerlerini tutan yaml dosyası bulunur(logstash.yml)

Dosya bulunduktan sonra yine terminalden vim /etc/logstash/logstash.yml komutu açılır ve log.level değeri info’dan warn’a çekilir. Böylece log sıklığı azaltılıp gereksiz kayıtların tutulması engellenir. Fiziki Data ve log lokasyonları daha önce yarattığımız dosyaların yerleri ile değiştirilir.

Aşağıdaki komutlar ile logstash servisi yeniden başlatılır ve son durumu kontrol edilir.

Servisin sorunsuz çalışıp çalışmadığı ayrıca Kibana üzerinden de kontrol edilmelidir.

Ek olarak;

Crontab -e ile crontab içine girilip loglar ile ilgili bir job eklenebilir. Örneğin aşağıdaki komutla logstash loglarının 30 günden fazla tutulmaması sağlanabilir. Path olarak logların tutulduğu yol bilgisi yazılmalıdır. Daha önce yaptığımız işlemle bağlantılı şekilde bu job oluşturulabilir.

Emekleri için Kaan Berk ÖZBEK’e teşekkür ederiz.

Daha fazla bilgi ve öneri için aşağıdaki mail adresinden bizimle iletişime geçebilirsiniz.

mailto:DTUygulamaYonetimi@d-teknoloji.com.tr

Yeni yazılarımız için bizi takipte kalın!

--

--