Uygulamam neden günlük dosyasını güncellemeden çöküyor ('> my.log' kullanılıyor)


0

Micro EC2'de Java tabanlı bir sunucu tarafı uygulaması (soket, çoklu iş parçacığı, memcached, mysql) olan mCruiseOn Server'ı kullanıyorum. Sık sık çarpıyordu. Hafıza kullanımının onu öldürdüğünden şüpheleniyorum.

Hangi programın çok fazla bellek kullandığını nasıl öğrenirsiniz

Bunu okudum ve çok faydalı oldu. Şimdi başvurumun bellek yetersizliğinden dolayı çöküp düşmediğini bilmem gerekiyor. Bu bilgiye sahip herhangi bir sistem günlüğü?

Yanıtlar:


1

İyi tasarlanmış bir uygulama bellek yetersizliğinden dolayı çökerse, bu konuda bazı yararlı bilgiler vermelidir. Terminalden uygulamayı çağırmayı çalıştırmayı ve mesajları incelemeyi deneyin.


Sorunun biri için yeterince iyi olmadığını merak ediyorum.
Siddharth

@ Siddharth Kim bilir. Belki dikkatlice okumadılar ve bir hata bildirmeye çalıştığınızı düşündüler ( burada konu dışı ). Her durumda, rastgele yükselti oranlarının rastgele indirimleri iptal etmekten daha fazla eğiliminde olduğunu bilmekten mutluluk duyacaksınız (özellikle bir yükselme oranı, bir artı değerin kabul ettiğinden daha fazla rep eklediği için kazanılan / kaybedilen itibar açısından).
Eliah Kagan

0

Tüm çıktıları kullanarak > my.log &ve ardından tail -f my.logtüm mesajları görüntülemek için kullanarak bir dosyaya yönlendiriyordum . Nedense hepsi e.printstacktracemy.log’da değildi. Ben bir eksikti RuntimeExceptionve tam olarak kök neden a ArrayOutofboundException.


1
Sorunun bir açıklaması veya daha önce çözemediğinizin bir göstergesi olarak mı tasarlandığı açık değildir. İkincisi, o zaman bu sorunuzun bir düzenlemesi olmalıdır (ve isterseniz cevabım hakkında da yorum bırakabilirsiniz). Ayrıca cevabımı kabul ettiğinizi de unutmayın; bu, bu sorunun "çözülmüş" olduğu anlamına gelir. Buradaki cevapların hiçbiri henüz sizin ihtiyaçlarınız için yeterli değilse, cevabımı kabul etmemenizi tavsiye ederim (onay işaretini tekrar tıklayın), böylece insanlar hala yardım aradığınızı bilirler.
Eliah Kagan

Ancak, çarpışmanın nedenini şimdi biliyorsanız, bu soruyu yeniden açmak yerine bir hata olarak bildirmelisiniz (Ask Ubuntu'ya hataları bildirmek için iyi bir yer olmadığı için ).
Eliah Kagan

geri bildiriminiz için teşekkürler. Sorularıma karşı daha dikkatli olacağım. Bununla birlikte, cevabınız işletim sistemimde bir hata aramak yerine uygulamama geri dönmeme yardımcı oldu. Soruma cevabım, birisinin sorunumu çözmek için ne yaptığımı anlamalarına yardım etmenin bir yoludur ve sorunumun temel nedenidir. Bir> my.log dosyasının e.printstacktrace mesajlarını yakalamayacağını hayal edemiyorum. Söylemek için düşünmek için çok rapor. Yine, yardımlarınız için teşekkürler. Bu yardımcı oldu.
Siddharth,

Hata mesajları genellikle stderr'e yazılır. > filesadece > file 2>&1
stdout'u
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.