Притиснете Connect, профил се врти секунду и клијент пријављује прекид. Подршка тражи евиденције, ви прилажете снимак екрана и тема стане на два дана јер нико не може да каже који део руковања је одустао. Извештај изграђен око једног покушаја, са уским временским прозором и последњом завршеном фазом, помера тикет напред у једном кругу. Алтернатива, цео дан телефонских евиденција, обично даје особи са друге стране више места за гледање.

Два телефона на истој капији могу се понашати различито, јер протокол, складиште сертификата, метод аутентификације или политика саобраћаја можда не одговарају. Ради на мом телефону је почетна тачка за поређење, не доказ о квару на Android-у.

Забележите један покушај уместо целог дана историје

Запишите окружење пре него што било шта репродукујете: издање Android-а, произвођача и модел, назив и верзију клијента, изабрани профил, мрежу на коју сте повезани и време сата са његовом временском зоном. Бележим и да ли је укључено штедење батерије или Data Saver, јер обоје мењају шта клијент сме да ради пошто се екран искључи.

Затим одредите који од пет исхода заиста гледате. Прозор за сагласност или дозволу се никада не завршава, до крајње тачке се уопште не може стићи, аутентификација се одбија, подешавање интерфејса не успева после успешне пријаве, или се тунел подиже и један конкретан ресурс остаје недоступан. Сваки има другог власника и друго решење, а пакет који их помеша добија одговор да покушате поново. Нагађање између њих претвара тикет од сат времена у недељу дописивања.

И прелази су важни. Ако се квар појављује само после закључавања екрана или после преласка са Wi-Fi на мобилне податке, ставите то у први ред тикета и забележите минут када се догодило.

Прво извезите сопствену евиденцију клијента

Први прилог треба да дође из апликације, а не из оперативног система. Већина клијената у подешавањима нуди извоз дијагностичке евиденције или евиденције везе, понекад сакривен иза дугог притиска на низ верзије, и тај извоз већ разуме своју машину стања. Користите га онако како излази уместо да прекуцавате занимљиве редове у тело тикета.

Приложите прву грешку и догађаје непосредно пре ње, а не само последњи ред о прекиду. Чист реп обично значи да се прави квар догодио раније: ланац сертификата који се није валидирао, име решено на неочекиваном месту или интерфејс који никада није конфигурисан.

Додајте logcat само за питање које можете да именујете

Емулатор терминала на телефону није системски логер. Android бележи своје бафере као одвојене кружне токове које само привилеговани процеси могу потпуно да читају. Зато обична апликација види свој излаз и ограничен део, а тврдња да је logcat био празан доказује веома мало о томе шта је платформа забележила.

Подржани пут је овлашћена ADB сесија са рачунара који контролишете. Укључите опције за програмере и USB отклањање грешака, повежите кабл и прихватите дијалог RSA отиска на уређају; ако се тај захтев затвори, свака следећа команда не успева са unauthorized и ниједно снимање не почиње.

Потврдите да је уређај заиста тамо пре него што уложите време у снимање. adb devices треба да испише серијски број, а затим реч device, и све што приказује offline или unauthorized прво захтева сређивање кабла, захтева или драјвера.

Када се појави на листи, почните снимање неколико секунди пре притиска на Connect и зауставите одмах пошто клијент одустане. Живо снимање са намерним почетком боље је од исписа узетог двадесет минута касније, јер су се кружни бафери већ обрнули и рани редови који су вам потребни можда су нестали:

adb logcat -v threadtime -b main,system,crash > attempt.txt

Филтрирајте по времену и ознаци, а не по речи VPN

Тражење vpn у снимку је најбржи начин да изгубите ред који објашњава квар. Валидација сертификата, падови процеса и промене повезаности бележе се под ознакама које никада не помињу VPN, па филтер по кључној речи задржава шум и одбацује доказе.

Прво сузите прозор, затим приоритет, затим ознаку. Када вам треба само оно што се догодило после познатог тренутка, adb logcat -v threadtime -t '11-03 20:14:00.000' репродукује недавни реп од те тачке, а формат threadtime држи временске ознаке упоредивим са сопственим извозом клијента.

Ако знате пакет клијента, пратите његов процес уместо да погађате ознаке. adb shell pidof com.vendor.client враћа PID, а adb logcat --pid=1234 -v threadtime исписује само тај процес, док adb logcat -g показује колико простора сваки бафер има пре него што почне да преписује.

Сакријте тајне, а затим предајте један кохерентан пакет

Пре него што било шта напусти ваш рачунар, уклоните лозинке, токене, приватне кључеве, колачиће сесије и потпуне идентификаторе уређаја. Задржите кодове грешака, редослед догађаја и односе адреса који квар чине читљивим, јер је снимак очишћен изнад те границе једнако бескористан као онај који никада није филтриран.

Затим пошаљите један пакет уместо неколико одвојених датотека: извоз клијента, ADB прозор именован по времену почетка и заустављања, резиме од два реда о фази која није успела и белешку о окружењу са врха ове листе. Ако део не може да се објави јавно, користите приватни канал подршке добављача и кажите која датотека захтева тај канал.

Пре слања проверите четири ствари. Да ли пакет покрива један покушај, а не цело поподне? Да ли се временске ознаке клијента и система преклапају? И да ли још садржи токен, лозинку или потпун идентификатор претплатника? Прво исправите ту последњу ставку, затим приложите датотеке постојећем тикету уместо да отварате нови, како би онај ко га преузме задржао претходни контекст.

Повезани чланци