Informe del Panel - Visitas a Páginas Consolidadas con Detección de Navegador

Este es una versión SQL del Informe del Panel para Vistas de Página Consolidada con Detección de Navegador.

Este informe del Explorador de Datos proporciona una vista de las vistas de página diarias del sitio con detección de navegador durante un rango de fechas especificado. Las vistas de página se clasifican en cuatro tipos:

  • Navegador conectado
  • Navegador anónimo
  • Rastreador conocido
  • Otras vistas de página
-- [params]
-- date :start_date
-- date :end_date

SELECT
  ar.date::date AS "date",
  SUM(CASE WHEN ar.req_type = 15 THEN count ELSE 0 END) AS "Navegador conectado",
  SUM(CASE WHEN ar.req_type = 13 THEN count ELSE 0 END) AS "Navegador anónimo",
  SUM(CASE WHEN ar.req_type = 6 THEN count ELSE 0 END) AS "Rastreador conocido",
  SUM(
    CASE WHEN ar.req_type = 8 THEN count
        WHEN ar.req_type = 7 THEN count
        WHEN ar.req_type = 13 THEN -count
        WHEN ar.req_type = 15 THEN -count
        ELSE 0
    END
  ) AS "Otras vistas de página"
FROM
  application_requests ar
WHERE
  ar.date::date >= :start_date
  AND ar.date <= :end_date
GROUP BY
  ar.date
ORDER BY
  ar.date ASC

Explicación de la consulta SQL

  • Parámetros:
    • :start_date - La fecha de inicio del informe.
    • :end_date - La fecha de fin del informe.
    • Ambos parámetros de fecha aceptan el formato de fecha YYYY-MM-DD.
  • Cláusula SELECT:
    • ar.date::date AS "date": Convierte el campo date a tipo fecha y lo etiqueta como “date”.
    • SUM(CASE WHEN ar.req_type = 15 THEN count ELSE 0 END) AS "Navegador conectado": Suma los recuentos donde req_type es 15, etiquetando el resultado como “Navegador conectado”.
    • SUM(CASE WHEN ar.req_type = 13 THEN count ELSE 0 END) AS "Navegador anónimo": Suma los recuentos donde req_type es 13, etiquetando el resultado como “Navegador anónimo”.
    • SUM(CASE WHEN ar.req_type = 6 THEN count ELSE 0 END) AS "Rastreador conocido": Suma los recuentos donde req_type es 6, etiquetando el resultado como “Rastreador conocido”.
    • SUM(CASE WHEN ar.req_type = 8 THEN count WHEN ar.req_type = 7 THEN count WHEN ar.req_type = 13 THEN -count WHEN ar.req_type = 15 THEN -count ELSE 0 END) AS "Otras vistas de página": Suma los recuentos de otros tipos de solicitudes, ajustando los recuentos para req_type 13 y 15 restándolos, y etiqueta el resultado como “Otras vistas de página”.
  • Cláusula FROM:
    • FROM application_requests ar: Especifica la tabla application_requests como la fuente de los datos, aliasándola como ar.
  • Cláusula WHERE:
    • ar.date::date >= :start_date AND ar.date <= :end_date: Filtra los registros para incluir solo aquellos donde la date se encuentra dentro del rango especificado de :start_date y :end_date.
  • Cláusula GROUP BY:
    • GROUP BY ar.date: Agrupa los resultados por el campo date para agregar los recuentos de cada día.
  • Cláusula ORDER BY:
    • ORDER BY ar.date ASC: Ordena los resultados en orden ascendente por el campo date.

Resultados

Los resultados de esta consulta proporcionarán un desglose diario de las vistas de página categorizadas por el tipo de navegador o rastreador. Cada fila en el conjunto de resultados contendrá:

  • date: La fecha específica.
  • Navegador conectado: El recuento total de vistas de página de usuarios conectados.
  • Navegador anónimo: El recuento total de vistas de página de usuarios anónimos.
  • Rastreador conocido: El recuento total de vistas de página de rastreadores conocidos.
  • Otras vistas de página: El recuento total de otros tipos de vistas de página.

Resultados de ejemplo

fecha Navegador conectado Navegador anónimo Rastreador conocido Otras vistas de página
2024-05-02 1238 1085 2727 3983
2024-05-03 1039 1068 5718 3958
2024-05-04 572 628 3847 3761
2024-05-05 447 551 2093 3773
2 Me gusta

Extraño. Obtengo cero para ambos navegadores. Solo se cuentan los bots.

¿El informe del panel de ‘Vistas de página consolidadas con detección de navegador’ también solo muestra bots?

¿Te refieres a esa experimental? Funciona y muestra todo muy bien.

Este informe se agregó a Discourse el 25 de abril de 2024 y no mostrará resultados para las vistas de Navegador conectado o Navegador anónimo anteriores a esta fecha.

Si faltan resultados para las vistas de Navegador conectado o Navegador anónimo después del 25 de abril de 2024, deberá actualizar su instancia de Discourse a la última versión.

Me preguntaba por qué el fragmento SQL no mostraba las vistas de los usuarios, solo de los bots. Y luego probé junio. Además, sí, mi instancia se actualiza como tres veces por semana :winking_face_with_tongue:

(Malditas sean estos teclados virtuales… demasiado fácil tocar en lugares equivocados :smirking_face: :man_facepalming:)

Pero reconstruí sin el explorador de datos y justo después con él, y los números aparecieron.

Por lo tanto, esto seguirá siendo otro caso de la zona crepuscular, supongo. ¿Podría ser posible algún problema de caché con SQL :flushed_face:?