精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

實現一個前端監控系統,應該考慮什么?如何去實現?

開發 前端
可能整個系統比較復雜的就是如何高效合理的進行監控數據上傳。除了異常報錯信息本身,還需要記錄用戶操作日志,如果任何日志都立即上報,這無異于自造的 DDOS 攻擊。那就需要考慮前端日志的存儲,日志如何上傳,上傳前如何整理日志等問題。

一、為什么要做前端監控

  • 更快地發現問題。
  • 做產品決策依據。
  • 提升前端開發的技術深度和廣度。
  • 為業務擴展提供更多可能性。

二、前端數據分類

前端的數據其實有很多,從大眾普遍關注的 PV、UV、廣告點擊量,到客戶端的網絡環境、登陸狀態,再到瀏覽器、操作系統信息,最后到頁面性能、JS 異常,這些數據都可以在前端收集到。

2.1 訪問相關的數據

  • PV/UV:最基礎的 PV(頁面訪問量)、UV(獨立訪問用戶數據量)
  • 頁面來源:頁面的 referer,可以定位頁面的入口
  • 操作系統:了解用戶的 OS 情況,幫助分析用戶群體的特征,特別是移動端、iOS 和 Android 的分布就更有意義了
  • 瀏覽器:可以統計到各種瀏覽器的占比,對于是否繼續兼容 IE6、新技術(HTML5、CSS3 等)的運用等調研提供參考價值
  • 分辨率:對頁面設計提供參考,特別是響應式設計
  • 登錄率:登陸用戶具有更高的分析價值,引導用戶登陸是非常重要的
  • 地域分布:訪問用戶在地理位置上的分布,可以針對不同地域做運營、活動等
  • 網絡類型:wifi/3G/2G,為產品是否需要適配不同網絡環境做決策
  • 訪問時段:掌握用戶訪問時間的分布,引導削峰填谷、節省帶寬
  • 停留時長:判斷頁面內容是否具有吸引力,對于需要長時間閱讀的頁面比較有意義
  • 到達深度:和停留時長類似,例如百度百科,用戶瀏覽時的頁面到達深度直接反映詞條的質量

2.2 性能相關的數據

  • 白屏時間:用戶從打開頁面開始到頁面開始有東西呈現為止,這過程中占用的時間就是白屏時間
  • 首屏時間:用戶瀏覽器首屏內所有內容都呈現出來所花費的時間
  • 用戶可選擇操作時間:用戶可以進行正常的點擊、輸入等操作
  • 頁面總下載時間:頁面所有資源都加載完成并呈現出來所花的時間,即頁面 onload 的時間
  • 自定義的時間點:對于開發人員來說,完全可以自定義一些時間點,例如:某個組件 init 完成的時間、某個重要模塊加載的時間等等

2.3 點擊相關的數據

  • 頁面總點擊量
  • 人均點擊量:對于導航類的網頁,這項指標是非常重要的
  • 流出 url:同樣,導航類的網頁,直接了解網頁導流的去向
  • 點擊時間:用戶的所有點擊行為,在時間上的分布,反映了用戶點擊操作的習慣
  • 首次點擊時間:同上,但是只統計用戶的第一次點擊,如果該時間偏大,是否就表明頁面很卡導致用戶長時間不能點擊呢?
  • 點擊熱力圖:根據用戶點擊的位置,我們可以畫出整個頁面的點擊熱力圖,可以很直觀地了解到頁面的熱點區域

2.4 異常相關的數據

這里的異常是指 JS 的異常,用戶的瀏覽器上報 JS 的 bug,這會極大地降低用戶體驗

  • 異常的提示信息:這是識別一個異常的最重要依據,如:e.src 為空或不是對象
  • JS 文件名
  • 異常所在行
  • 發生異常的瀏覽器
  • 堆棧信息:必要的時候需要函數調用的堆棧信息,但是注意堆棧信息可能會比較大,需要截取

2.5 其它數據

