rabbitmq 日志文件大小设置_RabbitMQ消息队列(四)-服务详细配置与日常监控管理...

本文详细介绍了RabbitMQ的服务管理,包括启动、停止、查看状态和管理插件的命令。同时,重点讲解了RabbitMQ的配置文件`rabbitmq.config`的位置和作用,如何设置内存阈值以及权限管理。还提到了通过`rabbitmqctl`工具进行虚拟主机、用户、权限的管理操作,并介绍了RabbitMQ的日志文件位置。最后,提到了使用WEB管理插件进行图形化管理。
摘要由CSDN通过智能技术生成

RabbitMQ服务管理

启动服务:rabbitmq-server -detached【 /usr/local/rabbitmq/sbin/rabbitmq-server -detached 】

查看状态:rabbitmqctl status

关闭服务:rabbitmqctl stop

列出角色:rabbitmqctl list_users

开启某个插件:rabbitmq-pluginsenable xxx

关闭某个插件:rabbitmq-pluginsdisablexxx

注意:重启服务器后生效。

RabbitMQ服务详细配置rabbitmq.config

RabbitMQ 提供了三种方式来定制服务器:

环境变量

定义端口,文件位置和名称(接受shell输入,或者在环境配置文件(rabbitmq-env.conf)中设置)。

配置文件

为服务器组件设置权限,限制和集群,也可以定义插件设置(rabbitmq.config)。

运行时参数和策略

可在运行时进行修改集群设置。

下面我会介绍通过配置文件rabbitmq.config来配置rabbitmq。

rabbitmq.config 的位置

这些文件的位置分布特定的. 默认情况下,这些文件是没有创建的,但每个平台上期望的位置如下:

Generic UNIX - $RABBITMQ_HOME/etc/rabbitmq/Debian- /etc/rabbitmq/RPM- /etc/rabbitmq/Mac OS X (Homebrew)- ${install_prefix}/etc/rabbitmq/, the Homebrew prefix is usually/usr/local

Windows- %APPDATA%\RabbitMQ\

通过WEB管理插件我们也可以看到该配置文件的地址:

rabbitmq.config 配置

我的是在/usr/local/rabbitmq/etc/rabbitmq/rabbitmq.config,rabbitmq.config配置文件允许配置RabbitMQ 核心程序, Erlang 服务和RabbitMQ 插件。它是标准的Erlang 配置文件。RabbitMQ在找不到配置文件的情况下会按照默认的配置运行。在系统提示的位置新建这个文件:

touch /usr/local/rabbitmq/etc/rabbitmq/rabbitmq.config

如下是我常用到的rabbitmq.config配置文件的信息,意思是RabbitMQ内存阈值最大可用使用我系统40%的内存,超过40%开始拒绝生产消息,当内存使用率达到阈值的40%时开始持久化到磁盘。0.4也是官方建议的值,我曾经为了性能把该值设置成0.8,内存稍一波动整个服务就崩溃了。

[

{rabbit, [{vm_memory_high_watermark_paging_ratio,0.4},

{vm_memory_high_watermark,0.4}]}

].

通过rabbitmqctl管理RabbitMQ

virtual_host管理

新建virtual_host: rabbitmqctl add_vhost xxx

撤销virtual_host:rabbitmqctl delete_vhost xxx

用户管理

新建用户:rabbitmqctl add_user usernamexxx pwdxxx

删除用户:rabbitmqctl delete_user usernamexxx

改密码: rabbimqctl change_password {username} {newpassword}

设置用户角色:rabbitmqctl set_user_tags {username} {tag ...}

Tag可以为 administrator,monitoring, management

权限管理

rabbitmqctl set_permissions -p / username ".*" ".*" ".*" //添加权限

rabbitmqctl set_user_tags username administrator //修改用户角色

权限设置说明:rabbitmqctl set_permissions [-pvhostpath] {user} {conf} {write} {read}

Vhostpath:Vhost路径。

user:用户名。

Conf:一个正则表达式match哪些配置资源能够被该用户访问。

Write:一个正则表达式match哪些配置资源能够被该用户读。

Read:一个正则表达式match哪些配置资源能够被该用户访问。

获取服务器状态信息

获取服务器状态:rabbitmqctl status

关闭应用:rabbitmqctl stop_app

启动应用,和上述关闭命令配合使用,达到清空队列的目的:rabbitmqctl start_app

清除所有队列:rabbitmqctl reset

查看所有队列信息:rabbitmqctl list_queues

获取队列信息:rabbitmqctl list_queues[-p vhostpath] [queueinfoitem ...]

Queueinfoitem可以为:name,durable,auto_delete,arguments,messages_ready,messages_unacknowledged,messages,consumers,memory。

获取Exchange信息:rabbitmqctllist_exchanges[-p vhostpath] [exchangeinfoitem ...]

Exchangeinfoitem有:name,type,durable,auto_delete,internal,arguments。

获取Binding信息:rabbitmqctllist_bindings[-p vhostpath] [bindinginfoitem ...]

Bindinginfoitem有:source_name,source_kind,destination_name,destination_kind,routing_key,arguments。

获取Connection信息:rabbitmqctllist_connections [connectioninfoitem ...]

Connectioninfoitem有:recv_oct,recv_cnt,send_oct,send_cnt,send_pend等。

获取Channel信息:rabbitmqctl list_channels[channelinfoitem ...]

Channelinfoitem有consumer_count,messages_unacknowledged,messages_uncommitted,acks_uncommitted,messages_unconfirmed,prefetch_count,client_flow_blocked。

RabbitMQ消息队列WEB管理工具

目前处于技术癌早期,所以一般能图形化还是要尽量图形化的。RabbitMQ自带的消息队列管理插件就非常不错

浏览器打开HTTP://IP:15672

最上侧的导航以此是:《概览》、《连接》、《信道》、《交换机》、《队列》、《用户管理》

RabbitMQ日志文件

通过日志文件方便我们定位很多问题,同样在WEB管理插件中可以看到日志文件的路径,我的是在/usr/local/rabbitmq/var/log/rabbitmq/,在该路径下有两个日志文件:rabbit@localhost.log和rabbit@localhost-sasl.log。saal(System Application Support libraries 系统应用支持库)用来记录Erlang相关的信息,举例来说可以通过这个文件看到Erlang的崩溃报告。

另外也可以通过绑定监听amq.rabbitmq.log交换机来订阅日志信息来实现更多功能。

转自:https://blog.csdn.net/super_rd/article/details/70327503

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值