prometheus-net.Contrib.MongoDb
0.2.6
See the version list below for details.
dotnet add package prometheus-net.Contrib.MongoDb --version 0.2.6
NuGet\Install-Package prometheus-net.Contrib.MongoDb -Version 0.2.6
<PackageReference Include="prometheus-net.Contrib.MongoDb" Version="0.2.6" />
paket add prometheus-net.Contrib.MongoDb --version 0.2.6
#r "nuget: prometheus-net.Contrib.MongoDb, 0.2.6"
// Install prometheus-net.Contrib.MongoDb as a Cake Addin #addin nuget:?package=prometheus-net.Contrib.MongoDb&version=0.2.6 // Install prometheus-net.Contrib.MongoDb as a Cake Tool #tool nuget:?package=prometheus-net.Contrib.MongoDb&version=0.2.6
prometheus-net.MongoDb
Overview
prometheus-net.MongoDb
is a C# library that provides client-side Prometheus instrumentation for MongoDB operations (instrumenting MongoDB C# Driver)
It captures various metrics related to MongoDB commands, errors, and performance, and exports them to Prometheus for monitoring and alerting.
Note: This library is still in development and more metrics will be added
Metrics Exposed
Command Duration (mongodb_client_command_duration
)
Histogram metric that measures the duration of MongoDB commands in seconds.
- Labels:
command_type
,status
,target_collection
,target_db
Open Cursors Count (mongodb_client_open_cursors_count
)
Gauge metric that tracks the number of open cursors.
- Labels:
target_collection
,target_db
Open Cursors Duration (mongodb_client_open_cursors_duration
)
Histogram metric that tracks the number of open cursors.
- Labels:
target_collection
,target_db
Open Cursor Document Count (mongodb_client_cursor_document_count
)
Summary metric that measures the document count fetched by a cursor.
- Labels:
target_collection
,target_db
Command Errors (mongodb_client_command_errors_total
)
Counter metric that counts the total number of MongoDB command errors.
- Labels:
command_type
,error_type
,target_collection
,target_db
Command Size (mongodb_command_response_size
)
Histogram metric that measures the size of MongoDB commands in bytes.
- Labels:
command_type
,target_collection
,target_db
Usage Example
Here's a simple example to instrument your MongoDB client:
using MongoDB.Driver;
var settings = MongoClientSettings.FromConnectionString("your_connection_string_here");
settings = settings.InstrumentForPrometheus();
var client = new MongoClient(settings);
Installation
This library is available as a NuGet package. To install, run:
Install-Package prometheus-net.MongoDb
Contributing
If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- MongoDB.Driver (>= 2.21.0)
- prometheus-net (>= 8.0.1)
- PubSub (>= 4.0.2)
- System.Text.Json (>= 7.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
3.0.9 | 220 | 9/29/2023 |
3.0.2 | 129 | 9/28/2023 |
3.0.0 | 131 | 9/28/2023 |
2.0.6 | 135 | 9/28/2023 |
2.0.4 | 132 | 9/27/2023 |
2.0.2 | 133 | 9/27/2023 |
2.0.0 | 138 | 9/27/2023 |
1.0.0 | 138 | 9/27/2023 |
0.8.6 | 151 | 9/27/2023 |
0.8.4 | 123 | 9/27/2023 |
0.8.2 | 145 | 9/26/2023 |
0.8.0 | 106 | 9/26/2023 |
0.7.10 | 155 | 9/26/2023 |
0.7.8 | 122 | 9/26/2023 |
0.7.6 | 140 | 9/26/2023 |
0.7.4 | 126 | 9/26/2023 |
0.7.2 | 125 | 9/26/2023 |
0.7.0 | 121 | 9/26/2023 |
0.6.0 | 136 | 9/25/2023 |
0.5.5 | 138 | 9/25/2023 |
0.5.0 | 134 | 9/24/2023 |
0.3.1 | 130 | 9/23/2023 |
0.2.6 | 131 | 9/23/2023 |
Changes since version v0.1.4.0
:bug: Bug Fixes:
- [`35ec428`](https://github.com/myarichuk/prometheus-net.Contrib.MongoDb/commit/35ec4287a1d7b651c611469b70f1581fe73c671f) - nuget readme package error *(commit by [@myarichuk](https://github.com/myarichuk))*
:wrench: Chores:
- [`6b9039d`](https://github.com/myarichuk/prometheus-net.Contrib.MongoDb/commit/6b9039db59a9aeb2d5661de86e301904e94bc3d0) - adjust Github Workflow and add README link to NuGet nuspec *(commit by [@myarichuk](https://github.com/myarichuk))*
- [`488dabc`](https://github.com/myarichuk/prometheus-net.Contrib.MongoDb/commit/488dabc36f05c374716bc343314c6a65949aebf4) - add command_type to command response size metric *(commit by [@myarichuk](https://github.com/myarichuk))*
- [`f757195`](https://github.com/myarichuk/prometheus-net.Contrib.MongoDb/commit/f7571957a683933dbbc00aac2470500f82616621) - adjust README file to provide accurate metric data *(commit by [@myarichuk](https://github.com/myarichuk))*