mongodbモニタツールmongosniff
3745 ワード
mongodbモニタツールmongosniff
紹介する
mongosniffは、データベースのリアルタイムアクティビティに対する低レベルの操作追跡および嗅覚ビューを提供します.mongosniffは、tcpdumpがTCP/IPネットワークトラフィック分析に使用されるのと同様に、MongoDB専用にカスタマイズされていると考えられる.mongosniffは駆動開発によく用いられる.
注意:mongosniffはlibpcapを必要とし、クラスUnixシステムのみで使用できます.
mongosniffに対してWiresharkは,MongoDB線プロトコルの検出と解析に利用できるポピュラーなネットワーク嗅覚ツールである.
使用法
次のコマンドは、localhostの27017および27018で実行されるmongodまたはmongosに接続されます.
次のコマンドは、localhostの27018で実行されているmongodまたはmongosの無効なBSONオブジェクトのみを記録し、開発および問題追跡を駆動します.
じっこう
libpcap.so.0.9=>not foundは見つかりませんでした.
ソフト接続を追加します.
ヘルプを再度表示します.
バッグをつかむ:
次はsnifです.ロゴの一部:
紹介する
mongosniffは、データベースのリアルタイムアクティビティに対する低レベルの操作追跡および嗅覚ビューを提供します.mongosniffは、tcpdumpがTCP/IPネットワークトラフィック分析に使用されるのと同様に、MongoDB専用にカスタマイズされていると考えられる.mongosniffは駆動開発によく用いられる.
注意:mongosniffはlibpcapを必要とし、クラスUnixシステムのみで使用できます.
mongosniffに対してWiresharkは,MongoDB線プロトコルの検出と解析に利用できるポピュラーなネットワーク嗅覚ツールである.
使用法
次のコマンドは、localhostの27017および27018で実行されるmongodまたはmongosに接続されます.
mongosniff --source NET lo 27017 27018
次のコマンドは、localhostの27018で実行されているmongodまたはmongosの無効なBSONオブジェクトのみを記録し、開発および問題追跡を駆動します.
mongosniff --objcheck --source NET lo 27018
じっこう
[root@test ~]# mongosniff --help
mongosniff: error while loading shared libraries: libpcap.so.0.9: cannot open shared object file: No such file or directory
[root@test ~]# which mongosniff
/usr/bin/mongosniff
[root@test ~]# ldd /usr/bin/mongosniff
linux-vdso.so.1 => (0x00007fffe2d7a000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003558e00000)
librt.so.1 => /lib64/librt.so.1 (0x0000003559200000)
libpcap.so.0.9 => not found
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000003559e00000)
libm.so.6 => /lib64/libm.so.6 (0x0000003559600000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x000000355a600000)
libc.so.6 => /lib64/libc.so.6 (0x0000003558a00000)
/lib64/ld-linux-x86-64.so.2 (0x0000003558200000)
libpcap.so.0.9=>not foundは見つかりませんでした.
[root@test ~]# cd /usr/lib64
[root@test lib64]# ls -al | grep libpcap
lrwxrwxrwx. 1 root root 16 Feb 26 17:28 libpcap.so.1 -> libpcap.so.1.4.0
-rwxr-xr-x 1 root root 260880 Nov 22 2013 libpcap.so.1.4.0
ソフト接続を追加します.
[root@test lib64]# ln -s /usr/lib64/libpcap.so.1.4.0 /usr/lib64/libpcap.so.0.9
ヘルプを再度表示します.
[root@test lib64]# mongosniff --help
Usage: mongosniff [--help] [--forward host:port] [--source (NET | (FILE | DIAGLOG) )] [ ... ]
--forward Forward all parsed request messages to mongod instance at
specified host:port
--source Source of traffic to sniff, either a network interface or a
file containing previously captured packets in pcap format,
or a file containing output from mongod's --diaglog option.
If no source is specified, mongosniff will attempt to sniff
from one of the machine's network interfaces.
--objcheck Log hex representation of invalid BSON objects and nothing
else. Spurious messages about invalid objects may result
when there are dropped tcp packets.
... These parameters are used to filter sniffing. By default,
only port 27017 is sniffed.
--help Print this help message.
バッグをつかむ:
[root@test lib64]# /usr/bin/mongosniff --source NET bond0 > /var/log/currentOp/sniff.log
次はsnifです.ロゴの一部:
10.10.0.1:55553 -->> 10.10.0.2:27017 MyTest.Pro 1042 bytes id:41d99 269721
query: { $query: { id: { $in: [ 380, 383 ] }, Availability.Status: { $lt: 5 }, $or: [ { id: { $lt: 331 } }, { id: { $gt: 200, $lt: 400 } }, { id: { $gt: 600, $lt: 800 } } ] }, $orderby: { Availability.Status: 1 } } ntoreturn: 0 ntoskip: 0 hasfields SlaveOk