日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

如何使用“會話追蹤方案”排查解析異常

當您對解析結果或HTTPDNS服務質量產生如下疑問,希望排查問題時,請參考此“會話追蹤方案”。

  • 您認為解析出的IP不符合預期,以至于影響了業務域名的服務質量。

  • 您接入的APM系統顯示,HTTPDNS服務質量有問題。

注意

  • 對于有疑問的解析IP,需要先確定是否由HTTPDNS解析的結果:需要提供從HTTPDNS接口取出IP的日志及具體的HTTPDNS接入代碼。

  • 由于技術限制,我們只提供三天內的解析問題排查。

  • 由于此方案需要配合SDK的getSessionId方法,您至少需要升級至 Android ≥ 1.2.3, iOS ≥ 1.6.20 才能應用此方案。

背景介紹

對于一個配置了分線路解析的域名,根據客戶入網IP的不同,返回的IP是根據各線路的配置而不同。為了獲得更好的服務質量,服務節點調度系統(GSLB)可能會頻繁地變更上述的線路調度配置,例如CDN系統,可能每幾個小時就會調整一次調度配置。如果客戶端獲取到了錯誤的調度結果(即解析結果),可能會導致服務質量受損,也就是慢或超時,還有可能導致服務不可用。

為了定位上述問題,一般需要您提供來源IP、解析時間、解析的域名、解析結果IP列表來定位異常現場,以便觀察是否有對應的調度結果記錄。但這種定位異常現場的方案存在以下問題:

  • 客戶端難以提供準確的入網IP。

  • 即使提供了準確的入網IP,由于IP一般是共享的,不一定能定位到該次解析現場。

  • 對于同一個網絡環境,運營商可能會針對不同的目的IP,提供不同的入網IP。

  • 在App的一次生命周期中,入網IP可能發生變化。

  • 難以解釋以上入網IP發生的變化原因。

引入sessionId(會話唯一ID)

sessionId參數在App啟動時生成,在整個App生命周期中不會發生變化。在同一個App生命周期中的HTTPDNS解析請求均會攜帶同一個sessionId,服務器則會記錄這個參數,并生成索引。與App異常日志上報中以單個設備ID為索引條件類似,本方案以App的一次生命周期作為做索引條件。與問題常規排查方案中“來源IP-解析結果”組合的追蹤方式相比,使用sessionId對App生命周期進行追蹤,是一種更精準,更適用于App場景的問題排查方式。

通過引入sessionId,我們不再需要您提供客戶端入網IP,改為根據sessionId獲取準確的IP信息。同時可以追蹤在App的一次生命周期中所有的HTTPDNS解析請求,可以觀測到入網IP可能發生的變化,還可以根據net參數的變化解讀客戶入網IP變化的原因。

例如:一個客戶通過4G入網,接入使用的SIM卡可能是廣東的運營商發行的,那么接入IP可能是廣東區域的。當從HTTPDNS獲取IP后,客戶連接了其物理所在地的有線網絡或wifi,可能導致接入IP立即變為該地區的IP,導致內容服務質量受到影響。這種場景在傳統LocalDNS環境下和HTTPDNS下都會出現。

使用“會話追蹤方案”

由于App更新升級過程是漸進式的,無法在短時間內部署最新的版本,我們建議您在接入HTTPDNS時就參考本方案,記錄解析結果和對應的sessionId,以便后續有問題時,方便準確提供追查線索。

  • SDK接入:我們會在App啟動時生成sessionId,并提供了getSessionId方法獲取生成的結果。您需要更新SDK版本來使用此功能(Android ≥ 1.2.3, iOS ≥ 1.6.20),但我們建議您升級至最新版本,以便解決一些已知的其他SDK問題。

  • HTTP API方式接入(即非SDK接入):您可以仿照SDK的邏輯生成相應參數。

  • 端日志上報調度服務質量問題時,需要額外記錄sessionId參數。

另外,您也可以將sessionId攜帶至其他系統中。例如當使用HTTPDNS解析結果,請求該域名的服務時,可以在URL中額外攜帶sessionId參數,這樣可以更加完整地觀察客戶使用場景。

在本方案中,每次SDK對HTTPDNS服務器的請求中,我們添加了如下三個參數(服務器會記錄這些信息):

  • sid=<sessionId:[a-zA-Z0-9]{12}>,在SDK啟動時生成,用于標記一次獨立的App生命周期。

  • net=<4g|3g|2g|wifi|unknown>,用于標記請求發起時刻os層提供的網絡情況;提供sessionId后,我們可以將當時記錄的net信息反饋給您。

  • bssid=<wifi_bssid>,用于標記不同的wifi網絡;提供sessionId后,我們可以將當時記錄的bssid信息反饋給您。

  • 示例URL: http://203.107.1.33/100000/dhost=www.aliyun.com&sid=wInhNA3iM0PK&net=wifi&bssid=54e061553e79

排查場景:解析出的結果不符合預期

當出現解析出的結果不符合預期,您認為可能和HTTPDNS有關,需要排查時:

請您提交HTTPDNS工單,并提供以下信息:

  • 解析時的sessionId、解析時間、解析的域名、解析結果、預期解析結果。

  • 是否造成了實際業務服務質量下降(例如調度到了不正確地域的服務節點)?

  • 是否造成了業務不可用的問題?

如果發現這類問題,建議您盡早針對此類情況,考慮重新獲取域名解析結果(HTTPDNS或LocalDNS),并進行業務重試。

我們會根據sessionId提供以下調查結果:

  • 該解析結果是否由HTTPDNS服務提供?

根據端上策略不同,解析結果可能有三種不同的來源:HTTPDNS、LocalDNS、持久化緩存。

  • 該次HTTPDNS解析對應的網絡環境及入網IP。

  • 客戶在該次App生命周期內是否存在IP跨區域切換的情況。

排查場景:APM顯示HTTPDNS服務質量有問題

當您接入了APM組件(即線上版端性能分析工具),APM組件中顯示HTTPDNS服務出現無法連接的問題時

請提交HTTPDNS工單,并提供以下信息:

APM系統截圖:連接失敗或返回錯誤時的URL地址、出現的錯誤信息、以及問題出現的時間

  • URL中會包含sessionId、網絡情況等信息。

  • 雖然該請求可能沒有到達服務器,但請求時的網絡情況(net)會被添加到URL中,并由您接入的APM系統記錄。

我們會根據您提供的信息提供如下幫助:

  • 協助您分析該次失敗請求的原因。

  • 該次App生命周期內的相關請求記錄,以便做如下分析:

    • 判斷是否存在網絡切換的情況。

    • 是否同一時間有成功的請求。