exploring-rust-ecosystem
rust-prometheus
Our great sponsors
exploring-rust-ecosystem | rust-prometheus | |
---|---|---|
4 | 5 | |
73 | 1,023 | |
- | 1.9% | |
0.0 | 4.2 | |
over 2 years ago | about 1 month ago | |
Rust | Rust | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
exploring-rust-ecosystem
-
Monitoring Rust web application with Prometheus and Grafana
In this article, I’ll show you how to set up monitoring of a Rust web application. The application will expose Prometheus metrics that will be visualized using Grafana. The monitored application is mongodb-redis demo described in detail here. Finally, the following architecture will be obtained:
-
Getting started with MongoDB and Redis in Rust
The project is implemented with MongoDB Rust driver and redis-rs crate.
-
Introduction to gRPC in Rust
gRPC server
Source code
rust-prometheus
-
Exporter for Digital Ocean Metrics to Prometheus
I used the prometheus library because it was the most popular and easiest to find. Some unusual and unexpected aspects were that, to delete metrics, all labels must be specified at once, and to record metrics, I always needed the full list of labels that were used during creation. However, these issues were manageable.
-
The importance of SemVer for your applications
[dependencies] prometheus = { git = "https://github.com/tikv/rust-prometheus", rev = "ac86a264223c8d918a43e739ca3c48bb4aaedb90", features = ["process"] }
-
Monitoring Rust web application with Prometheus and Grafana
Metrics exposition is implemented with prometheus crate.
-
Vinted Search Scaling Chapter 6: 4th generation of Elasticsearch metrics
The new Elasticsearch exporter is written in the Rust programming language and is open-sourced on GitHub: github.com/vinted/elasticsearch-exporter-rs. The exporter uses asynchronous Tokio runtime, Rust Prometheus instrumentation library and the official Elasticsearch client library. Metrics collection is decoupled from the serving /metrics endpoint. In addition, Elasticsearch time-based metrics in milliseconds are converted into seconds to comply with Prometheus best practices (metrics ending in “millis” are replaced by “seconds”, “_bytes” and “_seconds” and postfixes are added where appropriate).
-
New Ada Folks (<2 years), what made you pick up (or leave) Ada?
Rust has a popular binding: https://github.com/tikv/rust-prometheus
What are some alternatives?
grpcurl - Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers
tonic - A native gRPC client & server implementation with async/await support.
Protobuf - Protocol Buffers - Google's data interchange format
node_exporter - Exporter for machine metrics
gRPC - The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)
prometheus-client - Haskell client library for exposing prometheus.io metrics.
mongo-rust-driver - The official MongoDB Rust Driver
tokio - A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
docs - Prometheus documentation: content and static site generator
Sphinx - Sphinx search server
rust-embed - Rust Macro which loads files into the rust binary at compile time during release and loads the file from the fs during dev.
grpc-rust - Rust implementation of gRPC