:: pgadmin、winscpでアクセスするとネットワークが突然切断される事象

/ , / WEB制作・開発

最近、WEBアプリケーションのpgaminやwinscpアプリケーションを通してDBやファイルサーバーにアクセスしていつもどおりに操作していると、なぜか突然切断が途切れる現象が多発。またつなぎ直せば何の問題もないのでそのままにしていたが、何か大きな問題が起こる前兆とも言い切れないので原因調査を実施。その中で色々と勉強になったことがあるのでその時のことをメモ書き。

結果的にはルーターが原因と予想している。(ルーターを変えて試していないので確実ではないです。)  

   

 

ログで処理時間を表示させる

始めに何の処理に時間がかかっているのかを把握するため、ログに処理時間を追加。設定以降はアクセス処理単位で処理時間を取得できる。この手法は表示速度が極端に遅い時などでの原因特定にも役立つ。

apacheのhttpd.confを編集

変更前: LogFormat “%h %l %u %t \”%r\” %>s %b ” common
変更後: LogFormat “%h %l %u %t \”%r\” %>s %b %D” common

ログの末尾に処理時間(マイクロ秒)を追記 1.000.000(1M)=1秒

postgresのpostgresql.confを編集

変更前: log_min_duration_statement = -1
変更後: log_min_duration_statement = 1000

1秒以上かかったSQLをログに追記

 

 

traceroute(ネットワークの経路を調査)

指定したホストまでの経路が確認でき、経路にたどり着くまでに通るホストを表示する。各ホストまでのアクセス時間も表示されるため、どこの経路で時間がかかっているかが分かる。

traceroute to IPアドレス (IPアドレス), 30 hops max, 60 byte packets
1  ************* 0.493 ms  0.432 ms  0.406 ms
2  *************  0.761 ms  0.762 ms  1.095 ms
3  *************  1.078 ms  1.061 ms  1.044 ms
4  *************  1.439 ms  1.488 ms  1.542 ms

 

 

tracepath(IPネットワークの通信経路を表示)

tracerouteコマンドと同様の機能に加え、ネットワーク上で1回の転送で送信できる データの最大値も調査したい時に使われる。

1: *************  0.166ms
2: *************  0.809ms
3: *************  0.523ms
4: *************  1.186ms
5: *************
6: *************  2.122ms
7: *************  1.688ms

詳しい使い方
http://blog.goo.ne.jp/takuminews/e/a95d1359ee644dea3d93be2bf34a1839

 

 

tcpdump(パケットキャプチャツール)

ネットワークのトラフィックをダンプすることで詳細なトラフィック状態を確認することができる。  

詳しい使い方
http://blog.livedoor.jp/sonots/archives/18239717.html
http://itpro.nikkeibp.co.jp/article/COLUMN/20140512/556024/

dumpしたファイルをWiresharkを使って確認するといい。

 

 

tcptrack(トラフィックや通信状況をリアルタイムで把握)

topコマンドのように、秒単位で通信状況を確認することができる。どのホスト間で、どのような通信状態で、アイドル状態の秒数、転送レートを表示することができる。  

詳しい使い方 http://pocketstudio.jp/log3/2012/02/11/tcptrack/

 

 

nmap(ポートスキャンを実施する)

現在開いているポートを調べることができるコマンドがある。  

詳しい使い方 http://itpro.nikkeibp.co.jp/atcl/column/14/230520/072800001/

 

 

最後に…

少しづつ原因を絞り込んでいったことで色々と分かってきた。

pingも通っているため、結果的にはネットワークではなく、ルーターが物理的に故障している(管理画面を表示するWEBサーバーが意味不明に落ちるため192.168.1.1で管理画面に繋がらない。)ことが一番有力な原因と分かった。

普段はあまり使わないけど、いざとなったら頼りになる設定やコマンドたちです。

SNS SHARE

RELATED POSTS

LEAVE A REPLY