jasonmcintosh / rabbitmq-zabbix

Zabbix RabbitMQ Configuration
Apache License 2.0
251 stars 168 forks source link

partitions and unthorized problem #109

Open huangyonghome opened 4 years ago

huangyonghome commented 4 years ago

I have encountered two problems (seems a little bug) :

  1. Rabbitmq[server,partitions] monitor items

The zabbix server reports and clears an alarm frequently: image

I found the similar issues:https://github.com/jasonmcintosh/rabbitmq-zabbix/issues/85 But I don't think this problem is caused by Regular expressions . Because the alarm status is not regular but frequent jitter.

  1. Some times the zabbix server issued below errors (not always).
    urllib2.HTTPError: HTTP Error 401: Unauthorized" of type "string" is not suitable for value type "Numeric (unsigned)"

    image

I also found the similar issue:https://github.com/jasonmcintosh/rabbitmq-zabbix/issues/90

But the difference is:

A: I defined the administrator account in .rab.auth config file .(not monitoring account) B: I test manual on zabbix server and rabbitmq server , and I can get the correct values:

# test on zabbix server:
[work@server-4 ~]$ zabbix_get -s 10.111.30.164 -k rabbitmq[server,fd_total]
102400

#test on rabbitmq node
work@mq-es-node2:/etc/zabbix/scripts/rabbitmq$ /etc/zabbix/scripts/rabbitmq/rabbitmq-status.sh server fd_total
102400

Could you please help me fix this ? thank you very much

jasonmcintosh commented 4 years ago

This sounds like a more intermittent bug with rabbit's management API. Debugging auth on rabbit's side... well, that's a challenge and not sure got a good solution for you sadly. I've been out of this for a while so not sure how much I could help :( If it was a consistent problem, then yeah it is likely a configuration on the monitoring OR a bug in the monitoring code. Being intermittent makes that highly unlikely (unless you're removing & recreating the auth config file?) If it's server side, could be anything from a rate limit to a bug in rabbit to anything. I'd suggest adding debugging output to output the username it's using to connect and similar steps.