私はボックス上のアプリケーションの問題を一般的に推測することを期待して、サーバー上のTCP=スタックを監視しています。
私の最初の傾向は、報告されたすべての状態(LISTEN、ESTABLISHED、FIN_WAIT2、TIME_WAITなど)のソケット数を測定し、いくつかの異常を検出することです。
チームメイトは、「lsof」がTCPスタックがどのような状態にあるかを確認するためのより良いツールになるだろうと示唆しています。
Serverfaultのユーザーからの好みや体験のヒントはありますか?
出力が実行されるすべてのプラットフォームで一貫しているため、私はlsofを好みます。ただし、両方のプログラムからほぼ同じ情報を取得できます。それは個人の好みによると思います。
私の最初の含意はnetstat -ptan
これにより、探しているすべての情報が得られます。おそらくパイプでソートおよび一意化します。以下は、ソケットのステータスの適切な数を提供するはずです。
netstat -ptan | awk '{print $6 " " $7 }' | sort | uniq -c
少し微調整(および適切なコマンドオプション)を使用すると、どちらからもほぼ同じ情報を取得できるので、個人的な好みのほうが多いと思います。
ただし、さまざまな状態の接続数を監視する必要がある場合は、シングルショットのコマンドラインツールでは監視しません。時間をかけてレビューできるように、トレンド分析が可能なものを使用します。 muninのようなものは、時間の経過とともにグラフ化されるため、非常に便利です(他の潜在的に有用なシステム統計も表示されます)。
ボックス自体とそのパフォーマンスに関する詳細な情報(問題が発生しているときと発生していないときの両方)があれば、アプリケーションのトラブルシューティングは常に簡単です。