Просмотр Исходного

{toc}

{anchor:configure}
h1. Настройка доступа

{tip}*Время выполнения инструкции*: 5-10 минут{tip}

Для доступа к статистике посещённых Вашими абонентами ресурсов, необходимо создать администратора и группу с ограниченными правами:
# [Создайте группу "*sormgroup*"|CarbonBilling:Права доступа. Настройка прав доступа к биллингу. Настройка прав доступа к веб-интерфейсу#groupadd]
# [Создайте пользователя "*sorm*"|CarbonBilling:Права доступа. Настройка прав доступа к биллингу. Настройка прав доступа к веб-интерфейсу#useradd] в группе *"sormgroup"*
# [Разрешите группе "*sormgroup*" доступ в приложение|CarbonBilling:Управление модулями] "Управление абонентами и тарифами" (asr_billing)
# [Настройте группе "*sormgroup*" права|CarbonBilling:Права доступа. Настройка прав доступа к биллингу. Настройка прав доступа к веб-интерфейсу#grouppermissionssubscribers] к папкам "*Все*" и "*Служебная группа*"
# [Установите группе "*sormgroup*" разрешение|CarbonBilling:Права доступа. Настройка прав доступа к биллингу. Настройка прав доступа к веб-интерфейсу#grouppermissionsmodels] на чтение: модель "*Abonents*" -> "*Абоненты*", флаг "*Разрешить чтение*"
# [Добавьте учетную запись|CarbonBilling:Учетная запись. Создание и изменение.] пользователю "*sorm*"
# [Настройте нужные элементы в карточке абонента|CarbonBilling:Интерфейсы пользователей биллинга#setinterfaceelements]

{anchor:searchweb}
h1. Поиск в веб-интерфейсе

{tip}*Время выполнения инструкции*: от 1 до 15 минут, в зависимости от объёма статистики попадающей в ограничение поискового запроса{tip}

# Зайдите в учетную запись пользователя "*sorm*" \\ \\
!СОРМ.png|border=1,width=600! \\ \\
# Перейдите в раздел "*Детальная статистика*", откройте вкладку "*Подробно*", включите опцию "*По всем пользователям*", укажите IP-адрес нужного ресурса и нажмите "*Показать*" \\ \\
!sorm_user_rules.png|border=1,width=800!

{anchor:searchcli}
h1. Запросы из командной строки
Пример выборки кто ходил на адрес 8.8.8.8 в период с 03.12.2010 00.00 по 03.12.2010 23.59
{code}
chroot /app/collector
/usr/local/bin/bstat2xml -i 8.8.8.8 -t 1291334400-$((1291334400+24*3600)) -o /tmp/guvd.xml -u 1 -f
{code}
Для перевода даты 2018-10-29 10:50:00 часовой пояс UTC в unixtime используйте ниже приведенную команду или онлайн-конвертер
{code}
date -d "2018-10-29 10:50:00 UTC" +%s
{code}
Выборка будет находиться в файле /tmp/guvd.xml
В файле будут указаны user_id (id учетной записи абонента)
Для поиска абонента по данному user_id можно использовать отчёт в конструкторе отчётов следующего содержания:
{code}
select
a.name as "ФИО",
a.contract_number as "Договор"
from abonents a
left join users u on u.abonent_id=a.id
where u.id = (':user_id$')
{code}
Для вывода справки по утилите введите команду
{code}
chroot /app/collector /usr/local/bin/bstat2xml --help
{code}

h1. Особенности
* Детальная статистика хранится по часовому поясу UTC, а не по часовому поясу сервера. И в выборке как в web интерфейсе, так и из командной строки время нужно задавать по часовому поясу UTC.
Пример: Допустим нужно посмотреть статистику на 29.10.2018 14:20:32 часовой пояс Москва. По UTC это +3 часа, то есть 11:20:32. В командной строке запрос на перевод времени будет выглядеть:
{code}
date -d "2018-10-29 11:20:32 UTC" +%s
{code}
* Опция запуска -T изменяет формат даты на ISO 8601 yyyy-mm-ddThh:mm:ss.
{code}
bstat2xml -T
{code}
* В выгрузке детальной статистики объём указан в байтах. Пример:
{code}
<size>3369</size>
{code}
* Добавлена опция для отображения в результате запроса вместо ID логин абонента. Указываем в файле /app/asr_billing/cfg/config.
{code}
app['bstat_convert_logins']='1'
{code}