Skip to content

Commit

Permalink
Adding MongoDB Atlas Collstats + DB Stats metrics (#2491)
Browse files Browse the repository at this point in the history
* Updating metadata csv by adding db stats and collstats metrics

* Fixing typo

* Fixing orientation field

* Fixing some more fields

* Using object instead of collection

* Ran metadata validation locally

* Using table instead of object after internal discussion

* Updating ownership information

* Adding new dashboard and adding descriptions to metrics

* Adding new dashboard and adding descriptions to metrics

* Adding dashboard to manifest.json
  • Loading branch information
Salil999 authored Oct 29, 2024
1 parent 289b763 commit 4bdfc5c
Show file tree
Hide file tree
Showing 4 changed files with 269 additions and 7 deletions.
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@
/loadrunner_professional/ @mihneavelinOT
/logstash/ @ervansetiawan [email protected]
/logzio/ @DataDog/agent-integrations
/mongodb_atlas/ @DataDog/saas-integrations
/mongodb_atlas/ @Salil999 [email protected] [email protected]
/moovingon_ai/ @tomm24 [email protected]
/modal/ @modal-labs [email protected] @irfansharif [email protected]
/mendix/ @mendix/cloud @DataDog/agent-integrations @DataDog/ecosystems-review
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,231 @@
{
"description": null,
"layout_type": "ordered",
"notify_list": [],
"reflow_type": "fixed",
"template_variables": [],
"title": "DB Stats + Collstats Dashboard",
"widgets": [
{
"definition": {
"background_color": "vivid_green",
"layout_type": "ordered",
"show_title": true,
"title": "dbStats",
"type": "group",
"widgets": [
{
"definition": {
"autoscale": true,
"precision": 0,
"requests": [
{
"formulas": [
{
"formula": "query1"
}
],
"queries": [
{
"aggregator": "avg",
"data_source": "metrics",
"name": "query1",
"query": "avg:mongodb.atlas.dbstats.collections{*}"
}
],
"response_format": "scalar"
}
],
"title": "# of collections",
"title_align": "left",
"title_size": "16",
"type": "query_value"
},
"id": 1906095404858910,
"layout": {
"height": 3,
"width": 4,
"x": 0,
"y": 0
}
},
{
"definition": {
"autoscale": true,
"precision": 2,
"requests": [
{
"formulas": [
{
"formula": "query1",
"number_format": {
"unit": {
"type": "canonical_unit",
"unit_name": "byte"
}
}
}
],
"queries": [
{
"aggregator": "avg",
"data_source": "metrics",
"name": "query1",
"query": "avg:mongodb.atlas.dbstats.avg.object.size{*}"
}
],
"response_format": "scalar"
}
],
"title": "avg object size",
"title_align": "left",
"title_size": "16",
"type": "query_value"
},
"id": 3604488985938846,
"layout": {
"height": 3,
"width": 4,
"x": 4,
"y": 0
}
},
{
"definition": {
"autoscale": true,
"precision": 2,
"requests": [
{
"formulas": [
{
"formula": "query1",
"number_format": {
"unit": {
"type": "canonical_unit",
"unit_name": "byte"
}
}
}
],
"queries": [
{
"aggregator": "avg",
"data_source": "metrics",
"name": "query1",
"query": "avg:mongodb.atlas.dbstats.index.size{*}"
}
],
"response_format": "scalar"
}
],
"title": "index size",
"title_align": "left",
"title_size": "16",
"type": "query_value"
},
"id": 8687938053301306,
"layout": {
"height": 3,
"width": 4,
"x": 8,
"y": 0
}
}
]
},
"id": 7480463324232016,
"layout": {
"height": 4,
"width": 12,
"x": 0,
"y": 0
}
},
{
"definition": {
"background_color": "vivid_green",
"layout_type": "ordered",
"show_title": true,
"title": "latencyStats",
"type": "group",
"widgets": [
{
"definition": {
"legend_columns": [
"avg",
"min",
"max",
"value",
"sum"
],
"legend_layout": "auto",
"requests": [
{
"display_type": "line",
"formulas": [
{
"alias": "p50 reads",
"formula": "query1"
},
{
"alias": "p95 reads",
"formula": "query2"
},
{
"alias": "p99 reads",
"formula": "query3"
}
],
"queries": [
{
"data_source": "metrics",
"name": "query1",
"query": "avg:mongodb.atlas.latencyStats.reads.p50{*}.as_count()"
},
{
"data_source": "metrics",
"name": "query2",
"query": "avg:mongodb.atlas.latencyStats.reads.p95{*}.as_count()"
},
{
"data_source": "metrics",
"name": "query3",
"query": "avg:mongodb.atlas.latencyStats.reads.p99{*}.as_count()"
}
],
"response_format": "timeseries",
"style": {
"line_type": "solid",
"line_width": "normal",
"order_by": "values",
"palette": "dog_classic"
}
}
],
"show_legend": true,
"title": "number of read operations at p50, p95 and p99",
"title_align": "left",
"title_size": "16",
"type": "timeseries"
},
"id": 5846352545448276,
"layout": {
"height": 5,
"width": 12,
"x": 0,
"y": 0
}
}
]
},
"id": 7805862455900080,
"layout": {
"height": 6,
"is_column_break": true,
"width": 12,
"x": 0,
"y": 0
}
}
]
}
11 changes: 6 additions & 5 deletions mongodb_atlas/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -68,13 +68,14 @@
},
"dashboards": {
"MongoDB-Atlas-Overview": "assets/dashboards/MongoDB-Atlas-Overview_dashboard.json",
"MongoDB-Atlas-Vector-Search-Overview": "assets/dashboards/MongoDB-Atlas-Vector-Search-Overview_dashboard.json"
"MongoDB-Atlas-Vector-Search-Overview": "assets/dashboards/MongoDB-Atlas-Vector-Search-Overview_dashboard.json",
"MongoDB-dbStats-collStats-Dashboard": "assets/dashboards/MongoDB-Atlas-dbStats-collStats_dashboard.json"
}
},
"author": {
"support_email": "help@datadoghq.com",
"name": "Datadog",
"homepage": "https://www.datadoghq.com",
"sales_email": "info@datadoghq.com"
"support_email": "frank.sun@mongodb.com",
"name": "MongoDB",
"homepage": "https://www.mongodb.com",
"sales_email": "field@mongodb.com"
}
}
32 changes: 31 additions & 1 deletion mongodb_atlas/metadata.csv
Original file line number Diff line number Diff line change
@@ -1,9 +1,39 @@
metric_name,metric_type,interval,unit_name,per_unit_name,description,orientation,integration,short_name,curated_metric
mongodb.atlas.connections.current,gauge,,connection,,Number of current connections,0,mongodb_atlas,current connections,
mongodb.atlas.cursors.totalopen,gauge,,cursor,,Total number of open cursors,0,mongodb_atlas,total open cursors,
mongodb.atlas.dbStats.avg_object_size,gauge,,byte,,Average size of each document. This is the dataSize divided by the number of documents,0,mongodb_atlas,average document size,
mongodb.atlas.dbstats.collections,gauge,,table,,Number of collections in the database,0,mongodb_atlas,collections,
mongodb.atlas.dbstats.data_size,gauge,,,,Total size of the uncompressed data held in the database,0,mongodb_atlas,database size,
mongodb.atlas.dbstats.file_size,gauge,,,,Total size of the data files on disk allocated for the database,0,mongodb_atlas,,
mongodb.atlas.dbstats.index_size,gauge,,,,Sum of the disk space allocated to all indexes in the database including free index space,0,mongodb_atlas,mongodb_atlas,
mongodb.atlas.dbstats.indexes,gauge,,index,,Total number of indexes across all collections in the database,0,mongodb_atlas,index total,
mongodb.atlas.dbstats.num_extents,gauge,,,,Number of contiguous blocks of space in a data file allocated for a collection or index,0,mongodb_atlas,,
mongodb.atlas.dbstats.objects,gauge,,object,,Number of objects (specifically documents) in the database across all collections,0,mongodb_atlas,total objects,
mongodb.atlas.dbstats.storage_size,gauge,,,,Sum of the disk space allocated to all collections in the database for document storage including free space,0,mongodb_atlas,storage size,
mongodb.atlas.dbstats.views,gauge,,object,,Number of views in the database,0,mongodb_atlas,views,
mongodb.atlas.global.lock.current.queue.reads,gauge,,operation,,The number of operations queued waiting for a read lock,0,mongodb_atlas,current queue reads,
mongodb.atlas.global.lock.current.queue.total,gauge,,operation,,The number of operations queued waiting for any lock,0,mongodb_atlas,current queue total,
mongodb.atlas.global.lock.current.queue.writes,gauge,,operation,,The number of operations queued waiting for a write lock,0,mongodb_atlas,current queue writes,
mongodb.atlas.latencyStats.read.sum,rate,600,,,Latency for total read requests,0,mongodb_atlas,collection read latency,
mongodb.atlas.latencyStats.read.count,rate,,,,Number of operations performed on the collection since startup for read requests,0,mongodb_atlas,collection read ops,
mongodb.atlas.latencyStats.read.p50,rate,,,,Number of operations on the 50th percentile in the latency histogram for read requests,0,mongodb_atlas,read histogram p50,
mongodb.atlas.latencyStats.read.p95,rate,,,,Number of operations on the 95th percentile in the latency histogram for read requests,0,mongodb_atlas,read histogram p95,
mongodb.atlas.latencyStats.read.p99,rate,,,,Number of operations on the 99th percentile in the latency histogram for read requests,0,mongodb_atlas,read histogram p99,
mongodb.atlas.latencyStats.write.sum,rate,,,,Latency for total write requests,0,mongodb_atlas,collection write latency,
mongodb.atlas.latencyStats.write.count,rate,,,,Number of operations performed on the collection since startup for write requests,0,mongodb_atlas,collection write ops,
mongodb.atlas.latencyStats.write.p50,rate,,,,Number of operations on the 50th percentile in the latency histogram for write requests,0,mongodb_atlas,write histogram p50,
mongodb.atlas.latencyStats.write.p95,rate,,,,Number of operations on the 95th percentile in the latency histogram for write requests,0,mongodb_atlas,write histogram p95,
mongodb.atlas.latencyStats.write.p99,rate,,,,Number of operations on the 99th percentile in the latency histogram for write requests,0,mongodb_atlas,write histogram p99,
mongodb.atlas.latencyStats.commands.sum,rate,,,,Latency for total database command requests,0,mongodb_atlas,database commands read latency,
mongodb.atlas.latencyStats.commands.count,rate,,,,Number of operations performed on the collection since startup for database command requests,0,mongodb_atlas,database commands read ops,
mongodb.atlas.latencyStats.commands.p50,rate,,,,Number of operations on the 50th percentile in the latency histogram for database command requests,0,mongodb_atlas,database commands histogram p50,
mongodb.atlas.latencyStats.commands.p95,rate,,,,Number of operations on the 95th percentile in the latency histogram for database command requests,0,mongodb_atlas,database commands histogram p95,
mongodb.atlas.latencyStats.commands.p99,rate,,,,Number of operations on the 99th percentile in the latency histogram for database command requests,0,mongodb_atlas,database commands histogram p99,
mongodb.atlas.latencyStats.total.sum,rate,,,,Latency for total all database transactions,0,mongodb_atlas,collection write latency,
mongodb.atlas.latencyStats.total.count,rate,,,,Number of operations performed on the collection since startup for all database transactions,0,mongodb_atlas,collection write ops,
mongodb.atlas.latencyStats.total.p50,rate,,,,Number of operations on the 50th percentile in the latency histogram for all database transactions,0,mongodb_atlas,write histogram p50,
mongodb.atlas.latencyStats.total.p95,rate,,,,Number of operations on the 95th percentile in the latency histogram for all database transactions,0,mongodb_atlas,write histogram p95,
mongodb.atlas.latencyStats.total.p99,rate,,,,Number of operations on the 99th percentile in the latency histogram for all database transactions,0,mongodb_atlas,write histogram p99,
mongodb.atlas.mem.resident,gauge,,mebibyte,,Resident memory consumed by the MongoDB process on server,0,mongodb_atlas,resident memory,
mongodb.atlas.mem.virtual,gauge,,mebibyte,,Virtual memory consumed by the MongoDB process on server,0,mongodb_atlas,virtual memory,
mongodb.atlas.metrics.document.deleted,rate,60,document,second,Documents deleted,0,mongodb_atlas,documents deleted,
Expand Down Expand Up @@ -106,4 +136,4 @@ mongodb.atlas.wiredtiger.cache.bytes_read_into_cache,rate,60,byte,second,Average
mongodb.atlas.wiredtiger.cache.bytes_written_from_cache,rate,60,byte,second,Average rate of bytes per second written from WiredTiger's cache,0,mongodb_atlas,bytes written from cache,
mongodb.atlas.wiredtiger.cache.tracked_dirty_bytes_in_cache,gauge,,byte,,Number of tracked dirty bytes currently in the WiredTiger cache,0,mongodb_atlas,dirty bytes in cache,
mongodb.atlas.wiredtiger.concurrenttransactions.read.available,gauge,,operation,,Number of available read operations allowed into the storage engine,0,mongodb_atlas,concurrent reads available,
mongodb.atlas.wiredtiger.concurrenttransactions.write.available,gauge,,operation,,Number of available write operations allowed into the storage engine,0,mongodb_atlas,concurrent writes available,
mongodb.atlas.wiredtiger.concurrenttransactions.write.available,gauge,,operation,,Number of available write operations allowed into the storage engine,0,mongodb_atlas,concurrent writes available,

0 comments on commit 4bdfc5c

Please sign in to comment.