logging paketi, Dart ve Flutter uygulamalarında hata ayıklama ve hata loglama için kullanılan resmi bir pakettir. Closure JS Logger ve java.util.logging.Logger gibi diğer dillerdeki loggerlara benzer bir API sunar. Bu paket, uygulama içinde loglama altyapısı kurmak isteyen geliştiriciler için temel bir araçtır. Sürüm 1.3.0, 17 Ekim 2024'te yayınlanmıştır ve Dart SDK ^3.4.0 gerektirir. Paket, Android, iOS, Windows, Linux, macOS ve web platformlarını destekler. Pub.dev üzerinde 1.000 beğeni ve 160 pub puanına sahiptir; son 30 günde 8.586.308 kez indirilmiştir. Paketin kaynak kodları dart-lang/core deposunda yer almaktadır.
Hangi ihtiyaçlarda değerlendirilebilir?
- Dart ve Flutter uygulamalarında yapılandırılabilir loglama katmanı eklemek isteyen geliştiriciler
- Farklı seviyelerde (verbose, debug, info, warning, error) log kaydı tutmak isteyen ekipler
- Uygulama hatalarını ve davranışlarını izlemek için merkezi bir loglama mekanizması arayanlar
Yaygın kullanım alanları
Geliştirme sırasında hata ayıklama
Uygulama geliştirirken, değişken değerlerini, akışları ve hataları loglayarak sorunları daha hızlı tespit etmek için kullanılabilir.
Uygulama izleme ve telemetri
Canlı uygulamalarda önemli olayları ve hataları loglayarak, uygulamanın davranışını izlemek ve sorunları önceden tespit etmek için kullanılabilir.
Farklı ortamlar için log seviyesi yönetimi
Geliştirme, test ve üretim ortamlarında farklı log seviyeleri tanımlayarak, gereksiz log kayıtlarını önlemek ve performansı artırmak için kullanılabilir.
İncelenmesi gereken noktalar
- Paket, temel loglama API'si sağlar; logları dosyaya yazma veya uzak bir sunucuya gönderme gibi özellikler için ek paketler veya özel implementasyonlar gerekebilir.
- Dart SDK ^3.4.0 sürümüne uyumluluk gerektirir; projenizin SDK sürümünü kontrol etmelisiniz.
- Paket, Flutter'a özel değildir; saf Dart projelerinde de kullanılabilir, ancak Flutter uygulamalarında platform kanallarıyla entegrasyon gerektiren durumlar için ek değerlendirme yapılmalıdır.
pub.dev
Bağımlılık ve geliştirme notları
logging paketi, Flutter ve Dart projelerinde pub.dev üzerinden bağımlılık olarak eklenir. Paketin kurulumu için resmi belgelerde belirtilen adımlar izlenmelidir.
- 1pubspec.yaml dosyasına logging: ^1.3.0 bağımlılığını ekleyin.
- 2Terminalde flutter pub get komutunu çalıştırarak paketi indirin.
- 3Kodunuzda import 'package:logging/logging.dart'; ifadesiyle paketi içe aktarın.
logging paketi ile geliştirme, Logger sınıfı ve seviye filtreleri kullanılarak yapılır. Paketin resmi dokümantasyonunda temel kullanım ve özelleştirme örnekleri bulunur.
- Logger sınıfı ile farklı isimlerde logger örnekleri oluşturulabilir.
- Log seviyeleri (Level.ALL, Level.CONFIG, Level.FINE, Level.FINER, Level.FINEST, Level.INFO, Level.SEVERE, Level.SHOUT, Level.WARNING) kullanılarak log kayıtları filtrelenebilir.
- hierarchicalLoggingEnabled özelliği ile logger hiyerarşisi kurulabilir.
- Log kayıtlarını özelleştirmek için LogRecord sınıfı ve listener fonksiyonları kullanılabilir.
Hazır çözümün ötesinde
Özel geliştirme ne zaman değerlendirilebilir?
ZeplinGo olarak, projenizin ihtiyaçlarına özel loglama altyapısı tasarlayabilir ve mevcut logging paketini bu altyapıya entegre edebiliriz. Logların dosyaya yazılması, uzak sunucuya gönderilmesi veya farklı ortamlarda yönetilmesi gibi gereksinimleriniz için kapsam belirleyerek çözüm geliştirebiliriz.
Ücretsiz ön çalışma isteyin →Değerlendirme soruları
logging paketi Flutter uygulamalarında nasıl kullanılır?
logging paketi, Flutter projelerine pubspec.yaml dosyasına bağımlılık eklenerek dahil edilir. Ardından Logger sınıfı kullanılarak loglama yapılabilir. Örneğin, final logger = Logger('MyApp'); şeklinde bir logger oluşturup logger.info('Bilgi mesajı'); gibi çağrılarla log kaydı tutabilirsiniz.
logging paketi hangi platformları destekler?
Paket, Android, iOS, Windows, Linux, macOS ve web platformlarını destekler. Bu sayede Flutter'ın desteklediği tüm platformlarda kullanılabilir.
logging paketi ücretsiz midir?
Evet, logging paketi açık kaynaklıdır ve pub.dev üzerinden ücretsiz olarak dağıtılmaktadır. Dart ve Flutter topluluğu tarafından geliştirilmektedir.