forum.bitel.ru
http://forum.bitel.ru/

[6.2] Знаки вопросов вместо текста в логах
http://forum.bitel.ru/viewtopic.php?f=22&t=11296
Страница 1 из 1

Автор:  spectrum [ 31 янв 2016, 21:50 ]
Заголовок сообщения:  [6.2] Знаки вопросов вместо текста в логах

Сервер и БД в кодировке UTF8. Но ошибки в логах вываливаются в виде знаков вопросов.

01-31/15:57:20 ERROR [http-bio-127.0.0.1-8080-exec-4] CommonExecutor - ru.bitel.bgbilling.common.BGException: ?????????? ?????: ?????????? ??????? ?????? ? ???????? ???????? ????????.
ru.bitel.bgbilling.common.BGException: ru.bitel.bgbilling.common.BGException: ?????????? ?????: ?????????? ??????? ?????? ? ???????? ???????? ????????.

В какую сторону копать?

Автор:  dimOn [ 31 янв 2016, 23:35 ]
Заголовок сообщения:  Re: [6.2] Знаки вопросов вместо текста в логах

В сторону локали ОС

Автор:  dimOn [ 31 янв 2016, 23:38 ]
Заголовок сообщения:  Re: [6.2] Знаки вопросов вместо текста в логах

я сейчас скажу "всегда показывайте весь текст из about"
потом вы выложите всё из about и там будет внизу в разделе окружение в сервере скорее всего "locale: en_US"
потом я скажу, надо сделать так, чтобы там было написано ru_RU

Автор:  spectrum [ 01 фев 2016, 01:38 ]
Заголовок сообщения:  Re: [6.2] Знаки вопросов вместо текста в логах

Да, действительно, а About:

Сервер:
os: Linux amd64, 3.10.0-229.11.1.el7.x86_64
java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_60
jre home: /opt/jdk1.8.0_60/jre
default tz: 31.01.2016 22:29 MSK +0300 (Europe/Moscow)
db time: 2016-01-31 22:29:15.0
locale: en_US


Хотя locale на сервере настроена русская:
Код:
$ locale
LANG=ru_RU.UTF-8
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=


locale.conf
Код:
LANG="ru_RU.UTF-8"


Где смотреть/править?

Автор:  Phricker [ 01 фев 2016, 02:20 ]
Заголовок сообщения:  Re: [6.2] Знаки вопросов вместо текста в логах

viewtopic.php?p=75732#p75732

Автор:  spectrum [ 01 фев 2016, 02:41 ]
Заголовок сообщения:  Re: [6.2] Знаки вопросов вместо текста в логах

Phricker писал(а):
http://forum.bitel.ru/viewtopic.php?p=75732#p75732

Не совсем понял. Вы отсылаете меня к установке переменной LC_ALL=? Насколько я знаю - это переменная нужна больше для отладки. Когда требуется для проверки задать ее в консоли. При ее задании переписываются все переменные LC_*. К слову ее в том же locale.conf задать нельзя, поскольку подразумевается, что она нужна только для отладки.

При выполнении локальных java-классов с консоли все по-русски в UTF-8 выводится без проблем.

UPD: добавил пока в стартовый скрипт сервера:
export LC_ALL="ru_RU.UTF-8"

Стало логи писать по-русски.
Какие есть варианты более правильного решения?

Автор:  dimOn [ 01 фев 2016, 12:03 ]
Заголовок сообщения:  Re: [6.2] Знаки вопросов вместо текста в логах

Цитата:
При выполнении локальных java-классов с консоли все по-русски в UTF-8 выводится без проблем.

Там другая система и вручную подразумевается utf-8 везде.
Цитата:
Какие есть варианты более правильного решения?

Это вопрос тёмный. Когда последний раз изучал вопрос и рылся в исходниках java - видел, что явным образом сначала пытается использоваться LC_ALL, и дальше на пустую установку разная реакция в разных окружениях. У кого-то работает, у кого-то нет. (upd ну тут по всей видимости, у тех у кого работает оно вместо пустого берёт тоже что-то относительно подходящую локаль с *.UTF-8)
Можете сами почитать, в инете множество информации, что LC_ALL используется в JVM напрямую (например гугл: LC_ALL java).
Так что пока считайте это правильным решением.
Я любитель правильных решений, мне можно тут поверить.

Автор:  spectrum [ 01 фев 2016, 17:24 ]
Заголовок сообщения:  Re: [6.2] Знаки вопросов вместо текста в логах

Понял, спасибо!

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/