」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > CheckStat 是如何建立的:即時網站分析

CheckStat 是如何建立的:即時網站分析

發佈於2024-11-04
瀏覽:669

什么是 CheckStat

CheckStat 是我开发的一个项目,旨在帮助网站所有者、开发人员和分析师更好地了解其网络资源上发生的情况。该工具可让您实时跟踪访问者在您网站上的行为。分析这些统计数据可以帮助您做出更明智的决策并提高网站的性能。

1. 活动

在“活动”部分,您可以实时查看访问者在您网站上的活动。这可以让您全面了解谁现在在您的网站上、他们在做什么以及他们来自哪里。

How CheckStat was created: Real-time site analytics

  • 每个访问者都有独特的图标:您网站上的每个用户都由一个独特的图标表示,从而更容易识别他们。您可以为每个访问者自定义图标,选择并锁定特定图像。
  • 访问时间信息:根据您的时区显示访问者进入您网站的时间,这有助于将数据与网站上的本地活动或促销同步。
  • 访问计数:系统显示用户今天、本月以及总体访问网站的次数,帮助您衡量常规访问者的忠诚度和活动。
  • URL 和页面标题:每次访问时,都会显示他们正在查看的页面的 URL 和标题,帮助您了解哪些内容吸引了用户的注意力。
  • 地理位置:您可以查看访问者来自的国家、地区和城市。这对于分析受众的地理分布非常重要。
  • 用户活动:跟踪点击、鼠标移动、击键、传感器交互和滚动等参数,让您全面了解用户与您网站的互动情况。
  • 技术细节:系统提供有关用户的操作系统、浏览器、设备类型和屏幕分辨率的信息。这些数据有助于优化不同设备的内容和设计。
  • 流量来源:您可以查看访问者来自哪里(例如搜索引擎、社交网络或其他网站),帮助您评估营销活动的有效性。

此外,在“活动”部分中,您可以激活过滤器以仅显示与该网站互动的活跃用户。这使您可以专注于与您的内容最相关的用户。

默认启用自动刷新,新的访问会以动画实时显示。此功能可帮助您立即对网站上的更改做出反应,例如在促销或营销活动期间。

2. 统计

“统计”部分旨在进行更深入的分析。在这里,您可以收集和分析任何时期的数据,而不仅限于标准时间间隔。

How CheckStat was created: Real-time site analytics

  • 主图表:主图表显示两行——所选时间段内的总浏览量和唯一访问者数。这可以帮助您快速评估网站活动在几天、几周或几个月内的变化情况。
  • 访客地图:世界地图可视化来自不同国家的访客数据。从白色(最少访客)到蓝色(最多访客)的颜色渐变可以轻松查看哪些区域带来的流量最多。
  • 参数分析:页面底部分块按国家、地区、城市、浏览器、操作系统和其他参数显示数据。您可以选择您感兴趣的参数并将其添加到过滤器中以仅查看您需要的信息。这个灵活的工具可帮助您完善分析并做出更准确的决策。

您还可以设置过滤器以包含或排除某些参数,并查看这如何影响整体统计数据。例如,您可以查看特定区域的用户如何与您的网站互动以及哪些页面最吸引他们。

3. 仪表板

“仪表板”是一个摘要面板,显示您网站当天的关键指标并跟踪过去 30 天内的变化。

How CheckStat was created: Real-time site analytics

  • 关键指标:面板显示独立访问者数量、总浏览次数、每位访问者的平均浏览次数以及平均会话持续时间。这些数据可帮助您快速评估网站的当前性能。
  • 活动图表:在仪表板上,您可以看到显示过去三个小时内用户活动的图表,以 10 分钟为间隔进行分组。这可以帮助您评估活动高峰期并确定您的网站访问量最大的时间。
  • 前 5 个关键参数:在这里,您将找到有关前 5 个国家/地区、操作系统、流量来源和设备类型的数据。这些数据可帮助您了解用户正在使用哪些设备和平台以及他们来自哪里。

“仪表板”是您可以快速全面了解网站上发生的情况的地方。

技术细节

CheckStat 使用现代技术构建,可确保高性能和可扩展性:

  • PHP:用于服务器端开发和应用逻辑处理的主要语言。
  • MySQL和Elasticsearch:MySQL用于可靠的数据存储,而Elasticsearch可以快速搜索和分析大量信息。
  • Kibana:与 Elasticsearch 集成的实时数据可视化工具。
  • Nginx:提供快速稳定访问站点的Web服务器。
  • JavaScript和AJAX:用于在客户端创建动态和交互式元素。
  • UAParser.js 和 current-device:用于识别设备及其特征的库。
  • ApexCharts 和 ECharts:用于创建用于数据可视化的图表和图形的工具。
  • vanilla-datetimerange-picker:一个方便选择日期范围的库,让用户端的分析更加方便。

这些技术帮助 CheckStat 快速处理大量数据并提供实时分析。

