Oldukça geniş bir çerçeve olan ve oldukça geniş bir uygulama, orta sınıf, bağlamsal işlemci vb. Kullanıyorum. Ölçek, kod tabanının bir kısmının, istemediğim istekleri çalıştırdığı ve bunun neden zor olduğunu belirlediği anlamına gelir. Düz kod denetimi, bir hata ayıklayıcıdaki tüm istekte tek adımda olduğu gibi, çok fazla zaman alıcıdır.Büyük bir Python kod tabanında neden bir etkiden izlenme
Bu özel durumda, benim sorunum, yoğun önbelleğe almak istediğim ve herhangi bir kurabiye ihtiyacım olmaması gerekenler de dahil olmak üzere her yanıtta "Vary: Cookie" ayarlıyorum. Şüpheliyim, ama nasıl kanıtlayacağımı bilemiyorum, bazı ara katman yazılımları veya içerik işlemcisi, sonucu kullanmasa bile request.session
'a erişiyor - dolaylı erişim olabilir, örneğin request.user
. Ve elbette, tamamen başka bir şey olabilir.
Python'da, büyük bir kod tabanında nedenine bir etkiden ("Vary üstbilgisi yanıta eklenir") nasıl bir iz bırakırsınız?
Hello. Ben django ile aşina değilim, ama ne yaptığını bulmanız gerekiyorsa 'A [' x '] = y' ve 'A' yerleşik bir nesne değil, o zaman sadece A .__ setitem__ yerine kendi "__setitem__" komutunu çalıştırdıktan sonra "Vary: Cookie" başlığının görünüp görünmediğini kontrol edin ve eğer öyleyse, sadece size neden olan şeyi yönlendirecek olan çağrı yığınını yazdırın. Başka bir değişken ise, program satırınızı her zaman çalıştıracak ve ihtiyacınız olan başlık belirli bir nesneye eklenmişse, her seferinde kontrol edecek bir hata ayıklayıcısını yazmaktır. –
Teşekkürler, @alex_jordan, bu iyi bir başlangıç. Çağrı yığınını programatik olarak nasıl yazdırırsınız? Ve bu durumda, bir bayrak başka bir yere ayarlanmışsa, başlığın ekleneceğine inanıyorum, bu yüzden çağrı yığını, hangi bayrakların tetiklendiğini söyleyecektir; ancak bayrak ayarlandığında ne zaman alan görevlerini izleyebilirim? Son olarak, söz konusu nesneler istek başına tahsis edilir. Tüm örnekler için bunu yapmak için geldikleri sınıfı maymun-yama yapabilir miyim? –
Jamey, aşağıda verdiğim çözüm, yalnızca django hata raporlamasını kullanıyor ve yığın takibini kendiniz yazdırmanın ayrıntıları hakkında endişelenmenize gerek kalmıyor. – BenTrofatter