mongostat to monitor mongodb

Connect with

mongostat to monitor mongodbThis article is about mongostat to monitor MongoDB health and its stat. mongostat in MongoDB a performance monitoring tool. mongostat is built-in MongoDB monitoring tools.

1. Overview of mongostat to monitor MongoDB

mongostat in MongodB being used to monitor mongoDB database server, its a built-in tool for measuring performance of your MongoDB database, which provides overall stats of mongodb database server.
mongostat is basically used to monitor mongodb database which provides stats of database server as: number of operations ( i.e. insert/read/update/delete ) serving by mongodb server, You can view insight or overview of stats to measure health or performance of MongoDB. How can you know, what is going on inside of mongodb engine. mongostat in MongoDB gives us the following insight:

  • mongostat give us per second overview of lot of things.
  • how much query for insert, read, update , delete , getMore are serving by mongodb engine per second.
  • how much operations mongo engine serve per second i.e read, write , delete, update
  • how much connections are active on this server per second.
  • how much number of netIn and netOut no of bytes for incoming and outgoing for this server per second.
  • no of queries are in queue or in read/write etc.

2. Overview of mongostat example

I run mongostat on standalone mongoDB server, and find following output on console:

[root@mysoftkey ~]# mongostat   
insert query update delete getmore command % dirty % used flushes vsize   res qr|qw ar|aw netIn netOut conn                      time
     9  1837     73      1      30    80|0     2.5   79.9       0 4.66G 3.77G   0|0   0|0  316k  6.22m  401 2017-09-18T17:00:33+05:30
     9  1984    243     *0      26    78|0     2.5   79.9       0 4.66G 3.77G   0|0   1|0  331k  5.17m  401 2017-09-18T17:00:34+05:30
    13  2061    147     *0      20    95|0     2.5   80.0       0 4.66G 3.77G   0|0   2|0  331k  3.82m  401 2017-09-18T17:00:35+05:30
     9  2018    137     *0      25    72|0     2.5   80.0       0 4.66G 3.77G   0|0   0|0  335k  5.76m  401 2017-09-18T17:00:36+05:30
     3  1392     92      3      39    79|0     2.5   80.0       0 4.66G 3.77G   1|0   0|0  271k  8.05m  401 2017-09-18T17:00:37+05:30
     2  1280     28     *0      24    69|0     2.5   80.0       0 4.66G 3.77G   0|0   0|0  194k  4.33m  401 2017-09-18T17:00:38+05:30
     9  1827    151     *0      32    78|0     2.5   80.0       0 4.66G 3.77G   1|0   0|0  284k  6.89m  401 2017-09-18T17:00:39+05:30
     6  1958    289     *0      28    83|0     2.6   80.0       0 4.66G 3.77G   1|0   1|0  331k  4.96m  401 2017-09-18T17:00:40+05:30
     7  1895    177     *0      24    97|0     2.6   78.4       0 4.66G 3.77G   1|0   0|0  320k  5.08m  401 2017-09-18T17:00:41+05:30

sample for replica Set cluster, logged-in into MongoDB server and run mongostat command on terminal and see the following output.

  
[root@mysoftkey ~]# mongostat
insert query update delete getmore command % dirty % used flushes vsize   res qr|qw ar|aw netIn netOut conn set repl     time
   *25   464     *5     *1      14    32|0     0.4   33.0       0 21.4G 20.5G   0|0   1|0   65k     4m  215 rs1  SEC 18:05:25
   *46  3189    *18     *5      22    16|0     0.4   33.0       0 21.4G 20.5G   0|0   4|0  343k     8m  215 rs1  SEC 18:05:26
   *33  2350    *22     *2      21    22|0     0.4   33.0       0 21.4G 20.5G   0|0   1|0  264k     7m  215 rs1  SEC 18:05:27
   *31  1872     *6     *2      22     5|0     0.4   33.0       0 21.4G 20.5G   0|0   1|0  205k     7m  215 rs1  SEC 18:05:28
   *23   996    *14     *0      23    13|0     0.4   33.0       0 21.4G 20.5G   0|0   1|0  120k     6m  215 rs1  SEC 18:05:29
   *35  1429    *13     *2      24    34|0     0.4   33.0       0 21.4G 20.5G   0|0   1|0  166k     7m  215 rs1  SEC 18:05:30
   *30   936    *13     *2       9    28|0     0.4   33.0       0 21.4G 20.5G   0|0   1|0  102k     3m  215 rs1  SEC 18:05:31
   *19  1095     *2     *1      14    20|0     0.4   33.0       0 21.4G 20.5G   0|0   1|0  125k     4m  215 rs1  SEC 18:05:32
   

3. mongostat command parameters available

For more help you can use mongostat --help , output as follows:

 
[root@mysoftkey ~]# mongostat --help
Usage:
  mongostat




 
Monitor basic MongoDB server statistics.
See http://docs.mongodb.org/manual/reference/program/mongostat/ for more information.
general options:
      --help                         print usage
      --version                      print the tool version and exit

verbosity options:
  -v, --verbose                      more detailed log output (include multiple times for more verbosity, e.g. -vvvvv)
      --quiet                        hide all log output

connection options:
  -h, --host=                        mongodb host to connect to (setname/host1,host2 for replica sets)
      --port=                        server port (can also use --host hostname:port)

ssl options:
      --ssl                          connect to a mongod or mongos that has ssl enabled
      --sslCAFile=                   the .pem file containing the root certificate chain from the certificate authority
      --sslPEMKeyFile=               the .pem file containing the certificate and key
      --sslPEMKeyPassword=           the password to decrypt the sslPEMKeyFile, if necessary
      --sslCRLFile=                  the .pem file containing the certificate revocation list
      --sslAllowInvalidCertificates  bypass the validation for server certificates
      --sslAllowInvalidHostnames     bypass the validation for server name
      --sslFIPSMode                  use FIPS mode of the installed openssl library

authentication options:
  -u, --username=                    username for authentication
  -p, --password=                    password for authentication
      --authenticationDatabase=      database that holds the user's credentials
      --authenticationMechanism=     authentication mechanism to use

stat options:
      --noheaders                    don't output column names
  -n, --rowcount=                    number of stats lines to print (0 for indefinite)
      --discover                     discover nodes and display stats for all
      --http                         use HTTP instead of raw db connection
      --all                          all optional fields
      --json                         output as JSON rather than a formatted table
[root@mysoftkey ~]#

5. Reference

You can visit docs.mongodb.com for more details.

Thanks for visiting this post for MongoDB monitoring tools using montostat explained. You can also visit MongoDB Tutorial Listing page for more articles on MongoDB document-oriented database.
Your comments are welcome to improve this post. Happy Learning 🙂


Connect with

Leave a Comment

Your email address will not be published. Required fields are marked *