除了上面提到的 4 類基本的數據統計需求,我們當然還可以根據實際情況來定義一些其他的統計需求,如用戶瀏覽器對 canvas 的支持程度, 再比如比較特殊的-用戶進行輪播圖翻頁的次數,這些數據統計需求都是前端能夠滿足的,每一項統計的結果都體現了前端數據的價值

三、性能指標

  • FP(First Paint):首次繪制時間,包括了任何用戶自定義的背景繪制,它是首先將像素繪制到屏幕的時刻。
  • FCP(First Content Paint):首次內容繪制。瀏覽器將第一個 DOM 渲染到屏幕的時間,可能是文本、圖像、SVG 等。這其實就是白屏時間
  • FMP(First Meaningful Paint):首次有意義繪制。頁面有意義的內容渲染的時間
  • LCP(Largest Contentful Paint)。最大內容渲染。代表在 viewport 中最大的頁面元素加載的時間。
  • DCL(DomContentLoaded):DOM 加載完成。當 HTML 文檔被完全加載和解析完成之后,DOMContentLoaded 事件被觸發。無需等待樣式表,圖像和子框架的完成加載。
  • L(onload):當依賴的資源全部加載完畢之后才會觸發。
  • TTI(Time to Interactive):可交互時間。用于標記應用已進行視覺渲染并能可靠響應用戶輸入的時間點。
  • FID(First Input Delay):首次輸入延遲。用戶首次和頁面交互(單擊鏈接、點擊按鈕等)到頁面響應交互的時間。

四、前端監控目標(監控分類)

4.1 穩定性(stability)

  • JS 錯誤,JS 執行錯誤或者 Promise 異常。
  • 資源異常,script、link 等資源加載異常
  • 接口錯誤,ajax 或 fetch 請求接口異常
  • 白屏,頁面空白

4.2 用戶體驗(experience)

  1. 加載時間,各個階段的加載時間
  2. TTFB(Time To First Byte 首字節時間)。是指瀏覽器發起第一個請求到數據返回第一個字節所消耗的時間,這個時間包含了網絡請求時間、后端處理時間。
  3. FP(First Paint 首次繪制)。首次繪制包括了任何用戶自定義的背景繪制,它是將第一個像素點繪制到屏幕的時間。
  4. FCP(First Content Paint 首次內容繪制)。首次內容繪制是瀏覽器將第一個 DOM 渲染到屏幕的時間,可以是任何文本、圖像、SVG 等的時間。
  5. FMP(First Meaningful Paint 首次有意義繪制)。 首次有意義繪制是頁面可用性的量度標準。
  6. FID(First Input Delay 首次輸入延遲)。用戶首次和頁面交互到頁面響應交互的時間。
  7. 卡頓。 超過 50ms 的任務。

4.3 業務

  • PV:page view 即頁面瀏覽量或點擊量
  • UV:指訪問某個站點的不同 IP 地址的人數。
  • 頁面停留時間:用戶在每一個頁面的停留時間。

五、前端監控流程

  • 數據埋點。
  • 數據上報
  • 分析和計算,將采集到的數據進行加工總結
  • 可視化展示,將數據按照各種維度進行展示
  • 監控報警,發現問題后按一定的條件觸發報警

六、常見的埋點方案

6.1 代碼埋點

代碼埋點,就是以嵌入代碼的形式進行埋點,比如要監控用戶的點擊事件,會選擇在用戶點擊時插入一段代碼,保存這個監聽行為或者直接將監聽行為 以某一種數據格式直接傳遞給服務器端。

優點是可以在任意時刻,精確的發送或保存所需要的數據信息。

缺點就是工作量大。

6.2 可視化埋點

通過可視化交互的手段,代替代碼埋點。

將業務代碼和埋點代碼分離,提供一個可視化交互的頁面,輸入為業務代碼,通過這個可視化系統,可以在業務代碼中自定義 的增加埋點事件等等。最后輸出的代碼耦合了業務代碼和埋點代碼

可視化埋點其實是用系統來代替手工插入埋點代碼。

6.3 無痕埋點

