Ben de bunu merak ettim ve sorunuzdan dolayı motive oldum!
Her biriyle ilgili bazı bilgilerle listelediğiniz her bir kuyruğa ne kadar yaklaşabileceğimi topladım. Yorumları / geri bildirimleri memnuniyetle karşılıyorum, izlemede yapılacak herhangi bir gelişme, işlerin yönetilmesini kolaylaştırıyor!
net.core.somaxconn
net.ipv4.tcp_max_syn_backlog
net.core.netdev_max_backlog
$ netstat -an | grep -c SYN_RECV
Kuyruktaki mevcut bağlantı sayısını gösterecek, bir izleme uygulamasından yoklamak istiyorsanız bunu port başına kırabilir ve bunu snmpd.conf içindeki exec ifadelerine koyabilirsiniz.
Gönderen:
netstat -s
Bunlar, sıradan gelen istekleri ne sıklıkta gördüğünüzü gösterir:
146533724 packets directly received from backlog
TCPBacklogDrop: 1029
3805 packets collapsed in receive queue due to low socket buffer
fs.file-max
Gönderen:
http://linux.die.net/man/5/proc
$ cat /proc/sys/fs/file-nr
2720 0 197774
Bu (salt okunur) dosya, halihazırda açılan dosya sayısını verir. Üç sayı içerir: Ayrılmış dosya tanıtıcılarının sayısı, boş dosya tanıtıcılarının sayısı ve maksimum dosya tanıtıcılarının sayısı.
net.ipv4.ip_local_port_range
Bir dışlama hizmetleri listesi (netstat -an | grep LISTEN) oluşturabilirseniz, geçici etkinlik için kaç bağlantının kullanıldığını tespit edebilirsiniz:
netstat -an | egrep -v "MYIP.(PORTS|IN|LISTEN)" | wc -l
Ayrıca (SNMP'den) aşağıdakileri de izlemelidir:
TCP-MIB::tcpCurrEstab.0
Bu ağaçta görülen tüm devletler hakkında istatistik toplamak da ilginç olabilir (yerleşmiş / time_wait / fin_wait / etc):
TCP-MIB::tcpConnState.*
net.core.rmem_max
net.core.wmem_max
Setsockopt istekleri için sisteminizi silmeniz / takip etmeniz gerekir. Aksine bu isteklerin istatistiklerinin izlendiğini sanmıyorum. Bu benim anlayışımdan farklı bir değer değil. Dağıtmış olduğunuz uygulama muhtemelen standart bir miktar isteyecektir. Başvurunuzu strace ile 'profilleyebilir' ve bu değeri buna göre yapılandırabilirim. (Tartışmak?)
net.ipv4.tcp_rmem
net.ipv4.tcp_wmem
Sınıra ne kadar yakın olduğunuzu takip etmek için tx_queue ve rx_queue alanlarındaki ortalama ve maks değerlerine bakmak gerekir (düzenli olarak):
# cat /proc/net/tcp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 00000000:0FB1 00000000:0000 0A 00000000:00000000 00:00000000 00000000 500 0 262030037 1 ffff810759630d80 3000 0 0 2 -1
1: 00000000:A133 00000000:0000 0A 00000000:00000000 00:00000000 00000000 500 0 262029925 1 ffff81076d1958c0 3000 0 0 2 -1
Bununla ilgili hataları izlemek için:
# netstat -s
40 packets pruned from receive queue because of socket buffer overrun
Ayrıca, küresel 'tampon' havuzunu (SNMP üzerinden) izliyor olmalı:
HOST-RESOURCES-MIB::hrStorageDescr.1 = STRING: Memory Buffers
HOST-RESOURCES-MIB::hrStorageSize.1 = INTEGER: 74172456
HOST-RESOURCES-MIB::hrStorageUsed.1 = INTEGER: 51629704