我可能偶然发现了一些似乎是关于rabbitmqadmin如何处理(或实际上不处理)unicode的错误。
如果我的队列在队列名中有unicode字符,则rabbitmqadmin命令将失败并显示UnicodeEncodeErrors。
我在Mac上运行RabbitMQ 3.6.6,通过Homebrew安装。 admin命令和服务器都是相同的版本。
步骤如何重现队列名称问题:
输出:
Traceback (most recent call last):
File "/usr/local/sbin/rabbitmqadmin", line 1007, in <module>
main()
File "/usr/local/sbin/rabbitmqadmin", line 413, in main
method()
File "/usr/local/sbin/rabbitmqadmin", line 588, in invoke_list
format_list(self.get(uri), cols, obj_info, self.options)
File "/usr/local/sbin/rabbitmqadmin", line 705, in format_list
formatter_instance.display(json_list)
File "/usr/local/sbin/rabbitmqadmin", line 716, in display
(columns, table) = self.list_to_table(json.loads(json_list), depth)
File "/usr/local/sbin/rabbitmqadmin", line 770, in list_to_table
add('', 1, item, add_to_row)
File "/usr/local/sbin/rabbitmqadmin", line 749, in add
fun(column, subitem)
File "/usr/local/sbin/rabbitmqadmin", line 756, in add_to_row
row[column_ix[col]] = str(val)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 12-13: ordinal not in range(128)
当消息有效负载包含unicode字符时,我遇到与'rabbitmqadmin get queue ='类似的问题。
答案 0 :(得分:1)