Comments (8)
Btw, I have confirmed that queue_metrics_metrics_collector
is running via erlang:process_info(erlang:whereis(queue_metrics_metrics_collector))
when this issue happens, as well as double-checked that rabbit_queue
Mnesia table is tracking the correct pids for queue processes.
from prometheus_rabbitmq_exporter.
One interesting fact worth mentioning is that the problem goes away if the node gets restarted once or twice. This makes me believe that there is some sort of a race condition, maybe prometheus_rabbitmq_exporter
is preventing a rabbitmq process registering correctly?
from prometheus_rabbitmq_exporter.
If it's a race then my first guess would be that prometheus scrapes before backend initialized properly by rabbit itself but you say everything is alive.
So how I can reproduce this exactly? I'm sure I've restarted node with this plugin enabled but I never noticed what you describing here. Maybe I wasn't looking at the right place...
from prometheus_rabbitmq_exporter.
@gerhard maybe we can arrange access for @deadtrickster to a one-off BOSH-managed deployment that reproduces the issue?
from prometheus_rabbitmq_exporter.
I've tried to reproduce this but couldn't yet, still trying.
I'm running 5 instances of perf-test 2.1.0 using the following flags: --uris amqp://USER:PASS@IP:5672/%2F --size 1000 --interval 60 --consumers 100 --producers 100 --auto-delete false --flag persistent --confirm 10 --confirm-timeout 30 --qos 1 --queue-pattern %d --queue-pattern-from 1 --queue-pattern-to 20 --queue-args x-max-length=1000 --rate 2 --consumer-rate 1
Attaching rabbitmqctl report: rabbitmqctl_report.log. In this case, I'm using 10 instances of perf-test, but I could reproduce the issue with just 5 instances of perf-test initially.
from prometheus_rabbitmq_exporter.
What should I see in rabbtmqctl_report.log? What I've spotted:
- app envs,
- conns,
- channels,
- exchanges,
- queues.
from prometheus_rabbitmq_exporter.
This is not a prometheus
issue, but a race condition on RMQ boot steps. When collect_statistics
is set to none
and the management plugin is enabled, we force the collection at runtime by setting collect_statistics
to fine
in the management plugin boot steps. It seems that in some situations, this happens after the queues are started. We'll work on this issue.
from prometheus_rabbitmq_exporter.
Closing this since it's not related to prometheus_rabbitmq_exporter. Thank you!
from prometheus_rabbitmq_exporter.
Related Issues (20)
- Crash on "flow" queue state
- "flow" (or any other) state is not showing up in metrics & "connections_total_enabled" was set to "true". rabbitmq v3.8.8
- prometheus-rabbitme-exporter vs rabbitmq3.7.14 HOT 4
- label name "node" is not unique: invalid sample
- no case clause matching: {:plugin_module_unloadable} HOT 1
- Unable to filter results bases on queue param for rabbitmq_queue_messages
- Grafana dashboard for this exporter
- Crashing on scraping HOT 4
- Error running as exporter for helm chart
- Server Cowboy is not blacklisted
- Which plugin version should be used for Rabbit 3.7.17? HOT 1
- No stats for exchange to exchange bindings HOT 1
- prometheus_rabbitmq_exporter only running in one node HOT 1
- New config type HOT 3
- Update plugin for RabbitMQ Managment 3.8.0 HOT 5
- Message Rates per Queue HOT 1
- Detection partitions are not supported
- /api/metrics shows "Internal Server Error" HOT 1
- manual ack and auto ack
- Unable to fetch metrics from Rabbit exporter
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from prometheus_rabbitmq_exporter.