Транспарт можа запісаць у лог няўдалае праксі-злучэнне, у той час як праграма таксама атрымлівае і апрацоўвае рэактыўную памылку. Адзін запіс у логу не даказвае, што апрацоўшчык праграмы быў прапушчаны.

Сачыце за сігналам памылкі ў ланцугу, які фактычна падпісваецца. try/catch вакол кода, які толькі стварае Mono, — гэта іншая вобласць, чым апрацоўка пазнейшага збою сеткі.

АператарЭфект
doOnErrorВыконвае пабочны эфект, пакуль памылка працягваецца
onErrorMapПераўтварае памылку ў іншую памылку
onErrorResumeПераключаецца на альтэрнатыўны выдавец

Выбірайце паводзіны, якія патрэбны праграме. Запіс метрыкі не патрабуе вяртання фальшывага паспяховага змесціва. Альтэрнатыўны адказ павінен быць свядомым вынікам праграмы, а не спосабам схаваць няўдалы маршрут.

Таксама адрознівайце выключэнні транспарту ад атрыманых статусаў памылкі HTTP. Праксі-злучэнне можа сарвацца раней, чым існуе звычайны адказ прызначэння, таму апрацоўшчыку статусаў HTTP можа не быць чаго правяраць. Захоўвайце прычыну WebClientRequestException пры дыягностыцы ніжэйшага збою.

Карэкціруйце лагаванне толькі пасля разумення выніку. Поўнае адключэнне лагера транспарту можа выдаліць доказы, патрэбныя для пазнейшага тайм-аўту, праблемы TLS або збою аўтэнтыфікацыі, не змяняючы паводзін рэактыўнага канвеера.

Падобныя артыкулы