# MongoDB Input Plugin ### Configuration: ```toml [[inputs.mongodb]] ## An array of URLs of the form: ## "mongodb://" [user ":" pass "@"] host [ ":" port] ## For example: ## mongodb://user:auth_key@10.10.3.30:27017, ## mongodb://10.10.3.33:18832, servers = ["mongodb://127.0.0.1:27017"] ## When true, collect per database stats # gather_perdb_stats = false ## Optional SSL Config # ssl_ca = "/etc/telegraf/ca.pem" # ssl_cert = "/etc/telegraf/cert.pem" # ssl_key = "/etc/telegraf/key.pem" ## Use SSL but skip chain & host verification # insecure_skip_verify = false ``` This connection uri may be different based on your environment and mongodb setup. If the user doesn't have the required privilege to execute serverStatus command the you will get this error on telegraf ``` Error in input [mongodb]: not authorized on admin to execute command { serverStatus: 1, recordStats: 0 } ``` ### Metrics: - mongodb - tags: - hostname - fields: - active_reads (integer) - active_writes (integer) - commands_per_sec (integer) - deletes_per_sec (integer) - flushes_per_sec (integer) - getmores_per_sec (integer) - inserts_per_sec (integer) - jumbo_chunks (integer) - member_status (string) - net_in_bytes (integer) - net_out_bytes (integer) - open_connections (integer) - percent_cache_dirty (float) - percent_cache_used (float) - queries_per_sec (integer) - queued_reads (integer) - queued_writes (integer) - repl_commands_per_sec (integer) - repl_deletes_per_sec (integer) - repl_getmores_per_sec (integer) - repl_inserts_per_sec (integer) - repl_lag (integer) - repl_queries_per_sec (integer) - repl_updates_per_sec (integer) - resident_megabytes (integer) - state (string) - total_available (integer) - total_created (integer) - total_in_use (integer) - total_refreshing (integer) - ttl_deletes_per_sec (integer) - ttl_passes_per_sec (integer) - updates_per_sec (integer) - vsize_megabytes (integer) - wtcache_app_threads_page_read_count (integer) - wtcache_app_threads_page_read_time (integer) - wtcache_app_threads_page_write_count (integer) - wtcache_bytes_read_into (integer) - wtcache_bytes_written_from (integer) - wtcache_current_bytes (integer) - wtcache_max_bytes_configured (integer) - wtcache_pages_evicted_by_app_thread (integer) - wtcache_pages_queued_for_eviction (integer) - wtcache_server_evicting_pages (integer) - wtcache_tracked_dirty_bytes (integer) - wtcache_worker_thread_evictingpages (integer) The telegraf plugin collects mongodb stats exposed by serverStatus and few more and create a single measurement containing values e.g. * active_reads * active_writes * commands_per_sec * deletes_per_sec * flushes_per_sec * getmores_per_sec * inserts_per_sec * net_in_bytes * net_out_bytes * open_connections * percent_cache_dirty * percent_cache_used * queries_per_sec * queued_reads * queued_writes * resident_megabytes * updates_per_sec * vsize_megabytes * total_in_use * total_available * total_created * total_refreshing * ttl_deletes_per_sec * ttl_passes_per_sec * repl_lag * repl_oplog_window_s * jumbo_chunks (only if mongos or mongo config) - mongodb_db_stats - tags: - db_name - hostname - fields: - avg_obj_size (float) - collections (integer) - data_size (integer) - index_size (integer) - indexes (integer) - num_extents (integer) - objects (integer) - ok (integer) - storage_size (integer) - type (string) ### Example Output: ``` mongodb,hostname=127.0.0.1:27017 active_reads=0i,active_writes=0i,commands_per_sec=6i,deletes_per_sec=0i,flushes_per_sec=0i,getmores_per_sec=1i,inserts_per_sec=0i,jumbo_chunks=0i,member_status="PRI",net_in_bytes=851i,net_out_bytes=23904i,open_connections=6i,percent_cache_dirty=0,percent_cache_used=0,queries_per_sec=2i,queued_reads=0i,queued_writes=0i,repl_commands_per_sec=0i,repl_deletes_per_sec=0i,repl_getmores_per_sec=0i,repl_inserts_per_sec=0i,repl_lag=0i,repl_queries_per_sec=0i,repl_updates_per_sec=0i,resident_megabytes=67i,state="PRIMARY",total_available=0i,total_created=0i,total_in_use=0i,total_refreshing=0i,ttl_deletes_per_sec=0i,ttl_passes_per_sec=0i,updates_per_sec=0i,vsize_megabytes=729i,wtcache_app_threads_page_read_count=4i,wtcache_app_threads_page_read_time=18i,wtcache_app_threads_page_write_count=6i,wtcache_bytes_read_into=10075i,wtcache_bytes_written_from=115711i,wtcache_current_bytes=86038i,wtcache_max_bytes_configured=1073741824i,wtcache_pages_evicted_by_app_thread=0i,wtcache_pages_queued_for_eviction=0i,wtcache_server_evicting_pages=0i,wtcache_tracked_dirty_bytes=0i,wtcache_worker_thread_evictingpages=0i 1522798796000000000 mongodb_db_stats,db_name=local,hostname=127.0.0.1:27017 avg_obj_size=818.625,collections=5i,data_size=6549i,index_size=86016i,indexes=4i,num_extents=0i,objects=8i,ok=1i,storage_size=118784i,type="db_stat" 1522799074000000000 ```