В работе сервера BNComplex все получаемые данные протоколируются, в соотвествии с настройками для каждой службы, входящей в состав ПО BNComplex. Настройка логирования службВсе протоколы представляют из себя текстовые файлы, обычно с расширением log (не обязательно), с помощью которых службы сообщают о своей работе пользователю. Логи фактически являются единственным способом общения программы с администратором и содержат массу полезной информации. Для каждой службы ведение логов настраивается отдельно в соотвествущем каталоге службы в файле ini, имя которого совпадает с именем соотвествующей службы (TerminalGate.ini, LoggerService.ini и т.п.). Указание данных о логах производится в группе [Comon] Вот типовой пример: [Common]
Log Name=C:\BNComplex\Logs\TermGate.log
Firmware Log Name=C:\BNComplex\Logs\TermGateFirmware.log
Log Size=10485760
Unbuffered Log=1
Port Number=6101
Flags Dir=C:\BNComplex\CfgFlags
Config Flag Name=TermGateCfg.flg
Debug=5
Logger IP=127.0.0.1
Logger Port=7001
ID For Logger=3
Application=BN Terminal Gate
В данном случае в первой строке указано Log Name имя файла логов, однако далее стоит указание, что в качестве сервера логов используется адреc Logger IP=127.0.0.1 и порт Logger Port=7001, что говорит об использовании для логирования службы LoggerService на данном комьютере. Для идентификации типа лога используется ID For Logger=3 В случае подобного указания, нужно смотреть настройку службы LoggerService на данном компьютере (Logger IP=127.0.0.1) Рассмотрим блок из файла LoggerService.ini [Log ID 3] Log Path=C:\BNComplex\Logs\TCPGate\TCP%y%m%d.log Alert Name=tcpg Net ID=TCPGate Max Size=31457280
как видим, в качестве файла логов используется шаблон "C:\BNComplex\Logs\TCPGate\TCP%y%m%d.log". При этом, указание "%y%m%d" будет заменено на год, месяц, и число записи в лог. Т.е. если лог пишется от слуюбы 19.01.2011, то этому будет соотвествовать файл C:\BNComplex\Logs\TCPGate\TCP110119.log (более подробно читайте в документации службу логирования BNComplex) параметр Max Size=31457280 указывает на максимальный размер данного файла. При этом, более старые данные в файле будут "вытесняться" из него более новыми. Так же мы видим настройку Debug=5, что указывает на уровен глубины ведения логов - чем больше стоит число для данного параметра - тем больше информации сохраняется в логах и тем более они детальные. Однако, слишком большие уровни могут создавать увеличенную нагрузку на дисковую систему.
Формат логов служб.Логи службРассмотрим структуру лога, на примере службы TCPGate 18/01/2011 00:15:32.093 (I) Main: Accepting incoming connection 18/01/2011 00:15:32.093 (I) Main: Accepted with thread ID=035CD9C0 18/01/2011 00:15:32.093 (I) 035CD9C0: Received [AFFF2205000001E0FA]:2 18/01/2011 00:15:32.093 (I) 035CD9C0: IMSI: [0250016157] 18/01/2011 00:15:32.093 (I) 035CD9C0: Login request from [00170000] ver.293 18/01/2011 00:15:32.093 (I) 035D5050: Device established new connection. This connection begin closing 18/01/2011 00:15:32.593 (I) Main: Delete closed connection thread ID=035D5050 18/01/2011 00:15:32.671 (I) 035CD9C0: Received [AFFF2110041]:1 18/01/2011 00:15:32.671 (I) 035CD9C0: Received [AFFF22045A0289A9FA]:2 18/01/2011 00:15:32.671 (I) 035CD9C0: Data from [00170000]
Каждая строка начинается с указания времени сервера (причем, время по Гринвичу GMT+0), далее обычно идет указание на тип сообщения, ID потока, или Main, доветочие, и собственно самое сообщение. Когда к серверу присоединяется новый прибор - создается новый поток с определенным ID. Далее все данные идентифицируются именно данным ID Main: Accepted with thread ID=035CD9C0 - принято нове соединение, с присвоенным ID=035CD9C0 18/01/2011 00:15:32.093 (I) 035CD9C0: IMSI: [0250015660006157] - вывод кода IMSI для потока ID=035CD9C0 Если для прибора уже есть окрытый поток, то он будет закрыт Main: Delete closed connection thread ID=035D5050 - закрытие потока ID=035D5050 Полученные данны указываются в квадратных скобках [] (Received [AFFF22045A0289A9FA]:2) Так же в квадратных скобках указываются серийные номера АТ (Login request from [00170000] ver.293; Data from [00170000])
Логи координат
В отдельном файле сохраняются логи координат отовсех приборов, что передают свои данные на сервер Обычно данные файлы имеют расширение *.log, настройка сохренния их так же выполняется в службе LoggerService в блоке [Log ID 0]. Пример. [Log ID 0] Log Path=C:\BNComplex\Logs\PosLogs\%y%m%d.log
В данном случае видно, что файлы будут сохраняться в каталоге C:\BNComplex\Logs\PosLogs\ с именем состоящем из года, месяца и числа.
Формат строк данных файлов несколько отличается от формата прочих данных. 00160000|18-01-11 00:05:23|18-01-11 00:07:14||30.655812|20.413057|0|116|-256|-1|820|144.800|-273.0|-273.0|-273.0|-273.0|18-01-2011 00:07:14.812 где: 00160000 - серийный номер АТ 18-01-11 00:05:23 - время данных от прибора (GMT+0) 18-01-11 00:07:14 - время обработки данных от АТ сервером (когда данные поступили на сервер) (GMT+0) || - признак, что дальше идут данные от АТ 30.655812|20.413057 - широта и долгота - координаты 0 - "мгновенная скорость" 116 - направление-азимут -256 - флаг, что данные получены данные из черного ящика абонетского терминала (для реальных данных -1) далее данные касаются показаний датчиков в конеце указано более точно время сервера.
Итоги:
Для каждой службы в файле ini производится настройка пути сохранения и имени файла логов, глубины логирования данных, используется ли для логирования специальная служба (обычно да, но не обязательно). В имени файла логов может быть указание на дату. Есть два основных формата логов: 1. Логи служб - указано время записи GMT+0, тип записи, содержание записи 2. Логи координат - номер АТ, время от АТ, время получения сервером данных, координаты, скорость, направление, данные от датчиков.
Так же читайте:
Дополнительное ПО для BNComplex (часть 1) - Поиск строк в логах
|