Aggregated product pages
1. Dataset Name
Aggregated Product Pages Performance
2. Description
Cross-page performance dataset that consolidates latency measurements for the highest-traffic recruiter surfaces into a single comparable log. It classifies each measurement into an endpoint_type - minimal vs. full profile page, positions pipeline (leads and applicants), positions home, community home, pipeline profile fields, and the profile data endpoints - by combining namespace, event, referrer, request endpoint and the arg_minimal request flag. Latency is exposed in both milliseconds and seconds.
3. Source Tables
- customer_views.www_server_log (single source table - no joins)
4. Grain
One row per latency measurement that maps to a recognised endpoint_type. Both page-level (pageInteractiveTime / componentInteractiveTime) and API-level (profile data endpoints) measurements coexist in the same table, so endpoint_type must always be part of the grouping.
5. Dashboards Supported
- Product Performance Dashboard - page and endpoint comparison
6. Metrics Supported
| Metric | Supported Breakdowns |
| Average / Median / p90 Latency | Endpoint type, page type, namespace, request endpoint, date |
| Measurement Volume | Endpoint type, namespace, date |
| Minimal vs. Full Profile Page Latency | Page type, request endpoint |
| Pipeline Page Latency | Leads vs. applicants (endpoint type), date |
| Slow Request Rate | Endpoint type (thresholded on latency_sec) |
7. Known Exclusions / Filters Applied
- Rows that do not map to one of the defined endpoint_type values are dropped - the dataset is an allowlist, not full coverage.
- Only navigationType 'initialVisit' and 'navigateFromAnotherPage' are counted, which means API-endpoint rows are also subject to a navigation-type filter that many of them will not carry. Validate volumes before trusting endpoint-level counts.
- Non-production hostnames (%dev%, eightfolddemo%, stage%, github-ci%) and bot interfaces are excluded; only response_code < 400 is counted.
- Rows with a null latency_milliseconds are excluded. Unlike the page_interactive_* datasets, there is no 30-second latency ceiling here, so outliers are retained and averages will run higher.
- Minimal vs. full profile classification depends on the arg_minimal request flag being present in json_data; requests that omit it default to 'full'.
- get_pipeline_profile_fields rows exclude request_path = '/vslog' to avoid double counting the logging call itself.
- latency_sec and latency_milliseconds are the same measure at different scales - do not chart both.
8. Schema
| Column Name | Data Type | Field Type | Notes |
| t_create | datetime | Dimension | Timestamp of the measurement; primary time axis |
| latency_sec | decimal | Measure | Latency in seconds (latency_milliseconds / 1000) |
| endpoint_type | varchar | Dimension | Classified surface: minimal_profile_page, full_profile_page, positions_pipeline_leads, positions_pipeline_applicants, positions_home_page, community_home_page, pipeline_profile_fields, minimal_profile_page_endpoints, full_profile_page_endpoints |
| group_id | varchar | Dimension | Tenant/customer scoping identifier |
| namespace | varchar | Dimension | Application namespace that emitted the event |
| event | varchar | Dimension | Measurement event (pageInteractiveTime or componentInteractiveTime) |
| request_endpoint | varchar | Dimension | Backend endpoint serving the request |
| request_path | varchar | Dimension | Request path |
| referrer | varchar | Dimension | Referrer URL of the request |
| latency_milliseconds | bigint | Measure | Latency in milliseconds; same measure as latency_sec at a different scale |
| navigation | varchar | Dimension | navigationType from the request payload (initialVisit / navigateFromAnotherPage) |
| component | varchar | Dimension | Component name for componentInteractiveTime measurements (e.g. profile_panel) |
| arg_wf_id | varchar | Dimension | Workflow identifier from the request payload |
| page_type | varchar | Dimension | 'Minimal Profile Page' or 'Full Profile Page' for profile data endpoints; null for page-level rows |