Во фреймворке предусмотрен единый механизм логирования действий пользователей. Журнал действий может быть использован, например, для статистического анализа действий пользователей приложения и выявления поведенческих факторов.
Журнал действий сохраняется в общую для всех приложений системную таблицу базы данных wa_log. В перечисленные
ниже поля таблицы журнала сохраняется следующая информация:
app_id— APP_ID приложенияcontact_id— идентификатор пользователя, совершившего действиеdatetime— дата и время совершения действияaction— строковый идентификатор (тип/название) совершенного действияcount— количество объектов, над которыми было выполнено действие (применяется при совершении групповых действий, например, массовое удаление записей)
Для подключения логирования действий необходимо:
-
Объявить в приложении список действий, которые должны логироваться. Для этого нужно создать конфигурационный файл
wa-apps/{APP_ID}/lib/config/logs.phpи перечислить в нём идентификаторы логируемых действий, например:<?php return [ 'contact_add' => [], 'contact_edit' => [], 'contact_delete' => [], 'contact_merge' => [], 'form_signup' => [], ]; -
В коде контроллеров и экшенов вызывать метод записи информации в журнал действий:
$this->log($action_name, $count);
Пример использования:
<?php
class StickiesStickyActions extends stickiesJsonActionsController
{
...
protected function addAction()
{
...
$this->log('sticky_add', 1);
...
}
...
}









