製品&サポートサービス

pt-mongodb-query-digest

コマンド

pt-mongodb-query-digest [ オプション ]

【主なオプション】

  • ・ -a : ユーザー認証されたデータベースを指定する(デフォルトはadminデータベースが選択されます)
  • ・ -c : MongoDBのバージョンチェックをしない場合に記述する
  • ・ -l : ログのレベルを指定する
  • ・ -n : 表示させるクエリの数を制限する

※ pt-mongodb-query-digestを実行する際の指定条件として、少なくとも"host:port/database"を指定する必要があります。

目的

MongoDB query profilerからのクエリを集約することによって、クエリ使用状況の統計情報をレポートします。

シナリオ

以下のコマンドを実行し、発行した全クエリを記録する

> db.setProfilingLevel(2);

※ 上記のコマンドを実行するためには、"dbAdmin"権限が必要となります

以下のコマンドをMongoDB内にて実行し簡易データを格納する

> use test
switched to db test
> db.hoge.insert({"name":"Reon", "age":"20", "birthplace":"Tokyo", "hobby":["Reading", "drive"]})
WriteResult({ "nInserted" : 1 })
> db.hoge.insert({"name":"Santa", "age":"18", "birthplace":"Kanagawa"})
WriteResult({ "nInserted" : 1 })

結果

以下のような結果が標準出力されます

[root@localhost mongodb]# pt-mongodb-query-digest localhost:27017/test
pt-mongodb-query-digest - Tue, 18 Apr 2017 10:40:07 +0900
Host: localhost:27017/test
Skipping profiled queries on these collections: [system.profile]


# Totals
# Ratio    1.00  (docs scanned/returned)
# Attribute         pct     total        min         max        avg         95%        stddev      median
# ===============   ===   ========    ========    ========    ========    ========     =======    ========
# Count (docs)                     5
# Exec Time ms      100        29           0          29           6          29          12           0
# Docs Scanned      100      7.00        0.00        4.00        1.40        4.00        1.50        1.00
# Docs Returned     100      7.00        0.00        4.00        1.40        4.00        1.50        1.00
# Bytes recv          1    797.00       29.00      274.00      159.40      274.00      109.99      196.00
#

(省略)


# Query 0:  0.00 QPS, ID 13f6ec11e1dace64a788a89679b12a42
# Ratio    0.00  (docs scanned/returned)
# Time range: 2017-04-18 11:40:15.688 +0900 JST to 2017-04-18 11:40:21.489 +0900 JST
# Attribute         pct     total        min         max        avg         95%        stddev      median
# ===============   ===   ========    ========    ========    ========    ========     =======    ========
# Count (docs)                     2
# Exec Time ms        0         0           0           0           0           0           0           0
# Docs Scanned        0      0.00        0.00        0.00        0.00        0.00        0.00        0.00
# Docs Returned       0      0.00        0.00        0.00        0.00        0.00        0.00        0.00
# Bytes recv          1     58.00       29.00       29.00       29.00       29.00        0.00       29.00
# String:
# Namespaces          test.hoge
# Operation           insert
# Fingerprint         documents,insert,ordered
# Query               {"documents":[{"_id":"58f57c952855c441be073753","age":"18","birthplace":"Kanagawa","name":"Santa"}],"insert":"hoge","ordered":true}

[root@localhost mongodb]#

良い点

MySQLのスロークエリログをと同等のMongoDB Profilingに記録されたクエリを分析するのに最適です

各データベース保守サービス比較
各データベース保守サービス見積依頼
MySQLサポートサービス
MySQL Editions
Oracle Cloudトータルサポート
Percona
MariaDBプロダクト・サポート・サービス
エンタープライズOSSサポート
高可用性ソリューション
OSSシステムソリューション
Navicat
SQL Diagnostic Manager for MySQL
SYNCNEL
OSS保守サポートサービス
Microsoft Azure
お問い合わせ
各MySQL保守サービス見積依頼
スマートスタイルOSSストア
Oracle Gold Partner

ページトップへ