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

Лог выполнения скриптов поведения
http://forum.bitel.ru/viewtopic.php?f=19&t=5550
Страница 1 из 1

Автор:  Therin [ 01 июн 2011, 11:07 ]
Заголовок сообщения:  Лог выполнения скриптов поведения

Сегодня заметил, что почему-то вывод команды print c русским текстом в логах отображается ? (вопросами). С чем это может быть ? Есть подозрение что, что-то с кодировкой, но где именно найти не смог. Буквально пару дней назад все было нормально.

Вложения:
bg.png
bg.png [ 61.16 КБ | Просмотров: 11301 ]

Автор:  skyb [ 01 июн 2011, 12:28 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

у вас таблица создалась в latin ее нада создать в cp1251 на вики есть решение.

Автор:  Therin [ 01 июн 2011, 13:01 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Кодировка верная стоит.
Код:
mysql> SHOW CREATE TABLE log_function_process_201106;
+-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table                       | Create Table                                                                                                                                                                                                           |
+-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| log_function_process_201106 | CREATE TABLE `log_function_process_201106` (
  `cid` int(11) NOT NULL,
  `time` datetime NOT NULL,
  `title` varchar(250) NOT NULL,
  `data` text NOT NULL,
  KEY `cid` (`cid`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 |
+-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SHOW CREATE TABLE log_gscript_process_201105;
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table                      | Create Table                                                                                                                                                           |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| log_gscript_process_201105 | CREATE TABLE `log_gscript_process_201105` (
  `time` datetime NOT NULL,
  `title` varchar(250) NOT NULL,
  `data` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)


Автор:  Феанор [ 02 июн 2011, 12:25 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

up
Код:
+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table                      | Create Table                                                                                                                                                               |
+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| log_gscript_process_201106 | CREATE TABLE `log_gscript_process_201106` (
  `time` datetime NOT NULL,
  `title` varchar(250) NOT NULL,
  `data` longtext NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 |
+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)


ps не знаю связано с этим или нет, не было времени пока разобраться, но вчера пробовал скрипт по генерации счет фактур из вики и сегодня заметил что позиции созданные скриптом обзываются вопросиками.

Вложения:
Комментарий к файлу: позиции созданные скриптом тоже вопросиками почему-то =/
Снимок-3.png
Снимок-3.png [ 12.3 КБ | Просмотров: 11264 ]
Снимок-2.png
Снимок-2.png [ 70.99 КБ | Просмотров: 11270 ]

Автор:  restart [ 02 июн 2011, 17:40 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Посмотрите кодировку не таблицы с логами, а таблицы, где хранятся сами скрипты: global_script и script_function.

Автор:  Therin [ 03 июн 2011, 06:56 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Тоже все нормально с кодировкой.
Код:
mysql> SHOW CREATE TABLE global_script;
+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table         | Create Table                                                                                                                                                                                                                                                                                                                      |
+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| global_script | CREATE TABLE `global_script` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) DEFAULT NULL,
  `script` text,
  `user_id` int(11) NOT NULL,
  `change_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=cp1251 |
+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SHOW CREATE TABLE script_function;
+-----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table           | Create Table                                                                                                                                                                                                                                                                                                                                                                                                           |
+-----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| script_function | CREATE TABLE `script_function` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `script_id` int(11) NOT NULL DEFAULT '0',
  `title` varchar(100) NOT NULL DEFAULT '',
  `code` text,
  `user_id` int(11) NOT NULL,
  `change_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `script_id` (`script_id`)
) ENGINE=MyISAM AUTO_INCREMENT=17 DEFAULT CHARSET=cp1251 |
+-----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

Автор:  Феанор [ 03 июн 2011, 07:34 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

аналогично
Код:
| global_script | CREATE TABLE `global_script` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) DEFAULT NULL,
  `script` text,
  `user_id` int(11) NOT NULL,
  `change_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=cp1251 |


Клиент: вер. 5.1 сборка 511 от 28.04.2011 19:00:59
os:Linux; java:Sun Microsystems Inc., v.1.6.0_22
Сервер: вер. 5.1 сборка 641 от 16.05.2011 21:23:46
os:SunOS; java:Sun Microsystems Inc., v.1.6.0_24


ps вот переменные бд кстати на всякий случай сразу
Код:
mysql> use bgbilling
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show variables like '%char%';
+--------------------------+----------------------------------+
| Variable_name            | Value                            |
+--------------------------+----------------------------------+
| character_set_client     | latin1                           |
| character_set_connection | latin1                           |
| character_set_database   | cp1251                           |
| character_set_filesystem | binary                           |
| character_set_results    | latin1                           |
| character_set_server     | latin1                           |
| character_set_system     | utf8                             |
| character_sets_dir       | /opt/local/share/mysql/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.00 sec)

Автор:  restart [ 03 июн 2011, 12:21 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Феанор писал(а):
ps не знаю связано с этим или нет, не было времени пока разобраться, но вчера пробовал скрипт по генерации счет фактур из вики и сегодня заметил что позиции созданные скриптом обзываются вопросиками.


Скрипт Вы используете отсюда?
Вот тут проблема:
Код:
XMLUtils.serialize(doc , os, "utf-8"); //ЗДЕСЬ ПРОБЛЕМА
String xml = os.toString();
InputStream is = new ByteArrayInputStream( xml.getBytes( "windows-1251" ) );


Исправьте вот так:
Код:
XMLUtils.serialize( doc, os, "Windows-1251" );
byte[] bytes = os.toByteArray();
ByteArrayInputStream is = new ByteArrayInputStream( bytes );

Автор:  restart [ 03 июн 2011, 12:23 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Therin, можете показать скриншот редактора этого скрипта? Там нормально все символы отображаются (в том участке кода, где идёт вывод через print)?

Автор:  Феанор [ 03 июн 2011, 12:35 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

restart писал(а):
Скрипт Вы используете отсюда?

Оп, ну я так и думал что там что-то с массивами байт и указанными кодировками, пробовал менять и сериалайз и в гетбайтс, но толку от этого не было (а времени разобраться не было, я проверял вообще генерация как проходит).
Как Вы подсказали - заработало, спасибо. Есть ли смысл в вики править?

Автор:  restart [ 03 июн 2011, 12:52 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Феанор писал(а):
Оп, ну я так и думал что там что-то с массивами байт и указанными кодировками, пробовал менять и сериалайз и в гетбайтс, но толку от этого не было (а времени разобраться не было, я проверял вообще генерация как проходит).
Как Вы подсказали - заработало, спасибо. Есть ли смысл в вики править?

Конечно есть.

Автор:  Therin [ 06 июн 2011, 08:49 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Скрины глобального скрипта и скрипта поведения.

Вложения:
bg_local.png
bg_local.png [ 150.55 КБ | Просмотров: 11211 ]
bg_global.png
bg_global.png [ 66.54 КБ | Просмотров: 11211 ]

Автор:  Therin [ 09 июн 2011, 10:13 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Есть ли еще варианты почему такое может происходить.

Автор:  Феанор [ 21 июн 2011, 07:54 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

ап

Автор:  Therin [ 07 авг 2011, 16:19 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Июль прошел нормально вроде, в логах все нормально. В августе таже беда вместо букв вопросы.

Автор:  stark [ 10 авг 2011, 13:24 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Therin писал(а):
Июль прошел нормально вроде, в логах все нормально. В августе таже беда вместо букв вопросы.


И опять с кодировкой в log_function_process_yyyyMM все нормально ?

Автор:  Therin [ 15 авг 2011, 13:16 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Все нормально.
Код:
mysql> SHOW CREATE TABLE log_function_process_201108;
+-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table                       | Create Table                                                                                                                                                                                                           |
+-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| log_function_process_201108 | CREATE TABLE `log_function_process_201108` (
  `cid` int(11) NOT NULL,
  `time` datetime NOT NULL,
  `title` varchar(250) NOT NULL,
  `data` text NOT NULL,
  KEY `cid` (`cid`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 |
+-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SHOW CREATE TABLE log_gscript_process_201108
    -> ;
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table                      | Create Table                                                                                                                                                           |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| log_gscript_process_201108 | CREATE TABLE `log_gscript_process_201108` (
  `time` datetime NOT NULL,
  `title` varchar(250) NOT NULL,
  `data` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SHOW CREATE TABLE global_script;
+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table         | Create Table                                                                                                                                                                                                                                                                                                                      |
+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| global_script | CREATE TABLE `global_script` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) DEFAULT NULL,
  `script` text,
  `user_id` int(11) NOT NULL,
  `change_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=cp1251 |
+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>  SHOW CREATE TABLE script_function;
+-----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table           | Create Table                                                                                                                                                                                                                                                                                                                                                                                                           |
+-----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| script_function | CREATE TABLE `script_function` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `script_id` int(11) NOT NULL DEFAULT '0',
  `title` varchar(100) NOT NULL DEFAULT '',
  `code` text,
  `user_id` int(11) NOT NULL,
  `change_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `script_id` (`script_id`)
) ENGINE=MyISAM AUTO_INCREMENT=18 DEFAULT CHARSET=cp1251 |
+-----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)



Автор:  Therin [ 27 сен 2011, 16:40 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

В сентябре таже беда с отображением логов выполнения. Начал перенос на 5.1, там тоже беда. Вот логи с базы от 5.1
Код:
mysql> SHOW CREATE DATABASE bgbilling
    -> ;
+-----------+----------------------------------------------------------------------+
| Database  | Create Database                                                      |
+-----------+----------------------------------------------------------------------+
| bgbilling | CREATE DATABASE `bgbilling` /*!40100 DEFAULT CHARACTER SET cp1251 */ |
+-----------+----------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SHOW CREATE TABLE log_function_process_201109;
+-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table                       | Create Table                                                                                                                                                                                                           |
+-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| log_function_process_201109 | CREATE TABLE `log_function_process_201109` (
  `cid` int(11) NOT NULL,
  `time` datetime NOT NULL,
  `title` varchar(250) NOT NULL,
  `data` text NOT NULL,
  KEY `cid` (`cid`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 |
+-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SHOW CREATE TABLE global_script;
+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table         | Create Table                                                                                                                                                                                                                                                                                                                      |
+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| global_script | CREATE TABLE `global_script` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) DEFAULT NULL,
  `script` text,
  `user_id` int(11) NOT NULL,
  `change_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=cp1251 |
+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SHOW CREATE TABLE script_function;
+-----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table           | Create Table                                                                                                                                                                                                                                                                                                                                                                                                           |
+-----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| script_function | CREATE TABLE `script_function` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `script_id` int(11) NOT NULL DEFAULT '0',
  `title` varchar(100) NOT NULL DEFAULT '',
  `code` text,
  `user_id` int(11) NOT NULL,
  `change_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `script_id` (`script_id`)
) ENGINE=MyISAM AUTO_INCREMENT=18 DEFAULT CHARSET=cp1251 |
+-----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> show variables like '%char%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | cp1251                     |
| character_set_connection | cp1251                     |
| character_set_database   | cp1251                     |
| character_set_filesystem | binary                     |
| character_set_results    | cp1251                     |
| character_set_server     | cp1251                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)


Есть ли какие-нить соображения или в скриптах вместо русского использовать латиницу ?

Автор:  stark [ 28 сен 2011, 11:10 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

При выполнении скрипта его вывод попадает в лог сервера . Там тоже "???" ?

Автор:  stark [ 28 сен 2011, 11:40 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

можете дать доступ ?

Автор:  Therin [ 28 сен 2011, 17:31 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

В логах сервера тоже ???.

Код:
root@bgbilling:/usr/local/BGBillingServer/log# tail -f server.log
09-28/18:28:31 DEBUG [http-8080-2] server - executing bitel.billing.server.script.global.action.ActionGetGlobalScriptLogs; time => 3 ms.
09-28/18:28:33 DEBUG [http-8080-2] server - executing bitel.billing.server.script.global.action.ActionGetGlobalScriptLogs; time => 1 ms.
09-28/18:28:46 DEBUG [http-8080-2] server - executing bitel.billing.server.admin.action.ActionCommand; time => 0 ms.
09-28/18:28:52 DEBUG [http-8080-2] script - Creating script machine for function: ????????? ??????
09-28/18:28:52 DEBUG [http-8080-2] ScriptInstance - Eval script ????????? ??????
09-28/18:28:52  INFO [http-8080-2] ScriptInstance - Invoke method ????????? ?????? : main
09-28/18:28:52  INFO [http-8080-2] script - Process time => 42
09-28/18:28:52  INFO [http-8080-2] script - ??? ???????? "????????? ????????" ?? ??????? ????: 2011-09-28

09-28/18:28:52 DEBUG [http-8080-2] server - executing bitel.billing.server.script.global.action.ActionExecuteScript; time => 44 ms.
================ TEST =================================
09-28/18:29:56 DEBUG [http-8080-2] server - executing bitel.billing.server.admin.action.ActionCommand; time => 0 ms.
09-28/18:29:58 DEBUG [http-8080-2] server - executing bitel.billing.server.script.global.action.ActionExecuteScript; time => 43 ms.
09-28/18:29:58 DEBUG [http-8080-2] script - Creating script machine for function: ????????? ??????
09-28/18:29:58 DEBUG [http-8080-2] ScriptInstance - Eval script ????????? ??????
09-28/18:29:58  INFO [http-8080-2] ScriptInstance - Invoke method ????????? ?????? : main
09-28/18:29:58  INFO [http-8080-2] script - Process time => 42
09-28/18:29:58  INFO [http-8080-2] script - ??? ???????? "????????? ????????" ?? ??????? ????: 2011-09-28

09-28/18:30:04 DEBUG [http-8080-2] server - executing bitel.billing.server.admin.action.ActionCommand; time => 1 ms.


Автор:  Mihail Dverin [ 29 сен 2011, 18:39 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Те же самые симптомы что и у автора, с возникшей у меня проблемой - viewtopic.php?f=19&t=5891

Автор:  snark [ 29 сен 2011, 22:05 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Therin писал(а):
В логах сервера тоже ???

Все же не стоит забывать, что кодировка логов зависит от
Код:
-Dfile.encoding

и если у Вас локаль в одной кодировке, а логи в другой (по дефолту 1251 ЕМНИМС), то Вы и будете видеть знаки вопроса.


P.S. Чтобы писало в UTF поставьте так:
Код:
-Dfile.encoding=UTF8

Автор:  Therin [ 04 окт 2011, 16:28 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

Опцию добавил, пока все нормально. Спасибо.

Автор:  Феанор [ 27 окт 2011, 09:11 ]
Заголовок сообщения:  Re: Лог выполнения скриптов поведения

мне тоже помогло )

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