RabbitMQ日志无法禁用问题

 本文是转载的,  本文来源是:http://www.cnblogs.com/owenma/p/6962993.html

RabbitMQ日志无法禁用问题
最近使用spring+rabbitmq发现其Debug日志非常多,几天就把服务器磁盘弄爆了。

原来rabbitmq依赖logback.xml输出日志。 在和log4j.properties同目录下加一下logback.xml文件:

内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <logger name="org.springframework.amqp.rabbit.listener.BlockingQueueConsumer" level="WARN" />  
    <logger name="org.springframework.core.task.SimpleAsyncTaskExecutor" level="WARN" />      
</configuration>


重启服务,这样日志就不出了。
### RabbitMQ 无法访问 15672 端口的排查与解决方案 在 RabbitMQ 启动正常但无法访问 15672 端口的情况下,需要从多个维度排查问题。以下是一些可能的原因及对应的解决方案: #### 1. **RabbitMQ 插件未启用** 确保 RabbitMQ 的管理插件 `rabbitmq_management` 已启用。如果未启用,管理界面将无法访问。可以通过以下命令启用插件: ```bash rabbitmq-plugins enable rabbitmq_management ``` 插件启用后,重启 RabbitMQ 服务,并尝试通过 `http://<host>:15672` 访问管理界面 [^2]。 #### 2. **Docker 容器内外的网络配置问题** 如果使用 Docker 部署 RabbitMQ,需要确保端口映射正确,并且容器外部的网络配置允许访问 15672 端口。如果容器内可以访问但容器外无法访问,可能是 Docker 的网络桥接配置存在问题。可以尝试以下步骤重置 Docker 网络配置: ```bash # 停止 Docker 服务 systemctl stop docker # 安装 bridge-utils 工具包 yum install -y bridge-utils # 删除并重建 docker0 网桥 ip link set dev docker0 down brctl delbr docker0 brctl addbr docker0 ip addr add 172.16.10.1/24 dev docker0 ip link set dev docker0 up # 重启 Docker 服务 systemctl restart docker ``` 完成上述操作后,重新启动 RabbitMQ 容器并尝试访问 15672 端口 [^1]。 #### 3. **检查端口监听状态** 确认 RabbitMQ 是否正在监听 15672 端口。可以通过以下命令检查: ```bash netstat -tuln | grep 15672 ``` 如果没有监听,说明 RabbitMQ 可能没有正确启动或插件未生效。检查 RabbitMQ 日志文件以获取更多信息: ```bash journalctl -u rabbitmq-server.service ``` #### 4. **SELinux 或其他安全策略限制** 即使防火墙已关闭,SELinux 或其他安全策略仍可能阻止外部访问。可以通过以下命令临时禁用 SELinux 进行测试: ```bash setenforce 0 ``` 如果此时可以访问 15672 端口,则说明 SELinux 是问题的根源之一。可以考虑调整 SELinux 策略或永久禁用 SELinux。 #### 5. **RabbitMQ 配置文件限制** 检查 RabbitMQ 的配置文件(通常位于 `/etc/rabbitmq/rabbitmq.conf`),确认是否配置了限制访问的选项,例如 `management.listener` 配置项是否绑定到 `127.0.0.1` 而不是 `0.0.0.0`。如果仅绑定到本地回环地址,则外部无法访问。可以修改为: ```ini management.listener.ip = 0.0.0.0 ``` 修改后重启 RabbitMQ 服务 [^3]。 #### 6. **Docker 容器启动命令配置问题** 如果使用 Docker 启动 RabbitMQ 容器,确保启动命令中正确映射了 15672 端口。例如: ```bash docker run -d --hostname my-rabbit --name rabbitmq \ -p 5672:5672 -p 15672:15672 \ -e RABBITMQ_DEFAULT_USER=user \ -e RABBITMQ_DEFAULT_PASS=password \ rabbitmq:3-management ``` 确保 `-p 15672:15672` 参数存在,并且宿主机的 15672 端口未被其他服务占用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值