jmx_exporter
cadvisor
Our great sponsors
jmx_exporter | cadvisor | |
---|---|---|
8 | 44 | |
2,896 | 16,323 | |
1.5% | 1.5% | |
8.0 | 8.0 | |
7 days ago | 3 days ago | |
Java | Go | |
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.
jmx_exporter
-
Prometheus JMX Exporter for Java17
not quite sure if this is where I should be asking for help but i'm kind of befuddled about this whole situation. I'm trying to set up https://github.com/prometheus/jmx_exporter for our containerized Java application on our cluster. Specifically the JavaAgent as we are interested in getting the CPU and memory metrics especially. However, getting it initialized I am faced with this:
-
Initial setup
Prometheus doesn't deal with logs at all - only metrics. Even just for metrics, you have several different choices depending on how your Java application is running. You may be able to use the JMX Exporter to expose the metrics that you would then scrape with Prometheus. For the logs, you'll need something like Fluent Bit as an agent to grab ('tail' in Fluent Bit input terms) the logs and send them to Elasticsearch or Grafana Loki.
- Pod log monitoring
- Monitor Java application with prometheus
-
What kind of monitoring tools are people using for their Kafka Deployment?
- https://github.com/prometheus/jmx_exporter - https://github.com/lightbend/kafka-lag-exporter (Export Kafka Topics Lag Metrics) - https://github.com/danielqsj/kafka_exporter (Export Kafka Metrics) - https://github.com/obsidiandynamics/kafdrop (Topic Administration tool - create/edit/delete topics & view messages)
-
Kafka monitoring
Usually I use a javaagent that transforms the JMX metrics into prometheus style metrics, for example: https://github.com/prometheus/jmx_exporter/blob/116a1c4b3fafcfbb9e566b34e130ccc805f331fc/example_configs/kafka-0-8-2.yml
-
Do you use Tomcat ? How to you get optimal performance of it?
Another good one is to add the jmx_exporter agent plugin. This allows easy collection of real-time performance metrics.
-
Kafka Connect: The Magic Behind Mux Data Realtime Exports
In our case, we add sink connectors for AWS Kinesis and Google Cloud PubSub. We also add a Prometheus exporter JAR that scrapes the Kafka Connect JMX metrics and exposes them as Prometheus metrics.
cadvisor
-
List of your reverse proxied services
cAdvisor
-
Need Recommendation: btop like web page for docker
https://github.com/google/cadvisor exports Prometheus metrics, but also offers a simple web-ui for container metrics.
-
Exporters running, just not in prometheus?
version: '3' volumes: prometheus-data: driver: local grafana-data: driver: local services: prometheus: image: prom/prometheus:latest container_name: prometheus ports: - "9090:9090" volumes: - /etc/prometheus:/etc/prometheus - prometheus-data:/prometheus restart: unless-stopped command: - "--config.file=/etc/prometheus/prometheus.yml" grafana: image: grafana/grafana:latest container_name: grafana ports: - "3000:3000" volumes: - grafana-data:/var/lib/grafana restart: unless-stopped node_exporter: image: quay.io/prometheus/node-exporter:latest container_name: node_exporter command: - '--path.rootfs=/host' pid: host restart: unless-stopped volumes: - '/:/host:ro,rslave' cadvisor: # TODO: latest tag is not updated, check latest release https://github.com/google/cadvisor/releases image: gcr.io/cadvisor/cadvisor-arm:v0.47.0 container_name: cadvisor ports: - "8080:8080" network_mode: host volumes: - /:/rootfs:ro - /var/run:/var/run:ro - /sys:/sys:ro - /var/lib/docker/:/var/lib/docker:ro - /dev/disk/:/dev/disk:ro privileged: true restart: unless-stopped depends_on: - redis redis: image: redis:latest container_name: redis ports: - "6379:6379"
-
Prometheus JMX Exporter for Java17
For CPU and memory metrics, you can use cAdvisor to collect container level data.
-
Docker Monitoring Solution?
Perhaps https://github.com/google/cadvisor + prometheus (or influx or whatever else) + grafana?
- How to monitor container exit codes?
-
Building a realtime performance monitoring system with Kafka and Go
We could have used a much more focussed tool like Prometheus or Cadvisor to gather system stats, but that is not the main objective of this article.
-
Can ChatGPT Debug and Fix your Docker and Kubernetes Issues?
Result: Interestingly, the GitHub Issue that talks about cAdvisor and Docker Desktop for Mac for running cAdvisor is still open and not fixed.
-
Looking for an open source monitoring solution that will capture specific process info
If you're running things under systemd, you can enable process accounting and use cAdvisor.
-
How to identify docker containers names? The names do not match those in the CLI after typing "docker ps"
Check this thread if you’re having difficulties, but it might run out of the box these days: https://github.com/google/cadvisor/issues/1846
What are some alternatives?
Telegraf - The plugin-driven server agent for collecting & reporting metrics.
node_exporter - Exporter for machine metrics
kafka-lag-exporter - Monitor Kafka Consumer Group Latency with Kafka Lag Exporter
kube-state-metrics - Add-on agent to generate and expose cluster-level metrics.
kafka_exporter - Kafka exporter for Prometheus
Netdata - The open-source observability platform everyone needs
container-jfr - Secure JDK Flight Recorder management for containerized JVMs
Zabbix - Real-time monitoring of IT components and services, such as networks, servers, VMs, applications and the cloud.
exporterhub.io - A Curated List of Prometheus Exporters
Portainer - Making Docker and Kubernetes management easy.
kafdrop - Kafka Web UI
prometheus - The Prometheus monitoring system and time series database.