前端的任意一個事件都被綁定一個標識,所有的事件都被記錄下來。

通過定期上傳記錄文件,配合文件解析,解析出來我們想要的數據,并生成可視化報告供專業人員分析

無痕埋點的優點是采集全量數據,不會出現漏埋和誤埋等現象

缺點是給數據傳輸和服務器增加壓力,也無法靈活定制數據結構

七、編寫監控采集腳本

7.1 監控錯誤

  • 錯誤分類JS 錯誤Promise 異常。
  • 資源異常監聽 error

7.2 數據結構設計

  • jsError
let info = {
title: "前端監控系統", // 頁面標題
url: "http://localhost:8080", // 頁面url
timestamp: "1212121212121212", // 訪問時間戳
userAgent: "chrome", // 用戶瀏覽器類型
kind: "stability", // 大類
type: "error", // 小類
errorType: "jsError", // 錯誤類型
message: "uncaught TypeError:blablabla", // 錯誤詳情
filename: "http://localhost:8080/", // 訪問的文件名
position: "0:0", // 行列信息
stack: "btn Click (http://localhost:8080)", // 堆棧信息
selector: "HTML BODY #container .content INPUT", // 選擇器
};
  • 接口異常數據結構設置
let info = {
title: "前端監控系統", // 頁面標題
url: "http://localhost:8080", // 頁面url
timestamp: "1212121212121212", // 訪問時間戳
userAgent: "chrome", // 用戶瀏覽器類型
kind: "stability", // 大類
type: "xhr", // 小類
eventType: "load", // 事件類型
pathname: "/success",
status: "200-0k",
duration: "5", // 持續時間
response: "hahah", // 響應內容
params: "參數", // 參數
};
  • 白屏 screen 返回當前 window 的 screen 對象,返回當前渲染窗口中和屏幕有關的屬性innerWidth 只讀的 window 屬性。innerWidth 返回以像素為單位的窗口的內部寬度innerHeight 窗口的內部高度(布局視口)的高度layout_viewportelementsFromPoint 方法可以獲取到當前視口內指定坐標處,由里到外排列的所有元素。
let info = {
title: "前端監控系統",
url: "http://localhost:8080/",
timestamp: "1239404040404044",
userAgent: "chorme",
kind: "stability",
type: "blank",
emptyPoints: "0", // 空白點
screen: "2049 * 1152", // 分辨率
viewPoint: "2048 * 994", // 視口
selector: "HTML BODY #container", // 選擇器
};

整體大致可以分四個階段:信息采集、存儲、分析、監控。

采集階段:收集異常日志,先在本地做一定的處理,采取一定的方案上報到服務器。

存儲階段:后端接收前端上報的異常日志,經過一定處理,按照一定的存儲方案存儲。

分析階段:分為機器自動分析和人工分析。機器自動分析,通過預設的條件和算法,對存儲的日志信息進行統計和篩選,發現問題,觸發報警。人工分析,通過提供一個可視化的數據面板,讓系統用戶可以看到具體的日志數據,根據信息,發現異常問題根源。

報警階段:分為告警和預警。告警按照一定的級別自動報警,通過設定的渠道,按照一定的觸發規則進行。預警則在異常發生前,提前預判,給出警告。

性能監控: 使用 Resource Timing API 和 Performance Timing API,可以計算許多重要的指標,比如頁面性能統計的起始點時間、首屏時間等。

異常監控: 前端捕獲異常分為全局捕獲和局部捕獲。局部捕獲作為補充,對某些特殊情況進行捕獲,但分散,不利于管理。所以,我會選擇全局捕獲的方式,即通過全局的接口,將捕獲代碼集中寫在一個地方。具體在實現項目中,我應該會采用 badjs-report,它重寫了 window.onerror 進行上報異常,無需編寫任何捕獲錯誤的代碼。

