# Отчет по панели управления - Обобщенные просмотры страниц

**URL:** https://meta.discourse.org/t/dashboard-report-consolidated-pageviews/289263
**Category:** Data & reporting
**Tags:** sql-query, dashboard-reports, dashboard-sql
**Created:** [19.Декабрь.2023 23:49:06 UTC](https://meta.discourse.org/t/dashboard-report-consolidated-pageviews/289263 "2023-12-19T23:49:06Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![SaraDev](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/saradev/32/335139_2.png) [@SaraDev](https://meta.discourse.org/u/SaraDev)
#### Post date: [19.Декабрь.2023 23:49:07 UTC](https://meta.discourse.org/t/dashboard-report-consolidated-pageviews/289263/1 "2023-12-19T23:49:07Z")

</div>

Это SQL-версия отчета о сводном количестве просмотров страниц.

Этот SQL-отчет предоставляет ежедневный подсчет просмотров страниц от авторизованных пользователей, анонимных пользователей и поисковых роботов на сайте Discourse.

```sql
-- [params]
-- date :start_date
-- date :end_date

SELECT
    ar.date::date AS "date",
    SUM(ar.count) AS "Total Views",
    SUM(CASE WHEN ar.req_type=6 THEN ar.count ELSE 0 END) AS "Crawler Views",
    SUM(CASE WHEN ar.req_type=7 THEN ar.count ELSE 0 END) AS "Logged in User Views",
    SUM(CASE WHEN ar.req_type=8 THEN ar.count ELSE 0 END) AS "Anonymous User Views"
FROM application_requests ar
WHERE req_type IN (6,7,8)
    AND ar.date::date BETWEEN :start_date AND :end_date
GROUP BY date
ORDER BY date

```

### Пояснение к SQL-запросу

Запрос работает с таблицей `application_requests`, которая регистрирует различные типы запросов, отправляемых на форум. Он фокусируется на трех конкретных типах запросов, определяемых значениями `req_type`:

- `6`: Просмотры поисковыми роботами
- `7`: Просмотры авторизованными пользователями
- `8`: Просмотры анонимными пользователями

Ниже приведено пошаговое пояснение того, что делает запрос:

- **Параметры** : Запрос принимает два параметра — `:start_date` и `:end_date`, что позволяет пользователю указать диапазон дат для отчета. Оба параметра даты принимают формат `ГГГГ-ММ-ДД`.
- **Выборка** : Запрос выбирает дату запроса (`ar.date`) и приводит её к типу `date`. Также он вычисляет общее количество просмотров и разбивку по типам (поисковые роботы, авторизованные пользователи и анонимные пользователи) для каждой даты в указанном диапазоне.
- **Суммирование** : Он суммирует столбец `count` для каждого типа просмотра. Конструкции `CASE` используются для условного включения подсчетов в сумму на основе значения `req_type`.
- **Фильтрация** : Оператор `WHERE` фильтрует записи, включая только те, у которых значения `req_type` равны 6, 7 или 8, а даты попадают в указанный диапазон между `:start_date` и `:end_date`.
- **Группировка** : Запрос группирует результаты по дате, обеспечивая агрегацию подсчетов для каждого типа просмотра по дням.
- **Сортировка** : Результаты сортируются по дате, чтобы обеспечить хронологический просмотр трафика.

### Пример результатов

| date | Total Views | Crawler Views | Logged in User Views | Anonymous User Views |
| --- | --- | --- | --- | --- |
| 2023-11-18 | 5608 | 3052 | 565 | 1928 |
| 2023-11-19 | 9207 | 6564 | 470 | 2273 |
| 2023-11-20 | 6271 | 2631 | 1016 | 2924 |

---

<div class="post-metadata">

### Author: ![tyler.lamparter](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tyler.lamparter/32/485862_2.png) [@tyler.lamparter](https://meta.discourse.org/u/tyler.lamparter)
#### Post date: [22.Март.2025 16:20:05 UTC](https://meta.discourse.org/t/dashboard-report-consolidated-pageviews/289263/2 "2025-03-22T16:20:05Z")

</div>

@SaraDev Когда мы смотрим на нашу панель администратора, там отображается req\_type = 13 (page\_view\_anon\_browser) и 15 (page\_view\_logged\_in\_browser). Это ошибка? Есть ли какое-либо объяснение подтипов запросов? Например, я не понимаю, как какая-либо комбинация типов для авторизованных пользователей приводит к числу 705.

 ![image](https://global.discourse-cdn.com/meta/original/4X/a/a/2/aa2b03e3a1cfdd93205530d74ae70083efcf7e35.png)

 ![На изображении показана таблица со списком различных показателей по типам запросов: ID, дата, тип запроса и количество для каждой записи; выделены две конкретные записи. (Подпись сгенерирована ИИ)](https://global.discourse-cdn.com/meta/original/4X/c/e/5/ce5458a1606bc521f2af50d4ed7df323dbdb8c2b.png)

---

<div class="post-metadata">

### Author: ![SaraDev](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/saradev/32/335139_2.png) [@SaraDev](https://meta.discourse.org/u/SaraDev)
#### Post date: [24.Март.2025 20:34:11 UTC](https://meta.discourse.org/t/dashboard-report-consolidated-pageviews/289263/3 "2025-03-24T20:34:11Z")

</div>

> [@tyler.lamparter](#):
>
> Есть ли какое-либо объяснение типов подзапросов?

Поле `req_type` в `application_requests` соответствует следующим типам запросов приложения в Discourse:

1. http\_total
2. http\_2xx
3. http\_background
4. http\_3xx
5. http\_4xx
6. http\_5xx
7. page\_view\_crawler
8. page\_view\_logged\_in
9. page\_view\_anon
10. page\_view\_logged\_in\_mobile
11. page\_view\_anon\_mobile
12. api
13. user\_api
14. page\_view\_anon\_browser
15. page\_view\_anon\_browser\_mobile
16. page\_view\_logged\_in\_browser
17. page\_view\_logged\_in\_browser\_mobile

Вы также можете просмотреть эту информацию напрямую в [Data Explorer](https://meta.discourse.org/t/32566?silent=true), изучив [Таблицы базы данных и схему](https://meta.discourse.org/t/data-explorer-tutorial-part-2-discourse-sql-basics/277927#database-tables-3).

> [@tyler.lamparter](#):
>
> Это ошибка?

В сентябре 2024 года мы улучшили способ отслеживания и подсчета просмотров страниц. [Здесь объясняется, что изменилось](https://meta.discourse.org/t/understanding-pageview-tracking/324074).

Метрики, которые вы видите на своей панели управления, вероятно, используют новый метод «Трафик сайта» для отслеживания просмотров страниц. Соответствующий SQL-код для этого метода можно найти здесь: [Отчет панели управления — Трафик сайта](https://meta.discourse.org/t/dashboard-report-site-traffic/358667).

---

<div class="post-metadata">

### Author: ![tyler.lamparter](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tyler.lamparter/32/485862_2.png) [@tyler.lamparter](https://meta.discourse.org/u/tyler.lamparter)
#### Post date: [24.Март.2025 23:37:49 UTC](https://meta.discourse.org/t/dashboard-report-consolidated-pageviews/289263/4 "2025-03-24T23:37:49Z")

</div>

Спасибо, Сара. Запрос в теме [Dashboard Report - Site Traffic](https://meta.discourse.org/t/dashboard-report-site-traffic/358667) ответил на мой вопрос об использовании 13 и 15, а также на вопрос, почему 13 + 14 ≠ 8.
