Por que journalctl é produzido em ASCII?

2

Eu tenho uma VM regular do servidor Ubuntu 16.04. Minha localidade está configurada para utf-8 em todos os lugares:

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

Meu aplicativo está configurado para registrar ambos em seus próprios arquivos e na saída padrão, que é consumida no systemd-journald (todo o padrão). Mas quando a saída do meu aplicativo não é ASCII, o journalctl parece truncar para ASCII:

$ journalctl -u some.app --since "5 minutes ago"
Dec 01 14:37:57 some.hostname java[7037]: 2017-12-01 14:37:57.457 +0000 INFO : 
controllers.Users - Updating user: {"????":"???????","???????_???????_?????":"1","???????_???????_????_??????":"2","???????_???????_?????":"3"}

enquanto os logs do aplicativo e a saída que canalizei para um arquivo ao iniciar o aplicativo manualmente, contêm a saída codificada correta do UTF-8.

O que estou fazendo de errado? Por que journalctl parece produzir em ASCII?

    
por Rogach 01.12.2017 / 15:50

0 respostas