前端埋點: 埋點的方案有手動埋點,即在需要監控的地方插入監控邏輯,但是工作量可能會很大;還有無埋點,前端自動采集全部事件,上報埋點數據,但是缺點是服務器壓力會很大。我可能傾向于采用聲明式埋點,將埋點代碼和具體的業務邏輯解耦,只用關心需要埋點的控件,并且為這些控件聲明需要的埋點數據即可,主要是為了降低埋點的成本吧。在 dom 元素上增添埋點信息,比如:

// key表示埋點的唯一標識;act表示埋點方式
<button data-stat="{key:'buttonKey', act: 'click'}">埋點</button>

埋點

監控告警: 這里我認為最便捷、高效的方式,就是接入內部的告警組了吧,尤其是在阿里,似乎什么輪子都有,那可能需要考慮就是觸發告警的閾值和時機了。

性能:使用 Performance API,可以得到許多重要的指標,如頁面性能統計的起始點時間、首屏時間等。

報錯:使用 onerror 和 onunhandledrejection,甚至是 try catch。

操作行為:對事件觸發函數做 patch,或者添加特定的事件監聽。

PV/UV:利用瀏覽器存儲方法或 Cookie、IP 等儲存相應用戶信息,隨請求發送。

設備信息:獲取 navigator.userAgent。

PV、UV 屬于增長數字類型,可以用 Redis 等記錄,如果有需要,定時入庫。其他屬于大量文字信息,可以用成熟的消息隊列來消費。因為有大量寫,所以可以考慮做讀寫分離。

技術難點:

可能整個系統比較復雜的就是如何高效合理的進行監控數據上傳。除了異常報錯信息本身,還需要記錄用戶操作日志,如果任何日志都立即上報,這無異于自造的 DDOS 攻擊。那就需要考慮前端日志的存儲,日志如何上傳,上傳前如何整理日志等問題。

前端在收集的過程中可能會影響用戶體驗。

后端對于收到的日志要使用合適的工具進行收集,數據量大時選擇如何取舍。

可能會采取的方案:

  • indexDB 存儲日志,因為容量大、異步!不用考慮阻塞頁面問題。
  • 在一個 webworker 中對日志進行整理,比如對每一條日志打上標簽,進行分類等操作。
  • 上報日志也在 webworker 中進行,可以按照重要緊急度區分,判斷是否延時或者立即上報。
責任編輯:武曉燕 來源: 今日頭條
相關推薦

2021-01-26 10:33:45

前端開發技術

2020-05-19 10:45:31

沙箱前端原生對象

2023-03-01 09:39:40

調度系統

2019-12-11 10:45:08

Python 開發編程語言

2017-07-07 15:54:26

Linux監控場景

2017-12-12 15:24:32

Web Server單線程實現

2020-09-06 22:20:13

Prometheus監控平臺容器

2017-03-02 13:31:02

監控系統

2022-11-29 17:34:43

虛擬形象系統

2020-11-30 06:20:13

javascript

2023-02-26 01:37:57

goORM代碼

2020-08-17 08:20:16

iOSAOP框架

2011-12-26 16:39:43

局部函數

2022-03-14 10:02:03

散列表鏈表哈希表

2022-10-20 11:00:52

SQL解析器

2016-09-28 17:34:27

JavaScriptvueWeb

2016-09-06 19:45:18

javascriptVue前端

2021-05-27 09:50:03

連接池FTP服務器

2022-03-24 14:58:02

Java散列表編程語言

2022-04-25 15:01:07

系統程序員調度
點贊
收藏

51CTO技術棧公眾號