使用案例

CheckStat 是一款真正有助于改进您的网站的工具。使用方法如下:

  • 监控用户操作:在“活动”部分,您可以实时查看访问者在您网站上的行为。谁进来了,他们正在查看哪些页面,他们来自哪里,他们正在使用什么设备和浏览器 - 一切都在那里。这对于了解人们如何与您的内容互动以及他们可能在哪些方面失去兴趣非常有用。
  • 过滤和分析数据:在“统计”中,您可以设置过滤器以仅查看您需要的信息。例如,您可以按特定区域或流量来源选择数据,并排除不需要的数据。这可以帮助您专注于真正重要的事情。
  • 优化内容:使用“活动”和“统计”中的数据,您可以识别哪些页面受欢迎并对其进行改进。如果您发现人们在某些页面上花费了大量时间,则可能值得向其中添加更多有用的内容。
  • 分析流量来源:CheckStat 显示您的访问者来自哪里 - 无论是搜索引擎、社交网络还是直接条目。这可以帮助您了解哪些渠道效果最好以及在哪里投入更多精力。

这些示例展示了 CheckStat 如何帮助您了解网站上发生的情况并使其变得更好。

关于开发商

CheckStat 是在乌克兰开发的,当时乌克兰面临持续战争和因能源基础设施损坏而导致周期性断电的严峻条件。尽管存在这些挑战,该项目还是成功完成并继续发展。

结论

CheckStat 是一款专为那些想要更好地了解用户并改善网站的用户而设计的工具。它使您可以轻松跟踪站点活动、分析关键指标并做出数据驱动的决策。尝试一下 CheckStat,亲眼看看它有多么方便和有用。

站点链接:CheckStat.net

