Commit 8862917e authored by Vadim Tryshev's avatar Vadim Tryshev Committed by Commit Bot

Adding diagnostic logging.

Bug=712331

Change-Id: I2ca492c7856546280bca9f1fc7da7a0837866495
Reviewed-on: https://chromium-review.googlesource.com/575702
Commit-Queue: Vadim Tryshev <vadimt@chromium.org>
Reviewed-by: default avatarYury Khmel <khmel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#487636}
parent 9c507386
......@@ -34,6 +34,9 @@ enum class SearchAnswerRequestResult {
REQUEST_RESULT_MAX = 5
};
constexpr char kSearchAnswerHasResult[] = "SearchAnswer-HasResult";
constexpr char kSearchAnswerOpenResultUrl[] = "SearchAnswer-OpenResultUrl";
void RecordRequestResult(SearchAnswerRequestResult request_result) {
UMA_HISTOGRAM_ENUMERATION("SearchAnswer.RequestResult", request_result,
SearchAnswerRequestResult::REQUEST_RESULT_MAX);
......@@ -133,13 +136,21 @@ content::WebContents* AnswerCardSearchProvider::OpenURLFromTab(
void AnswerCardSearchProvider::DidFinishNavigation(
content::NavigationHandle* navigation_handle) {
if (navigation_handle->GetURL() != current_request_url_) {
// TODO(vadimt): Remove this and similar logging once testing is complete if
// we think this is not useful after release or happens too frequently.
VLOG(1) << "DidFinishNavigation: Another request started";
RecordRequestResult(
SearchAnswerRequestResult::REQUEST_RESULT_ANOTHER_REQUEST_STARTED);
return;
}
VLOG(1) << "DidFinishNavigation: Latest request completed";
if (!navigation_handle->HasCommitted() || navigation_handle->IsErrorPage() ||
!navigation_handle->IsInMainFrame()) {
LOG(ERROR) << "Failed to navigate: HasCommitted="
<< navigation_handle->HasCommitted()
<< ", IsErrorPage=" << navigation_handle->IsErrorPage()
<< ", IsInMainFrame=" << navigation_handle->IsInMainFrame();
RecordRequestResult(
SearchAnswerRequestResult::REQUEST_RESULT_REQUEST_FAILED);
return;
......@@ -180,8 +191,14 @@ bool AnswerCardSearchProvider::IsCardSizeOk() const {
if (features::IsAnswerCardDarkRunEnabled())
return true;
return preferred_size_.width() <= features::AnswerCardMaxWidth() &&
preferred_size_.height() <= features::AnswerCardMaxHeight();
if (preferred_size_.width() <= features::AnswerCardMaxWidth() &&
preferred_size_.height() <= features::AnswerCardMaxHeight()) {
return true;
}
LOG(ERROR) << "Card is too large: width=" << preferred_size_.width()
<< ", height=" << preferred_size_.height();
return false;
}
void AnswerCardSearchProvider::RecordReceivedAnswerFinalResult() {
......@@ -211,14 +228,30 @@ void AnswerCardSearchProvider::OnResultAvailable(bool is_available) {
bool AnswerCardSearchProvider::ParseResponseHeaders(
const net::HttpResponseHeaders* headers) {
if (!headers || headers->response_code() != net::HTTP_OK)
if (!headers) {
LOG(ERROR) << "Failed to parse response headers: no headers";
return false;
}
if (headers->response_code() != net::HTTP_OK) {
LOG(ERROR) << "Failed to parse response headers: response code="
<< headers->response_code();
return false;
if (!headers->HasHeaderValue("SearchAnswer-HasResult", "true"))
}
if (!headers->HasHeaderValue(kSearchAnswerHasResult, "true")) {
VLOG(1) << "Failed to parse response headers: " << kSearchAnswerHasResult
<< " header != true";
return false;
if (!headers->GetNormalizedHeader("SearchAnswer-OpenResultUrl", &result_url_))
}
if (!headers->GetNormalizedHeader(kSearchAnswerOpenResultUrl, &result_url_)) {
LOG(ERROR) << "Failed to parse response headers: "
<< kSearchAnswerOpenResultUrl << " header is not present";
return false;
if (!headers->GetNormalizedHeader("SearchAnswer-Title", &result_title_))
}
if (!headers->GetNormalizedHeader("SearchAnswer-Title", &result_title_)) {
LOG(ERROR) << "Failed to parse response headers: SearchAnswer-Title header "
"is not present";
return false;
}
return true;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment