[Moscow.pm] Mojo::Log и utf8
Grigory Batalov
grisxa на gmail.com
Вт Дек 11 02:08:25 PST 2012
В Mon, 10 Dec 2012 21:22:34 +0400
Akzhan Abdulin <akzhan.abdulin на gmail.com> пишет:
> А что мешает отдавать не потоки байт, а строки в utf8 в журнал?
Т.е. делать везде
utf8::decode($err) unless utf8::is_utf8 $err;
$log->warn($err);
?
> > Кто-нибудь сталкивался с кракозябами в логах 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