You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

Все события, происходящие при работе кассового ПО, записываются программой в файлы журналов или лог-файлы, которые впоследствии можно использовать для анализа сбоев, получения статистики, расследования инцидентов. 

Лог – это текстовый файл, в котором каждому событию соответствует одна строка со временем и некоторыми дополнительными сведениями. Ведение лог-файлов позволяет восстановить картину неполадки либо последовательность действий, которая к ней привела. Для удобства пользователей лог-файлы размещаются в одной директории.

Для текущей смены лог-файлы сохраняются в директорию /linuxcash/logs/current.

Помимо лог-файлов сохраняются образы всех чеков, которые были закрыты в течении смены, а также журналы регистрации в ККМ сумм для данных документов.

  • Файлы с образами чеков сохраняются в директорию /linuxcash/logs/current/documents и именуются по правилу <номер_смены>-<номер_чека>.img, здесь номер_смены - номер текущей смены, номер_чека - номер завершенного чека.
  • Журналы регистрации сохраняются в директорию /linuxcash/logs/current/trs и именуются как <номер_чека>.<метка_времени>, здесь - номер_чека - номер завершенного чека, метка_времени - текущее время на момент начала регистрации в ККМ в формате unixtime.
ДиректорияСодержимое
documentsОбразы закрытых чеков
trsЖурнал регистрации в ККМ текущего документа (файл присутствует, если произошло аварийное завершение работы программы во время печати чека)
trs/commitedЖурналы успешно зарегистрированных документов в ККМ
trs/canceledЖурналы документов, которые не были зарегистрированы в ККМ
trs/criticalЖурналы регистрации в ККМ, содержащие критические ошибки, возникшие при регистрации

Для упрощения разбора информации "задним" числом при закрытии смены выполняется ротация директорий с лог-файлами. Таким образом, для каждой смены в каталоге /linuxcash/logs/cashlogs создается директория, название которой соответствует номеру смены. 

Уровень детализации записей в лог-файлах

Правила ведения логов, события, которые подлежат записи, их подробность и полнота задаются в файле /linuxcash/cash/conf/Artix/artix.conf. Используемая подсистема ведения логов позволяет гибко настраивать виды журналов, объединять данные в один файл, распределять данные по нескольким файлам или выводить информацию в консоль. После установки кассового ПО логирование всех модулей осуществляется по умолчанию на уровне INFO. Запись логов ведется в несколько файлов. Наиболее важные из них:

ФайлОписание
terminal.logОсновной лог-файл кассовой программы, содержит большинство информации о процессе работы

frdriver.log

Лог драйвера фискального регистратора
scale.logЛог драйвера прикассовых весов
reader.logЛог драйвера считывателя

Допускается использование одного из уровней: 

  • TRACE, 
  • DEBUG, 
  • INFO,
  • WARN,
  • ERROR.

Самый детальный уровень называется TRACE, самый строгий - ERROR. В зависимости от выбранного уровня в лог записывается информация, которая соответствует уровню, или строже.

УровеньОписание
ERRORОшибка в приложении, приложение может работать дальше без возникновения проблем, причина проблемы может состоять в неправильных входных данных или доступе к внешним сервисам
WARNНекритичная ошибка, приложение может работать дальше без возникновения проблем, вероятно одна из функций приложения дала сбой, который может быть исправлен
INFOВажная информация о работе приложения, например, запуск/остановка приложения, использование конфигурационных файлов или аутентификация пользователя в системе
DEBUGОтладочная информация работы приложения, например, технические данные, полученные при работе с внешними системами, или информация о вызове методов объектов, включая список параметров
TRACEТрассировка выполнения приложения, например, информация о вызываемых методах и времени их работы, информация о времени вызова внешних сервисов.

Для изменения уровня детализации достаточно установить требуемый уровень первым параметром требуемого логгера.

Пример настройки записи информации в файл terminal.log
Properties\log4j.appender.term=org.apache.log4j.FileAppender
Properties\log4j.appender.term.file=/linuxcash/logs/current/terminal.log
Properties\log4j.appender.term.appendFile=true
Properties\log4j.appender.term.layout=org.apache.log4j.TTCCLayout
Properties\log4j.appender.term.layout.DateFormat=ISO8601
Properties\log4j.additivity.terminal=false
Properties\log4j.logger.terminal="INFO, term"

Ротация данных после закрытия смены

Запуск процесса ротации файлов осуществляется после закрытия смены при помощи shell-скрипта /linuxcash/cash/bin/oncloseshift.sh, выполнение которого настраивается через макрос «Закрытие смены», как вызов внешнего скрипта.

За реорганизацию файлов отвечает модуль artix-maint-mysql. Журналы событий за текущую смену переименовываются в соответствии с правилами ротации, заданными в разделе shiftly.

Остановка работы кассы при ошибке логирования 

Начиная с версии 4.6.105 кассовая программа приостанавливает функционирование в случае прекращения записи в любой из логов, которые пишет сама касса, до устранения неполадок.

Остановка логирования при работе кассы - серьезная проблема, она может быть следствием прекращения правильной работы кассы. Такие ситуации возможны при непредвиденном отключении электроэнергии в процессе функционирования кассы, а также при проблемах с комплектующими.

При возникновении ошибки, связанной с прекращением логирования, программа остановит работу и выдаст сообщение:

Необходимо восстановить возможность логирования данных, после чего нажать ОК - программа перезапустится в нормальном режиме.

 

  • No labels