Bir Flask uygulamasında, bir user_id
var olduğunda, üretilen her hata günlüğü kaydına user_id
alanı eklemek istiyorum flask.session
'da. günlüğü API günlüğü özelleştirmek için yollar (LoggerAdapter
, logging.makeRecord
sağlar görünüyor, çünküPython Günlüğe kaydetme: LogRecord'a özel bir alan ekleme ve değeri ayarlamak için genel bir geri arama kaydetme
Aşağıda çözüm geldi ama user_id
biçimlendirmesini sürücü biçim dizesi için izin vermez çünkü, hackish, ve vb ...) Daha temiz bir yol olması gerektiğini düşünüyorum.
Bunu yapmak için "python yolu" ne olurdu?
class CustomFormatter(Formatter):
def format(self, record):
from myapp.core import authenticationManager
user_id = authenticationManager.current_user_id_if_authenticated()
user_id = "unknown" if user_id is None else str(user_id)
return super(F,self).format(record) + ", user_id" + user_id
Teşekkür: (Bu paketi geliştirdi yasal uyarı), ancak 1 yerine True iade edilmelidir: https:
:
yüklemek için // docs .python.org/2/library/logging.html # filtre nesnesi? –
Bir boole bağlamında True olarak değerlendiren herhangi bir nesne yapar. [Docs state] (https://docs.python.org/2/library/logging.html#logging.Logger.filter), "Bu kaydedicinin filtrelerini kayıtlara uygular ve kayıt olması için gerçek bir değer döndürür işlenmiş". Burada '1' üzerinde 'True' seçeneğini tercih ediyorum çünkü nesnenin "boolean-ness" ini kullandığımızı vurgular. – unutbu