Страница 1 из 1

Кодировка в логе Exim4

Добавлено: 27 окт 2016, 05:17
Rayman24
Всем привет. Реализовал следующее, для того чтобы все пересылаемые вложения отображались в логе Exim:

Код: Выделить всё

warn  
log_message = Attachment. Content-type=$mime_content_type, filename=$mime_filename
accept
Но если отправлять вложения на русском языке, то в mainlog падает следующее:

Код: Выделить всё

Warning: Attachment: content-type=text/plain, filename=\321\204\320\260\320\271\320\273.txt
Что нужно изменить в конфиге чтобы кодировка изменилась? Я так понимаю это utf-8^8. Вложения на латинеце отображаются нормально.

Re: Кодировка в логе Exim4

Добавлено: 27 окт 2016, 10:17
Olej
Rayman24 писал(а):

Код: Выделить всё

warn  
log_message = Attachment. Content-type=$mime_content_type, filename=$mime_filename
accept
Но если отправлять вложения на русском языке, то в mainlog падает следующее:

Код: Выделить всё

Warning: Attachment: content-type=text/plain, filename=\321\204\320\260\320\271\320\273.txt
Что нужно изменить в конфиге чтобы кодировка изменилась? Я так понимаю это utf-8^8. Вложения на латинеце отображаются нормально.
Да, это похоже на UTF-8 - 4 буквы.
Но для того, чтобы понять что вы видите, хорошо бы:

Код: Выделить всё

$ locale
...
И то, чем и где (терминал, консоль) вы это смотрите.
Да и в каком из журналов:

Код: Выделить всё

[olej@dell RoboCraft]$ ps -A | grep 'journal'
24985 ?        00:00:00 systemd-journal
[olej@dell RoboCraft]$ ps -A | grep 'logd'
  964 ?        00:00:00 rsyslogd

Re: Кодировка в логе Exim4

Добавлено: 27 окт 2016, 12:35
Rayman24
Olej писал(а):
Rayman24 писал(а):

Код: Выделить всё

warn  
log_message = Attachment. Content-type=$mime_content_type, filename=$mime_filename
accept
Но если отправлять вложения на русском языке, то в mainlog падает следующее:

Код: Выделить всё

Warning: Attachment: content-type=text/plain, filename=\321\204\320\260\320\271\320\273.txt
Что нужно изменить в конфиге чтобы кодировка изменилась? Я так понимаю это utf-8^8. Вложения на латинеце отображаются нормально.
Да, это похоже на UTF-8 - 4 буквы.
Но для того, чтобы понять что вы видите, хорошо бы:

Код: Выделить всё

$ locale
...
И то, чем и где (терминал, консоль) вы это смотрите.
Да и в каком из журналов:

Код: Выделить всё

[olej@dell RoboCraft]$ ps -A | grep 'journal'
24985 ?        00:00:00 systemd-journal
[olej@dell RoboCraft]$ ps -A | grep 'logd'
  964 ?        00:00:00 rsyslogd
смотрю в терминале, /var/log/exim4/mainlog
в текстовом редакторе тоже такая же картина

Re: Кодировка в логе Exim4

Добавлено: 27 окт 2016, 13:12
Olej
Rayman24 писал(а): смотрю в терминале, /var/log/exim4/mainlog
в текстовом редакторе тоже такая же картина
а locale?

Re: Кодировка в логе Exim4

Добавлено: 28 окт 2016, 05:37
Rayman24
Olej писал(а):
Rayman24 писал(а): смотрю в терминале, /var/log/exim4/mainlog
в текстовом редакторе тоже такая же картина
а locale?
Вот

Код: Выделить всё

# locale
LANG=ru_RU.UTF-8
LANGUAGE=
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=

Re: Кодировка в логе Exim4

Добавлено: 28 окт 2016, 21:12
Olej
Rayman24 писал(а): Вот
Тогда может оказаться, что ваш Exim - это та редкая программа, которая не умеет работать с UNICODE. :-o

Но проверьте и то, как ваша система логирования работает с UTF-8, что-то типа такого:

Код: Выделить всё

[olej@dell lsd2_old.hist]$ logger --stderr 'русский текст'
<13>Oct 28 21:00:35 olej: русский текст

[olej@dell lsd2_old.hist]$ logger 'русский текст'

[olej@dell c]$ journalctl --since="2016-10-28 21:00:00" --until="2016-10-28 23:59:59" 
-- Logs begin at Пт 2016-04-22 12:18:30 EEST, end at Пт 2016-10-28 21:01:01 EEST. --
окт 28 21:00:35 dell.localdomain olej[27870]: русский текст
...

Re: Кодировка в логе Exim4

Добавлено: 01 ноя 2016, 11:08
Rayman24
Olej писал(а):
Rayman24 писал(а): Вот
Тогда может оказаться, что ваш Exim - это та редкая программа, которая не умеет работать с UNICODE. :-o

Но проверьте и то, как ваша система логирования работает с UTF-8, что-то типа такого:

Код: Выделить всё

[olej@dell lsd2_old.hist]$ logger --stderr 'русский текст'
<13>Oct 28 21:00:35 olej: русский текст

[olej@dell lsd2_old.hist]$ logger 'русский текст'

[olej@dell c]$ journalctl --since="2016-10-28 21:00:00" --until="2016-10-28 23:59:59" 
-- Logs begin at Пт 2016-04-22 12:18:30 EEST, end at Пт 2016-10-28 21:01:01 EEST. --
окт 28 21:00:35 dell.localdomain olej[27870]: русский текст
...
в /etc/exim4/exim4.conf прописал

Код: Выделить всё

 print_topbitchars = true
в итоге заработало.

Re: Кодировка в логе Exim4

Добавлено: 01 ноя 2016, 14:18
Olej
Rayman24 писал(а):в итоге заработало.
Спасибо, что вы уделяете время и описываете решение после того, как оно найдено.

Кодировка в логе Exim4

Добавлено: 30 окт 2017, 18:25
Uncectnots
Всем доброго времени суток. Вопрос следующий, необходимо чтобы вся почтавхисх копировалась на ящик админа для контроля.
В конфиге Exim в секции begin routers добавил роутер:

Код: