整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          新手指南-如何監視Web應用程序?

          eb應用程序是指獨立且無需任何外部托管軟件即可運行的軟件。Web應用程序通常需要Web服務器將程序轉換為HTML內容以供Web瀏覽器使用,這樣Web應用程序就可以將服務直接提供給用戶。

          我們每天使用許多Web應用程序,例如會議工具,存儲管理軟件,源代碼控制程序(例如GIT),照片編輯工具等。Web應用無處不在,靈活便捷 ,并且省去了維護和擴展中央服務器的麻煩,但對于開發人員來說,為各種環境(包括之前和當前的OS或框架)提供有效支撐是一個巨大挑戰。而且向最終用戶交付Web應用程序需要對所有支持的框架,操作系統和版本進行嚴格的測試。


          在此文中,我們將重點關注監視托管獨立應用程序(即使用.NET框架開發的Web應用程序)中遇到的挑戰。


          作為獨立的應用程序開發人員,最大的挑戰來自性能問題。如果您在應用程序中遇到高內存或高CPU消耗的情況,則可能需幾天時間復現此問題,更不用說找到根本原因并加以解決了。最重要的是,很難鼓勵面臨這些問題的用戶繼續使用有問題的應用程序,因為他們傾向于不報告所遇到的問題,而是嘗試重新啟動該應用程序,直到其正常工作即可。如果無法實現,這些用戶通常最終會放棄使用該應用。


          使用應用程序監視工具,不僅使您能夠在開發階段解決這些問題,而且還可以幫助您發現有關不同測試方案下的應用程序行為的大量信息,并找到需要調整應用程序代碼的區域。這是應用程序性能監視優勢所在。


          監視獨立應用程序

          使用應用程序性能監視(APM)解決方案,您可以監視功能級別的性能,跟蹤最耗時的實例,甚至借助自定義工具來跟蹤工作流。由于每個獨立的應用程序都有其獨特的方式,因此您的APM解決方案需要針對您的應用程序的特定需求進行定制。

          以下是一些有關如何使用APM工具跟蹤托管獨立應用程序性能的準則:

          1.執行應用程序的基本流程時,會自動捕獲諸如Apdex得分,響應時間和流量之類的標準指標。這可以幫助您了解線程和事件在應用程序進程中所花費的時間,并指出哪些代碼段消耗了更多的內存和CPU。

          2.使用自定義工具定義工作流程的開始和結束部分。使用自定義工具,您還可以監視關鍵功能的性能。

          3.使用異常和錯誤跟蹤功能來跟蹤問題的根本原因。APM工具通常會在發生錯誤時捕獲整個堆棧,通過立即查找有問題的代碼來節省開發人員寶貴的時間,因此開發人員可以專注于調試。


          例如,如果您正在開發從后臺不斷從Web服務收集數據的報告軟件,則監視工具可以幫助您跟蹤應用程序何時關閉,從而提示您立即采取行動。對于所有類型的應用程序而言,無論它們是Web應用程序還是移動應用程序,性能監控都是必不可少的。使用Site24x7,您可以監視Web應用程序的性能,并定制監視方法以適合相關應用程序的特定需求。

          在產品的開發和運營過程中我們經常會遇到一些問題,如用戶反饋說無法對某某商品下單,而另一位負責運營的同事也提到某某廣告在手機上打不開。

          盡管這些問題被多次報告,但我們卻難以復現這些故障,這讓團隊感到十分棘手。

          如何有效地記錄項目中的錯誤并能夠重現這些問題,正是我們需要通過監控平臺來解決的關鍵痛點之一。

          WebTracing是一款專為前端項目量身定制的 JavaScript埋點 SDK,它提供了完善的前端監控手段和解決方案。通過集成行為追蹤、性能監測、異常捕獲、請求記錄、資源管理、路由監控、曝光分析以及錄屏功能,讓數據驅動決策變得更加直觀和高效。

          作者的目標是減輕前端開發者在監控方面的工作負擔。致力于為各種場景提供全面的解決方案,并希望開發者能從項目中獲得一些啟發。

          安裝

          // 核心實現包 - js
          pnpm install @web-tracing/core
          
          // vue2版本
          pnpm install @web-tracing/vue2
          
          // vue3版本
          pnpm install @web-tracing/vue3

          html 安裝

          <!DOCTYPE html>
          <html lang="en">
            <head>
              <meta charset="UTF-8">
              <meta http-equiv="X-UA-Compatible" content="IE=edge">
              <meta name="viewport" content="width=device-width, initial-scale=1.0">
              <title>Document</title>
            </head>
            <script src="https://cdn.jsdelivr.net/npm/@web-tracing/core"></script>
            <script>
              webtracing.init({
                appName: 'cxh',
                debug: true,
                pv: true,
                performance: true,
                error: true,
                event: true,
                cacheMaxLength: 10,
                cacheWatingTime: 1000,
                userUuid: 'init_userUuid',
                scopeError: true,
                ...
              })
            </script>
            <body></body>
          </html>

          Vue2 安裝

          import WebTracing from '@web-tracing/vue2'
          
          Vue.use(WebTracing, {
            dsn: '/trackweb',
            appName: 'cxh',
            ...
          })

          Vue3 安裝

          import WebTracing from '@web-tracing/vue3'
          
          app.use(WebTracing, {
            dsn: '/trackweb',
            appName: 'cxh',
            ...
          })

          介紹

          這里以作者提供的 Vue2示例項目來演示:

          地址:https://github.com/M-cheng-web/web-tracing-examples-vue2

          將示例項目 clone到本地安裝

          pnpm install
          pnpm run start

          開啟 node服務

          node server.js

          打開示例項目首頁

          image

          該項目是一個前端監控解決方案,它使用 Monorepo + pnpm 的構建方式,支持多包聯調和發版,并且提供鉤子函數、批量如何錯誤(去重)、抽樣發送、過濾等能力。

          配置項


          事件采集

          項目的基本原理包括自動和手動兩種采集方式,自動采集通過劫持或監聽瀏覽器事件來獲取錯誤、性能和頁面跳轉等信息;手動采集則是通過調用 SDK暴露的方法來觸發事件采集。

          image

          事件對象具體屬性如下:

          插件會根據 DOM元素上一些屬性來獲取需要采集該元素的事件,以及采集該元素事件時應該傳遞哪些參數


          事件示例

          <div
            class="box-div"
            data-warden-title="xxx"
            data-warden-bigTitle="bigTitle"
            width="100%"
          >
            示例div
          </div>

          點擊事件示例div產生如下對象

          {
            eventId: 'div',
            eventType: 'click',
            title: 'xxx',
            triggerPageUrl: 'http://localhost:6656/#/event',
            x: 280,
            y: 20,
            params: { bigtitle: "bigTitle" }
            elementPath: 'div',
            triggerTime: 1689726300399,
            sendTime: 1689726301406
          }

          錯誤采集

          頁面錯誤自動收集,主要原理是 監聽/劫持 error unhandledrejection console.error,采集這三類錯誤

          資源加載錯誤,代碼異常(error) promise調用鏈異常(reject) console.error異常

          image

          我們主動觸發了代碼錯誤,可以在控制臺看到的報錯,然后被 webTracing事件采集

          觸發錯誤事件時生成的對象


          將配置項中的 scopeError 設置為 true 可對錯誤事件去重。

          此外還包括資源監聽、路由采集、請求采集、資源采集、曝光采集,由于篇幅原因這里就不一一展開介紹,大家感興趣可以去官網自行查閱。

          image

          其他核心介紹

          數據流向方面,監聽到的事件會經過預處理并生成描述事件信息的對象,然后放入列表中等待統一發送。發送數據時,會根據最大緩存數和延遲發送事件時長的設置來決定何時發送數據,支持多種發送方式,包括 navigator.sendBeaconimageXML,以及本地化存儲和自定義發送方式。

          SDK還提供了豐富的導出項,包括鉤子函數和可動態更改的內部 options 對象,以方便開發人員自定義功能,如加密傳輸、發送事件后的提醒、配置項更改和獲取基礎數據等。

          此外,項目還定義了事件類型和事件ID的枚舉,以及用于標識用戶和細分業務的特殊標識,如 pageIdsessionIddeviceIdappNameappCode

          未來計劃

          作者提出會寫一套服務端(nest) + 后臺查看監控數據平臺(vue),有以下幾點考量

          提供服務端能力(目前只是在采集端發力) 可以在線體驗此項目 提供更多示例代碼給開發們,再次降低這一套代碼在公司的推廣難度 作者也想站在業務的角度多思考還能從哪些方面此項目還缺失哪些功能

          總結

          附上github地址:https://github.com/M-cheng-web/web-tracing

          我們了解到 WebTracing是一款優秀的埋點項目,并提供了多種監控手段,幫助我們對頁面交互和用戶操作進行分析。

          WebTracing提供了原生、Vue2Vue3等多種安裝方式供我們使用。

          它的主要功能包括事件采集、錯誤采集、路由采集、請求采集、資源采集、曝光采集等。

          oySSL官網 注冊碼230918

          實現網站的HTTPS安全訪問涉及到幾個關鍵步驟。HTTPS(超文本傳輸協議安全)通過SSL/TLS協議加密HTTP通信,確保數據在客戶端和服務器之間的傳輸安全。以下是將網站從HTTP升級到HTTPS的詳細步驟:

          1. 獲取SSL證書

          • 選擇證書類型:決定是否需要單域名、多域名或通配符證書。
          • 購買證書:從受信任的證書服務商購買SSL證書。一些知名的服務商包括JoySSL、DigiCert、GeoTrust等。
          • 生成CSR:在你的服務器上生成一個證書簽名請求(CSR),包含公鑰和相關信息。
          • 提交CSR:將CSR提交給CA,完成驗證過程。

          2. 驗證域名所有權

          • CA會通過電子郵件、DNS記錄或網頁文件等方式驗證你對域名的所有權。

          3. 安裝SSL證書

          • 下載證書:從服務商處下載SSL證書。
          • 安裝證書:將證書上傳到你的服務器,并按照服務器軟件(如Apache、Nginx、IIS等)的文檔進行安裝。

          4. 配置服務器

          • 修改配置文件:編輯服務器的配置文件,確保它使用HTTPS端口(通常為443)。
          • 重定向HTTP到HTTPS:設置規則將所有HTTP請求重定向到HTTPS,以確保安全性。

          5. 測試HTTPS設置

          • 使用SSL測試工具(如SSL Labs的Qualys SSL Labs測試)檢查你的HTTPS配置,確保沒有安全漏洞。

          6. 更新內部鏈接

          • 確保網站上的所有內部鏈接都使用HTTPS URL,避免混合內容警告。

          7. 測試網站功能

          • 在HTTPS環境下全面測試網站的功能,確保所有資源(如圖片、腳本、CSS等)都能正確加載。

          8. 更新外部引用

          • 如果有其他網站鏈接到你的網站,通知他們更新鏈接為HTTPS版本。

          9. 監控與維護

          • 定期檢查SSL證書的有效性,確保在到期前及時續訂。
          • 持續監控網站的安全狀態,及時響應任何安全問題。

          PC點此申請https證書:JoySSL_JoySSL SSL證書_JoySSL https證書-JoySSL

          注冊填寫注冊碼230918(填寫注冊碼獲得免費技術支持)

          請根據你使用的具體服務器和Web應用環境調整上述步驟。如果需要更詳細的指導,可以查閱特定服務器軟件的官方文檔。


          主站蜘蛛池模板: 亚洲福利视频一区二区| 亚洲一区二区三区在线观看精品中文 | 久久久久人妻一区精品性色av| 老熟妇高潮一区二区三区| 国产精品女同一区二区| 精品亚洲AV无码一区二区三区| 麻豆果冻传媒2021精品传媒一区下载| 亚洲一区二区三区国产精华液| 国产精品资源一区二区| 美女啪啪一区二区三区| 久久国产精品无码一区二区三区| 国产亚洲一区二区三区在线不卡| 夜夜爽一区二区三区精品| 国产伦精品一区二区| 国产成人一区二区在线不卡| 亚洲国产系列一区二区三区 | 亚洲一区二区三区播放在线| 久久中文字幕一区二区| 国产无线乱码一区二三区| 大屁股熟女一区二区三区| 波多野结衣中文一区| 日韩A无码AV一区二区三区| 欧洲精品一区二区三区| 国产免费一区二区三区VR| 国产一区二区三区手机在线观看| 相泽南亚洲一区二区在线播放| 精品香蕉一区二区三区| 无码人妻一区二区三区免费| 一区一区三区产品乱码| 亚洲a∨无码一区二区| 国模无码一区二区三区| 国产成人高清亚洲一区91| 国产一区二区三区无码免费| 福利一区国产原创多挂探花| 国产免费一区二区三区免费视频 | 性无码免费一区二区三区在线| 国产午夜精品一区二区| 久久一区二区精品综合| 中文字幕AV一区二区三区人妻少妇| 无码中文字幕人妻在线一区二区三区| 国产精品久久久久一区二区三区|