[Moscow.pm] Mojo::Log и utf8

Grigory Batalov grisxa на gmail.com
Пн Дек 10 09:19:02 PST 2012


Всем привет!

Кто-нибудь сталкивался с кракозябами в логах mojo?
У меня это происходит следующим образом: система выдаёт ошибку,
я её ловлю и записываю в журнал. Предполагаю, что строка с ошибкой
является потоком байт, а mojo считает, что все строки - в utf8,
и записывает примерно так:

СеÑ<U+0082>Ñ<U+008C> недоÑ<U+0081>Ñ<U+0082>Ñ<U+0083>пна

И кто как справляется с этим? Не лишним ли будет использование
такой надстройки?

package My::Mojo::Log;

use base 'Mojo::Log';
use List::MoreUtils qw(apply);

sub warn {
    shift->SUPER::warn(  apply { utf8::decode($_) unless utf8::is_utf8 $_ } @_ )
}


Подробная информация о списке рассылки Moscow-pm