Linux ağ günlüğü nasıl alınır?


14

Linux'ta binlerce ve binlerce kullanıcı için kalıcı bağlantıları kabul eden belirli bir bağlantı noktasında çalışan bir java sunucumuz var. Son zamanlarda müşterilerimiz zaman aşımı hatasıyla bağlantı kuramıyor. Trafiğin çok yükseldiğinden şüpheleniyoruz, ancak java günlüğümüz aslında saniyede çok fazla bağlantının olmadığını gösteriyor.

Çok fazla kişinin aynı anda denediğinden ve temelde işletim sistemi düzeyinde düştüğünden şüpheleniriz ve bu nedenle java programı hiçbir zaman bağlantıyı kabul etme şansı elde etmez mi? Linux'ta birisinin bir sokete çarpmaya çalıştığını gösterebilecek bir tür giriş var mı?

Yanıtlar:


8

iptables -I INPUT -p tcp --dport some_port -j LOGdaha
tail -f /var/log/messages
sonra, bu kural tarafından ne kadar verinin vurulduğunu görmek için: iptables -L -n -v
Veya tcpdump'ı çalıştırabilir ve bağlantı noktalarını çıkarabilirsiniz.


2
+1. Hafif bir değişiklik sadece yeni bağlantı girişimlerini yakalamak için daha iyi çalışabilir: iptables -I INPUT -p tcp --dport some_port -m state --state NEW. Her bağlantı girişiminin ayrıntılarıyla ilgilenmediğiniz sürece, atlamanın -j LOGsistem günlük dosyasına çok fazla gereksiz veriyle spam göndermekten kaçındığını unutmayın.
Steven Pazartesi

3

Gerçekten kötü ağ sorunlarım olduğunda, wireshark'ı ateşleme eğilimindeyim . Benim için, nitritli ayrıntılara inmek zorunda kaldığımda daha iyi bir ağ teşhis aracı yok. Ve kaynak ya da hedef kutuya yükleyemiyorsanız endişelenmeyin; çalıştırabileceğiniz tcpdump -wuygun bir zamanda başka bir kutuyu wireshark başından ve / veya son nokta ve yem dosya üzerinde bir dosyaya paket veri yazma.


Evet, böyle bir filtre tcpdump -nS dst port <some port>
koymanızı

0

Java iş parçacıklarınızın bir yuva düzeyinde tam olarak ne elde ettiğini görmek iyi olurdu. Aynı zamanda bunu OS ağ bilgisi ile ilişkilendirmek istersiniz. AppFirst'e bir göz atın. Bu tür bir şey yapabilirler.


0
watch -n1 -d "netstat -an | grep ESTABLISHED | wc -l"

şu anda kurulan bağlantıları gösterir.

Bunu etkin ulimitayarlarınızla ve elbette java uygulamanızın yapabileceği maksimum bağlantı sayısı ile karşılaştırın.

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.