more debug info
This commit is contained in:
@@ -45,6 +45,40 @@ impl fmt::Debug for Requester {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Requester {
|
impl Requester {
|
||||||
|
fn debug_cookie_preview_from_owned_headers(
|
||||||
|
&self,
|
||||||
|
url: &str,
|
||||||
|
headers: &[(String, String)],
|
||||||
|
) -> String {
|
||||||
|
if let Some((_, value)) = headers
|
||||||
|
.iter()
|
||||||
|
.find(|(key, _)| key.eq_ignore_ascii_case("cookie"))
|
||||||
|
{
|
||||||
|
return crate::util::flow_debug::preview(value, 160);
|
||||||
|
}
|
||||||
|
|
||||||
|
self.cookie_header_for_url(url)
|
||||||
|
.map(|cookie| crate::util::flow_debug::preview(&cookie, 160))
|
||||||
|
.unwrap_or_else(|| "none".to_string())
|
||||||
|
}
|
||||||
|
|
||||||
|
fn debug_cookie_preview_from_borrowed_headers(
|
||||||
|
&self,
|
||||||
|
url: &str,
|
||||||
|
headers: &[(&str, &str)],
|
||||||
|
) -> String {
|
||||||
|
if let Some((_, value)) = headers
|
||||||
|
.iter()
|
||||||
|
.find(|(key, _)| key.eq_ignore_ascii_case("cookie"))
|
||||||
|
{
|
||||||
|
return crate::util::flow_debug::preview(value, 160);
|
||||||
|
}
|
||||||
|
|
||||||
|
self.cookie_header_for_url(url)
|
||||||
|
.map(|cookie| crate::util::flow_debug::preview(&cookie, 160))
|
||||||
|
.unwrap_or_else(|| "none".to_string())
|
||||||
|
}
|
||||||
|
|
||||||
fn build_client(cookie_jar: Arc<Jar>, user_agent: Option<&str>) -> Client {
|
fn build_client(cookie_jar: Arc<Jar>, user_agent: Option<&str>) -> Client {
|
||||||
let mut builder = Client::builder()
|
let mut builder = Client::builder()
|
||||||
.cert_verification(false)
|
.cert_verification(false)
|
||||||
@@ -118,10 +152,17 @@ impl Requester {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub async fn get_raw(&mut self, url: &str) -> Result<Response, wreq::Error> {
|
pub async fn get_raw(&mut self, url: &str) -> Result<Response, wreq::Error> {
|
||||||
|
let cookie_preview = self
|
||||||
|
.cookie_header_for_url(url)
|
||||||
|
.map(|cookie| crate::util::flow_debug::preview(&cookie, 160))
|
||||||
|
.unwrap_or_else(|| "none".to_string());
|
||||||
|
#[cfg(not(feature = "debug"))]
|
||||||
|
let _ = &cookie_preview;
|
||||||
crate::flow_debug!(
|
crate::flow_debug!(
|
||||||
"trace={} requester get_raw url={} proxy={}",
|
"trace={} requester get_raw url={} cookies={} proxy={}",
|
||||||
self.debug_trace_id().unwrap_or("none"),
|
self.debug_trace_id().unwrap_or("none"),
|
||||||
crate::util::flow_debug::preview(url, 120),
|
crate::util::flow_debug::preview(url, 120),
|
||||||
|
cookie_preview,
|
||||||
self.proxy
|
self.proxy
|
||||||
);
|
);
|
||||||
let client = Self::build_client(self.cookie_jar.clone(), self.user_agent.as_deref());
|
let client = Self::build_client(self.cookie_jar.clone(), self.user_agent.as_deref());
|
||||||
@@ -143,11 +184,15 @@ impl Requester {
|
|||||||
url: &str,
|
url: &str,
|
||||||
headers: Vec<(String, String)>,
|
headers: Vec<(String, String)>,
|
||||||
) -> Result<Response, wreq::Error> {
|
) -> Result<Response, wreq::Error> {
|
||||||
|
let cookie_preview = self.debug_cookie_preview_from_owned_headers(url, &headers);
|
||||||
|
#[cfg(not(feature = "debug"))]
|
||||||
|
let _ = &cookie_preview;
|
||||||
crate::flow_debug!(
|
crate::flow_debug!(
|
||||||
"trace={} requester get_raw_with_headers url={} headers={} proxy={}",
|
"trace={} requester get_raw_with_headers url={} headers={} cookies={} proxy={}",
|
||||||
self.debug_trace_id().unwrap_or("none"),
|
self.debug_trace_id().unwrap_or("none"),
|
||||||
crate::util::flow_debug::preview(url, 120),
|
crate::util::flow_debug::preview(url, 120),
|
||||||
headers.len(),
|
headers.len(),
|
||||||
|
cookie_preview,
|
||||||
self.proxy
|
self.proxy
|
||||||
);
|
);
|
||||||
let client = Self::build_client(self.cookie_jar.clone(), self.user_agent.as_deref());
|
let client = Self::build_client(self.cookie_jar.clone(), self.user_agent.as_deref());
|
||||||
@@ -176,11 +221,15 @@ impl Requester {
|
|||||||
where
|
where
|
||||||
S: Serialize + ?Sized,
|
S: Serialize + ?Sized,
|
||||||
{
|
{
|
||||||
|
let cookie_preview = self.debug_cookie_preview_from_owned_headers(url, &headers);
|
||||||
|
#[cfg(not(feature = "debug"))]
|
||||||
|
let _ = &cookie_preview;
|
||||||
crate::flow_debug!(
|
crate::flow_debug!(
|
||||||
"trace={} requester post_json url={} headers={} proxy={}",
|
"trace={} requester post_json url={} headers={} cookies={} proxy={}",
|
||||||
self.debug_trace_id().unwrap_or("none"),
|
self.debug_trace_id().unwrap_or("none"),
|
||||||
crate::util::flow_debug::preview(url, 120),
|
crate::util::flow_debug::preview(url, 120),
|
||||||
headers.len(),
|
headers.len(),
|
||||||
|
cookie_preview,
|
||||||
self.proxy
|
self.proxy
|
||||||
);
|
);
|
||||||
let mut request = self.client.post(url).version(Version::HTTP_11).json(data);
|
let mut request = self.client.post(url).version(Version::HTTP_11).json(data);
|
||||||
@@ -206,11 +255,15 @@ impl Requester {
|
|||||||
data: &str,
|
data: &str,
|
||||||
headers: Vec<(&str, &str)>,
|
headers: Vec<(&str, &str)>,
|
||||||
) -> Result<Response, wreq::Error> {
|
) -> Result<Response, wreq::Error> {
|
||||||
|
let cookie_preview = self.debug_cookie_preview_from_borrowed_headers(url, &headers);
|
||||||
|
#[cfg(not(feature = "debug"))]
|
||||||
|
let _ = &cookie_preview;
|
||||||
crate::flow_debug!(
|
crate::flow_debug!(
|
||||||
"trace={} requester post url={} headers={} body_len={} proxy={}",
|
"trace={} requester post url={} headers={} cookies={} body_len={} proxy={}",
|
||||||
self.debug_trace_id().unwrap_or("none"),
|
self.debug_trace_id().unwrap_or("none"),
|
||||||
crate::util::flow_debug::preview(url, 120),
|
crate::util::flow_debug::preview(url, 120),
|
||||||
headers.len(),
|
headers.len(),
|
||||||
|
cookie_preview,
|
||||||
data.len(),
|
data.len(),
|
||||||
self.proxy
|
self.proxy
|
||||||
);
|
);
|
||||||
@@ -242,11 +295,15 @@ impl Requester {
|
|||||||
headers: Vec<(String, String)>,
|
headers: Vec<(String, String)>,
|
||||||
_http_version: Option<Version>,
|
_http_version: Option<Version>,
|
||||||
) -> Result<Response, wreq::Error> {
|
) -> Result<Response, wreq::Error> {
|
||||||
|
let cookie_preview = self.debug_cookie_preview_from_owned_headers(url, &headers);
|
||||||
|
#[cfg(not(feature = "debug"))]
|
||||||
|
let _ = &cookie_preview;
|
||||||
crate::flow_debug!(
|
crate::flow_debug!(
|
||||||
"trace={} requester post_multipart url={} headers={} proxy={}",
|
"trace={} requester post_multipart url={} headers={} cookies={} proxy={}",
|
||||||
self.debug_trace_id().unwrap_or("none"),
|
self.debug_trace_id().unwrap_or("none"),
|
||||||
crate::util::flow_debug::preview(url, 120),
|
crate::util::flow_debug::preview(url, 120),
|
||||||
headers.len(),
|
headers.len(),
|
||||||
|
cookie_preview,
|
||||||
self.proxy
|
self.proxy
|
||||||
);
|
);
|
||||||
let http_version = match _http_version {
|
let http_version = match _http_version {
|
||||||
@@ -285,11 +342,15 @@ impl Requester {
|
|||||||
headers: Vec<(String, String)>,
|
headers: Vec<(String, String)>,
|
||||||
_http_version: Option<Version>,
|
_http_version: Option<Version>,
|
||||||
) -> Result<String, AnyErr> {
|
) -> Result<String, AnyErr> {
|
||||||
|
let cookie_preview = self.debug_cookie_preview_from_owned_headers(url, &headers);
|
||||||
|
#[cfg(not(feature = "debug"))]
|
||||||
|
let _ = &cookie_preview;
|
||||||
crate::flow_debug!(
|
crate::flow_debug!(
|
||||||
"trace={} requester get_with_headers start url={} headers={} http_version={:?} proxy={}",
|
"trace={} requester get_with_headers start url={} headers={} cookies={} http_version={:?} proxy={}",
|
||||||
self.debug_trace_id().unwrap_or("none"),
|
self.debug_trace_id().unwrap_or("none"),
|
||||||
crate::util::flow_debug::preview(url, 120),
|
crate::util::flow_debug::preview(url, 120),
|
||||||
headers.len(),
|
headers.len(),
|
||||||
|
cookie_preview,
|
||||||
_http_version,
|
_http_version,
|
||||||
self.proxy
|
self.proxy
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user