mtail
prometheus-cpp
Our great sponsors
mtail | prometheus-cpp | |
---|---|---|
23 | 4 | |
3,740 | 870 | |
0.9% | - | |
8.7 | 8.0 | |
8 days ago | 30 days ago | |
Go | C++ | |
Apache License 2.0 | GNU General Public License v3.0 or later |
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.
mtail
-
i need to visualize all logs from remote dir
You can do that with something like mtail. Basically write expressions that match your logs and produce metrics.
-
Tool to scrape (semi)-structured log files (e.g. log4j)
mtail is a standard tool for this.
-
Free netflow collector that forwards messages to a syslog server?
I use goflow2 to do something like this. I don't specifically use syslog itself for this, but mtail to generate the metrics.
-
How to easily gather IPv6 VS IPv4 usage on a web server?
I can recommend mtail. Here is a good example nginx script.
-
Nginx upstream_response_time average per API route?
If not, https://github.com/google/mtail might be a good option.
-
Sorting a custom metric by multiple labels
Count the lines with mtail. You can regexp match the values out into labels.
-
Alternatives to ELK (filebeat, logstash, kibana, elasticsearch)
If you want to extract whitebox metrics from logs, maybe all you need is mtail.
-
Prometheus Custom Query/Metric based on STDOUT
You can use mtail (https://github.com/google/mtail) for this. You'll need to figure out how to plug it into your setup, but mtail will do the metrics from logs thing.
-
open-source tools to monitor JSON logs for unexpected patterns?
Convert your logs to metrics with mtail.
-
Server metrics monitoring and reporting for centos?
For nginx, you'll need to setup a log parser like mtail because it doesn't really have much for metrics to begin with.
prometheus-cpp
-
C++ Concurrency Model on x86 for Dummies
Rust does have some very cool mechanisms for safety, including in the presence of concurrency.
But this thread is generating blowback from someone saying: “slow down there with the hand-rolled atomic operations, you can hand-roll your multi-threaded locking strategy and it’ll be way safer at a modest cost!”
So, probably not the target audience for Rust ;)
I use a lot of C++ still because there are libraries I want and I have a significant investment in existing code, but I’d love to get to something more modern.
Hand-rolled atomics and load/store relaxation in application code make even seasoned C++ hackers a bit nervous: we saw this shit from business logic hackers at FB all the time and my colleague coined the term “aggressively intermediate” for the style.
I don’t mean to pick on the author of a quite good library (and it is quite good), but I ran across this the other day:
https://github.com/jupp0r/prometheus-cpp/blob/master/core/sr...
It’s correct (I think, very easy to be wrong about this sort of thing), but what are we measuring here where we can’t delegate that CAS into pthread? Branch mispredictions?
Either threads are fighting over whatever cache line that’s on (exclusive -> invalid -> exclusive -> invalid), or not. If they are, I’ve just deprived the scheduler of the opportunity to wake me up when the other 59 threads are done. If they’re not, I’ve maybe saved like one line in my L1.
And in something like a metrics library, you could be wrong for a very long time before someone pinned it down.
-
Debugging/optimizing/diagnostic tools for C++
Some metric collecting tool, for example, Prometheus and its client library for C++
-
Data Telemetry for Application Monitoring
You can use https://github.com/jupp0r/prometheus-cpp (your custom data) in combination with https://grafana.com/ that has plugins for things like cpu usage.
-
Dashboard for my C++ application
Grafana and Prometheus is what I’d use if you’re deploying this in Kubernetes. I haven’t used the C++ library, but generally you can just add a Prometheus client library (e.g. https://github.com/jupp0r/prometheus-cpp ) which makes it quite easy to instrument your application and expose metrics via HTTP. Then you need to configure Prometheus to scrape metrics from your application.
What are some alternatives?
loki - Like Prometheus, but for logs.
icinga2 - The core of our monitoring platform with a powerful configuration language and REST API.
Sloth - Mac app that shows all open files, directories, sockets, pipes and devices in use by all running processes. Nice GUI for lsof.
skywalking - APM, Application Performance Monitoring System
sloth - 🦥 Easy and simple Prometheus SLO (service level objectives) generator
Grafana - The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
scriggo - The world’s most powerful template engine and Go embeddable interpreter
prometheus - The Prometheus monitoring system and time series database.
lion - Where Lions Roam: RISC-V on the VELDT
node_exporter - Exporter for machine metrics
bloaty - Bloaty: a size profiler for binaries