Merhaba ThomasHobbes
Log tutmak benim çok sevdiğim bir şey. Dediğin gibi hata yakalamakta ve kullanıcıların yaptıkları işlemlerin kayıtlarını tutmakta kullanıyorum. Ki bu bence bir programcının en çok ihtiyaç duyduğu şeylerden biri.
Örneğin bir program yazdın ve bunu kullanan bir firma bünyesinde önemli dosyaların silindiğini veya değiştiği durumlarda log kayıtlarından bunu takip ederek gerekli çözümleri uygulayıp kurtarma operasyonu yapabilirsin. Veya keylogger yazabilirsin.
Şimdilik iyi şeyler düşünelim.
ben 2 farklı şekilde log kayıtları tutuyorum bunlardan birincisi python da bulunan dosya açma okuma işlemleri ile diğeri de sqlite ile. Tabi bunların dışında daha gelişmiş yapılar da illa ki vardır. Ben kendi bildiğim kadarıyla basit, ilkel ve işini sade şekilde görebilecek bir yapıyı anlatacağım.
.txt dosyalarında log tutacağım zaman ihtiyacım olan en önemli şey datetime.now()
bunu kullanabilmek için programa şu şekilde import ediyorum >> from datetime import datetime
daha sonra txt dosyalarını oluşturmak için şu şekilde bir yol izliyorum.
logdata = open("logdata.txt","r+",encoding="utf-8")
logdata.write("| İŞLEM ZAMANI >> {} | İŞLEMİ YAPAN >> {} | YAPILAN İŞLEM >> {} |".format(datetime.now(),username,user_operation))
logdata.close()
Bu şekilde bir log tuttuğum zaman sistemde o an aktif olarak işlem yapan kullanıcı adıyla yapılan işlemin ne zaman yapıldığına ve işlemin ne olduğuna dair kayıtları oluşturmuş oluyor. Bunu bir fonksiyona atayarak çalışmasını istediğin her bölümde o fonksiyonu çağırıp. Yapılan her işlemi kontrol edebilirsin.
.format()
içerisinde yer alan değişkenler programda tanımlanmış şeylerdir. Sen kendi tarzınla da nasıl yapıyorsan oraları o değişkenler ile doldurabilirsin. Benimki sadece bir örnek sen istediğin kadar detaylandırıp değiştireblirsin.
Kendi tuttuğum bir txt dosyasını göstereyim size.
Aynı sistemi eğer eğitimini aldıysan aşinalığın veya bilgin varsa sqlite üzerinden de yapabilirsin.
Hatta onun içinde bir örnek görsel paylaşayım.
Bu şekilde bir fikir oluşsun aklınızda. Sorunuz olursa seve seve yardımcı olmaya çalışırım. log tutmak benim de sevdiğim bir şey