Bu belge AI tarafından çevrilmiştir. Herhangi bir yanlışlık için lütfen İngilizce sürümüne bakın
NocoBase günlük kaydı, Winston üzerine kurulmuştur. Varsayılan olarak, NocoBase günlükleri API istek günlükleri, sistem çalışma günlükleri ve SQL yürütme günlükleri olarak üçe ayırır. API istek günlükleri ve SQL yürütme günlükleri uygulamanın kendisi tarafından oluşturulurken, eklenti geliştiricilerinin genellikle yalnızca eklenti ile ilgili sistem çalışma günlüklerini kaydetmeleri yeterlidir.
Bu belge, eklenti geliştirirken günlükleri nasıl oluşturacağınızı ve kaydedeceğinizi açıklamaktadır.
NocoBase, sistem çalışma günlüklerini kaydetmek için yöntemler sunar. Günlükler, belirtilen alanlara göre kaydedilir ve aynı zamanda belirlenen dosyalara yazılır.
Yukarıdaki tüm yöntemler aşağıdaki kullanıma uyar:
İlk parametre günlük mesajıdır, ikinci parametre ise isteğe bağlı bir metadata nesnesidir. Bu nesne herhangi bir anahtar-değer çifti içerebilir. Burada module, submodule ve method ayrı alanlar olarak çıkarılırken, kalan diğer tüm alanlar meta alanına yerleştirilir.
Sistem varsayılan günlük kaydetme yöntemini kullanmak ancak günlükleri varsayılan dosyaya yazdırmak istemiyorsanız, createSystemLogger kullanarak özel bir sistem logger (günlükleyici) örneği oluşturabilirsiniz.
Sistem tarafından sağlanan günlük kaydetme yöntemlerini kullanmak yerine Winston'ın kendi (native) yöntemlerini tercih ediyorsanız, aşağıdaki metotları kullanarak günlükler oluşturabilirsiniz.
createLoggeroptions, orijinal winston.LoggerOptions'ın üzerine ek özellikler sunarak genişletilmiştir.
transports - Önceden tanımlanmış çıktı yöntemlerini uygulamak için 'console' | 'file' | 'dailyRotateFile' kullanabilirsiniz.format - Önceden tanımlanmış günlük kaydetme formatlarını uygulamak için 'logfmt' | 'json' | 'delimiter' kullanabilirsiniz.app.createLoggerÇoklu uygulama senaryolarında, bazen özel çıktı dizinleri ve dosyaları kullanmak isteyebiliriz. Bu durumda, günlükleri mevcut uygulamanın adını taşıyan bir dizine yazdırabilirsiniz.
plugin.createLoggerKullanım senaryosu ve yöntemi app.createLogger ile aynıdır.