国产小视频精品| 欧美凹凸一区二区三区视频| eeuss中文字幕| 大胆国模一区二区三区| 亚洲精品视频在线| 国产高清在线一区| 精品成人无码久久久久久| 久久麻豆精品| 亚洲精品一区二区三区四区高清| 日本一本二本在线观看| 好吊日视频在线观看| 99久久久久久| 国产日韩精品在线播放| 日韩激情在线播放| 三级电影一区| 亚洲精品久久久一区二区三区| 日韩一级理论片| 狂野欧美激情性xxxx欧美| 国产丝袜美腿一区二区三区| 成人性色av| 国产精品一区二区三区四| 国产精品久久久久9999赢消| 精品一区二区三区三区| 特种兵之深入敌后| 国产成+人+综合+亚洲欧美| 午夜伦欧美伦电影理论片| 亚洲国产婷婷香蕉久久久久久99| 天堂网在线中文| 狠狠色综合日日| 国产成人久久精品| 久久露脸国语精品国产91| 亚洲午夜精品一区二区国产| 亚洲毛片在线观看.| 欧美xxxx日本和非洲| 四虎影视国产精品| 欧美亚洲一区二区在线观看| 日韩欧美在线播放视频| 超碰资源在线| 亚洲在线免费播放| 精品91一区二区三区| 成人性爱视频在线观看| 久久久久99精品国产片| 精品国产aⅴ麻豆| 亚洲精品视频网| 国产成人亚洲综合a∨猫咪| 国产欧美一区二区三区久久人妖| 91porny九色| 久久久水蜜桃av免费网站| 97av在线影院| 日本三级一区二区| 9久re热视频在线精品| 久久99久久99精品中文字幕| 欧美一区免费观看| 久久精品影视| 久久av在线看| 日韩欧美中文字幕视频| 欧美日本一区| 久久久亚洲网站| 国产精久久久久久| 亚洲精品影院在线观看| 久久人人爽人人| 国产成人亚洲精品自产在线| 99精品视频免费| 98精品国产高清在线xxxx天堂| 久久精品国产亚洲av高清色欲| 国色天香一区二区| 午夜精品美女自拍福到在线| www.av麻豆| 美女久久一区| 国产精品丝袜久久久久久高清| 中文在线观看av| 狠狠色丁香婷婷综合久久片| 亚洲一区二区三区xxx视频| 精品人妻久久久久一区二区三区| 粉嫩欧美一区二区三区高清影视 | 懂色av一区二区三区四区五区| 秋霞午夜在线观看| 亚洲一区二区三区中文字幕| 成人在线免费观看av| 欧美va在线| 337p亚洲精品色噜噜| 性感美女一区二区三区| 天堂99x99es久久精品免费| 亚洲欧美综合区自拍另类| 成人无码精品1区2区3区免费看| 久久精品免费一区二区三区| 久久久久久国产精品| 国产精品久久久久久人| 精品中文字幕一区二区| 精品一区二区三区国产| 午夜免费播放观看在线视频| 亚洲一区二区视频| 午夜视频你懂的| 2020国产精品极品色在线观看| 日韩高清有码在线| 日本 欧美 国产| 亚洲美女91| 国产日韩欧美在线视频观看| 少妇高潮一区二区三区99小说| 亚洲国产电影在线观看| 最新日韩av在线| 精品亚洲第一| 麻豆网站在线看| 亚洲成人动漫在线观看| 国产免费999| 在线日韩成人| 亚洲午夜精品视频| 久久久久久久久久一区二区三区| 久久裸体视频| 福利视频一区二区三区| 电影av一区| 亚洲mv在线观看| 亚洲一二三不卡| 国产亚洲一区| 97香蕉超级碰碰久久免费的优势 | 欧美v日韩v国产v| 蜜桃av免费看| 精品成人国产| 亚洲字幕一区二区| 成av人电影在线观看| 精品久久久久久久久国产字幕| av在线网址导航| 偷拍一区二区| 午夜精品99久久免费| 国产精品一级视频| 国产日本欧洲亚洲| 成人在线免费观看av| ccyy激情综合| 欧美成人精品在线观看| 亚洲一级片免费看| 国产极品在线观看| 日本韩国欧美在线| 国产精品无码一区二区三| 欧美伊人久久| 91九色单男在线观看| 国产大片在线免费观看| 精品国产鲁一鲁一区二区张丽| av在线天堂网| 中文字幕亚洲综合久久五月天色无吗''| 国产福利精品在线| 嫩草研究院在线| 欧美午夜片在线免费观看| xxxx黄色片| 亚洲韩日在线| 国产日韩在线一区二区三区| 免费电影视频在线看| 日韩欧美一级二级| 九九久久免费视频| 成人在线视频一区| 欧美图片激情小说| 深夜激情久久| 欧美激情在线观看| 秋霞av鲁丝片一区二区| 欧美日韩播放| 九九热精品视频| www.精品久久| 亚洲一二三区在线观看| 欧洲熟妇的性久久久久久| 亚洲天堂偷拍| 极品校花啪啪激情久久| 亚洲人体视频| 中文字幕免费精品一区| 91国内精品视频| 亚洲视频免费观看| 亚洲美女高潮久久久| 亚洲茄子视频| 欧美重口乱码一区二区| 粉嫩av一区二区三区四区五区 | 日本黄色录像视频| 国产一区二区三区av电影| 美女av免费观看| 久久精品色综合| 欧洲成人午夜免费大片| freemovies性欧美| 日韩亚洲欧美高清| 免费看日韩毛片| 国产日韩亚洲欧美综合| 极品粉嫩美女露脸啪啪| 亚洲无吗在线| 欧洲精品亚洲精品| 日本精品视频| 欧美一级黄色网| 91免费在线| 欧美成人精品1314www| 久久精品无码av| 亚洲欧美日韩国产综合| 精品无码在线视频| 热久久一区二区| 日韩精品一区二区三区四| 亚洲电影一级片| 91色视频在线导航| 中文在线免费二区三区| 久久久精品久久久| 午夜在线视频免费| 欧美一区二区三区在线观看视频| 欧美一级视频免费观看| 中文字幕一区二区在线观看| 精品人妻在线视频| 久久99精品久久久| 亚洲不卡中文字幕无码| 99国产精品一区二区| 久久国产精品精品国产色婷婷| 国产精品久久久久久久久免费高清| 欧美另类交人妖| 成人动漫在线免费观看| 亚洲国产成人av在线| 国产精品视频久久久久久| 欧美性猛交xxxx黑人| 免费视频网站www| 欧美激情中文不卡| 亚洲国产果冻传媒av在线观看| 狠狠色丁香婷婷综合| 日本新janpanese乱熟| 国内在线观看一区二区三区| 亚洲资源在线网| 九色成人国产蝌蚪91| 国产欧美日韩一区二区三区| 99精品视频在线免费播放| 国产精品成人在线| 136福利第一导航国产在线| 久久九九国产精品怡红院 | 欧美另类在线播放| 秋霞午夜在线观看| 中文欧美在线视频| 狠狠v欧美ⅴ日韩v亚洲v大胸| 欧美精品一区二区三区高清aⅴ| 一区二区三区黄色片| 欧美亚洲精品一区| 天天爽夜夜爽人人爽| 精品久久久一区二区| 国产在线综合网| 亚洲午夜在线观看视频在线| 波多野结衣亚洲一区二区| 国产精品美日韩| 欧美性受xxxx黑人| 国产欧美一区二区精品仙草咪 | 国产一区二区三区天码| 快播日韩欧美| 麻豆一区二区麻豆免费观看| 国产精品久久久久久久小唯西川| 视频一区在线| 91久久精品国产91久久性色tv| av一级久久| 亚洲自拍小视频免费观看| 日本免费精品| 国产成人精品福利一区二区三区| 天堂av一区| 丁香婷婷久久久综合精品国产| 激情视频亚洲| 91成人伦理在线电影| 99久久香蕉| 国产精品免费一区二区三区| 国产成人一二片| 国产精品一区二区三区免费观看 | 亚洲人午夜精品| 久草福利在线| 日韩在线视频播放| 成人欧美在线| 久久久久亚洲精品成人网小说| 丝袜国产在线| 777777777亚洲妇女| 波多视频一区| 国产精品麻豆va在线播放| 欧美极品在线| 91国产在线免费观看| 国产成人一二| 日本一区二区精品| 五月天久久777| h无码动漫在线观看| 国产精品美女久久久| 成人一区二区三| 麻豆91在线播放免费| 日本少妇xxx| 99国产精品久久久久久久久久| 亚洲精品成人无码| 国产精品九色蝌蚪自拍| 加勒比av在线播放| 欧美日韩在线视频一区二区| 正在播放木下凛凛xv99| 欧美一区二区国产| 天堂在线一二区| 视频在线观看一区二区| heyzo在线欧美播放| 国产精品27p| 精品视频一区二区三区在线观看| 国产精品区一区二区三在线播放| 国产成人精品一区二区免费看京 | 在线观看的黄色| 国产精品丝袜一区二区三区| 91免费精品国偷自产在线在线| 欧美精品一区二区三区在线看午夜| 成人免费在线播放| www.日本少妇| 久久精品国产成人一区二区三区| 色悠悠在线视频| 国产精品素人视频| 日韩 欧美 精品| 欧美精品亚洲二区| 三级毛片在线免费看| 久久久久北条麻妃免费看| 日本不卡网站| 亚洲精品日韩激情在线电影| 精品99在线| 成人性免费视频| 国内一区二区在线| 国产精品美女高潮无套| 亚洲国产精品久久人人爱| 伊人22222| 日韩精品高清视频| 国产桃色电影在线播放| 91精品国产综合久久香蕉最新版 | 天天操天天干天天干| 久久久极品av| 全球最大av网站久久| 黄色99视频| 午夜精品av| 中文字幕线观看| 国产精品欧美一区喷水| 69xxxx国产| 日韩黄色高清视频| 成人影音在线| av一区和二区| 中文字幕一区二区三区乱码图片| 久久午夜夜伦鲁鲁一区二区| 不卡av免费在线观看| 国产一区二区播放| 欧美精品久久一区二区三区 | 欧美高清激情视频| av国产精品| 亚洲自拍偷拍一区二区三区| 蜜桃av一区二区| 在线观看免费小视频| 日韩人在线观看| 婷婷亚洲一区二区三区| 韩国v欧美v日本v亚洲| av成人资源| 男人添女荫道口喷水视频| 国产精品影音先锋| 国产人妻精品一区二区三区不卡| 精品视频免费在线| 日本最新在线视频| 成人精品视频在线| 亚洲精品一二三区区别| 黄色片子免费看| 亚洲欧洲另类国产综合| 97人妻精品一区二区三区视频 | 国产1区2区3区4区| 日韩一级片在线观看| 污的网站在线观看| 岛国视频一区| 国产精品毛片在线| 亚洲精品国产一区黑色丝袜| 欧美最猛黑人xxxxx猛交| www.av在线| 成人亚洲欧美一区二区三区| 亚洲精品成人| 欧美成人精品一区二区综合免费| 亚洲影院免费观看| 亚洲 欧美 激情 另类| 日本视频久久久| 日韩伦理视频| 91香蕉视频免费看| 亚洲成人免费看| 美国一级片在线免费观看视频| 国产精品扒开腿做爽爽爽视频| 日韩欧美视频在线播放| 涩涩网站在线看| 亚洲一二三区不卡| 国产裸舞福利在线视频合集| 国产精品久久视频| 欧美成人69av| 丝袜美腿中文字幕| 欧美日韩综合不卡| 色呦呦在线播放| 欧美精品与人动性物交免费看| 日韩成人免费在线| 欧美成人三级视频| 亚洲欧美综合精品久久成人| 99久热在线精品视频观看| av免费观看国产| 国产精品色哟哟| 亚洲国产精彩视频| 国产成人精品久久二区二区91| 亚洲国产成人精品女人| 中文在线永久免费观看| 欧美日韩亚洲另类| 不卡av免费观看| 亚洲欧美日韩国产成人综合一二三区 | 亚洲精品久久久久久宅男| 亚洲一区二区三区中文字幕| 黄色毛片在线看| 91久色国产| 日韩激情在线观看| 欧美成人aaaaⅴ片在线看| 国产亚洲精品久久久久久777| 一区二区三区视频播放| 中文久久久久久| 天天色综合天天| av片在线观看永久免费| 日本10禁啪啪无遮挡免费一区二区|