版本聲明 本文轉載於:https://dev.to/filmovtv/how-checkstat-was-created-real-time-site-analytics-3h7d?1如有侵犯,請聯絡[email protected]刪除
最新教學 更多>
  • 大批
    大批
    方法是可以在物件上呼叫的 fns 數組是對象,因此它們在 JS 中也有方法。 slice(begin):將陣列的一部分提取到新數組中,而不改變原始數組。 let arr = ['a','b','c','d','e']; // Usecase: Extract till index ...
    程式設計 發佈於2024-11-18
  • 如何在 PHP 中組合兩個關聯數組,同時保留唯一 ID 並處理重複名稱?
    如何在 PHP 中組合兩個關聯數組,同時保留唯一 ID 並處理重複名稱?
    在 PHP 中組合關聯數組在 PHP 中,將兩個關聯數組組合成一個數組是常見任務。考慮以下請求:問題描述:提供的代碼定義了兩個關聯數組,$array1 和 $array2。目標是建立一個新陣列 $array3,它合併兩個陣列中的所有鍵值對。 此外,提供的陣列具有唯一的 ID,而名稱可能重疊。要求是建...
    程式設計 發佈於2024-11-18
  • 在 Go 中使用 WebSocket 進行即時通信
    在 Go 中使用 WebSocket 進行即時通信
    构建需要实时更新的应用程序(例如聊天应用程序、实时通知或协作工具)需要一种比传统 HTTP 更快、更具交互性的通信方法。这就是 WebSockets 发挥作用的地方!今天,我们将探讨如何在 Go 中使用 WebSocket,以便您可以向应用程序添加实时功能。 在这篇文章中,我们将介绍: WebSoc...
    程式設計 發佈於2024-11-18
  • 如何在JQuery AJAX中同時傳送FormData和字串資料?
    如何在JQuery AJAX中同時傳送FormData和字串資料?
    在JQuery AJAX 中同時發送FormData 和字串資料處理涉及文件上傳的表單時,需要將文件資料與附加資料結合起來用於提交到伺服器的字串資料。以下是如何在JQuery AJAX 中使用FormData() 來實現此目的:使用檔案和字串資料建立FormData:// Create a new ...
    程式設計 發佈於2024-11-18
  • 為什麼 Go 中的 http.Request 類型使用指標?
    為什麼 Go 中的 http.Request 類型使用指標?
    瞭解http.Request中的指標要求在Go程式語言中,指針對於有效處理大型結構至關重要。 http.Request 類型表示傳入的 HTTP 請求,是這種結構的一個主要範例。 在 Go 的語法中,指標是一種儲存另一個值的位址的資料類型。當參數透過指標傳遞時,函數內對該參數所做的任何變更都會全域反...
    程式設計 發佈於2024-11-18
  • 如何在 Chrome 實驗功能中使用 JavaScript 從瀏覽器連接到 TCP 套接字?
    如何在 Chrome 實驗功能中使用 JavaScript 從瀏覽器連接到 TCP 套接字?
    使用JavaScript 從瀏覽器連接到TCP 套接字當您尋求在瀏覽器的JavaScript 和.NET 應用程式託管的TCP 套接字之間在建立雙向通訊時,目前的Web 技術格局提出了挑戰。 到目前為止,流行的瀏覽器缺乏 JavaScript 的標準化套接字 API。然而,有希望的進展正在發生。允許...
    程式設計 發佈於2024-11-18
  • 如果 Go 函數發生緊急情況,如何回傳錯誤?
    如果 Go 函數發生緊急情況,如何回傳錯誤?
    從Go 中的Defer 返回您遇到了這樣的問題:如果Go 中的函數發生緊急情況,您希望返回錯誤。這是對您的程式碼的分析和修復:func getReport(filename string) (rep report, err error) { rep.data = make(map[strin...
    程式設計 發佈於2024-11-18
  • Bootstrap 4 Beta 中的列偏移發生了什麼事?
    Bootstrap 4 Beta 中的列偏移發生了什麼事?
    Bootstrap 4 Beta:列偏移的刪除和恢復Bootstrap 4 在其Beta 1 版本中引入了重大更改柱子偏移了。然而,隨著 Beta 2 的後續發布,這些變化已經逆轉。 從 offset-md-* 到 ml-auto在 Bootstrap 4 Beta 1 中, offset-md-*...
    程式設計 發佈於2024-11-17
  • 如何有效調試 Python 程式碼:實用技巧和工具
    如何有效調試 Python 程式碼:實用技巧和工具
    Python 調試:實用技巧與工具Python 調試:實用技巧與工具在對Python 程式碼進行故障排除時,擁有一個可供使用的調試技術工具包至關重要。以下是一些非常有效的技巧:PDB:強大的斷點工具import pdb a = "a string" pdb.set_trace()...
    程式設計 發佈於2024-11-17
  • 如何在不重新啟動伺服器的情況下清除MySQL查詢快取?
    如何在不重新啟動伺服器的情況下清除MySQL查詢快取?
    在不恢復伺服器的情況下減輕MySQL 查詢快取儘管MySQL 查詢快取提供了更高的效能,但在需要時可能會發生這種情況可以在不中斷伺服器運行的情況下進行清除。以下是實現此目的的一些方法:重置查詢快取如果執行命令的使用者俱有重新載入權限,則可以使用以下命令明確刪除查詢快取指令:RESET QUERY C...
    程式設計 發佈於2024-11-17
  • MySQL 如何處理表名和列名的區分大小寫?
    MySQL 如何處理表名和列名的區分大小寫?
    MySQL 中列名和表名的大小寫敏感度MySQL 中的大小寫敏感度主題可能會讓許多用戶感到困惑。了解列名和表名的大小寫敏感度對於確保正確的資料庫操作和避免潛在的陷阱至關重要。 表名表名是否區分大小寫取決於在執行 MySQL 伺服器的作業系統上。在基於 Unix 的系統(例如 Linux)上,表名稱區...
    程式設計 發佈於2024-11-17
  • 為什麼將常數引用綁定到臨時物件會延長其生命週期?
    為什麼將常數引用綁定到臨時物件會延長其生命週期?
    為什麼將常數引用綁定到臨時物件會延長臨時物件的生命週期? C 程式語言允許常數引用來延長臨時物件的生命週期。這種行為一直是許多爭論的主題,有些人認為它可以提高程式碼設計的效能和靈活性。 這種語言功能的起源可以追溯到 1993 年,當時它被提議作為以下問題的解決方案:綁定到引用時臨時變數的處理不一致。...
    程式設計 發佈於2024-11-17
  • 如何在共享主機的子目錄中託管 Laravel 專案而不在 URL 中暴露“/public”
    如何在共享主機的子目錄中託管 Laravel 專案而不在 URL 中暴露“/public”
    在共享主機上託管 Laravel 專案時,一個常見的挑戰是確保 URL 不需要 /public 目錄。這是在子目錄中託管 Laravel 應用程式同時保持 URL 乾淨的逐步指南。 第 1 步:將 Laravel 專案上傳到伺服器 登入您的託管帳戶並存取您的文件管理器。 導覽至 ...
    程式設計 發佈於2024-11-17
  • 程式設計面試中解決問題的終極指南
    程式設計面試中解決問題的終極指南
    Common Strategies for Coding Interview Questions Two Pointers The two pointers technique is often used to solve array-related problem...
    程式設計 發佈於2024-11-17
  • 為什麼 ASAP (Atlassian) Auth 是 REST API 驗證的快速且安全的選擇?
    為什麼 ASAP (Atlassian) Auth 是 REST API 驗證的快速且安全的選擇?
    作为一名广泛使用 API 的高级开发人员,安全性和效率始终是重中之重。在保护 REST API 方面,有多种身份验证方法可用,但并非所有方法都是相同的。 Atlassian 的 ASAP(服务和项目身份验证)Auth 作为一个强大、可扩展且安全的选项而脱颖而出,特别是在处理需要强大身份验证机制的...
    程式設計 發佈於2024-11-17

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3