Возможно, я наткнулся на то, что кажется ошибкой с тем, как rabbitmqadmin обрабатывает (или фактически не обрабатывает) unicode.rabbitmqadmin не может обрабатывать unicode?
Если у меня есть очередь с символами юникода в имени очереди, команда rabbitmqadmin завершится с UnicodeEncodeErrors.
Я запускаю RabbitMQ 3.6.6 на Mac, установленный через Homebrew. И команда администратора, и сервер имеют одинаковую версию.
шаги, как воспроизвести проблему с именем очереди:
- Создание очереди с юникода в нем: «rabbitmqadmin имя очереди объявляют = ööö».
- Список очереди: 'rabbitmqadmin списка очереди'
Выходное:
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)
У меня есть аналогичные проблемы с 'rabbitmqadmin получить очереди =', когда полезная нагрузка сообщения содержит Юникод символ (ы).