Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6857)

Unified Diff: chrome/browser/ui/webui/feedback_ui.cc

Issue 22695004: Attach performance tracing data to feedback reports (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/resources/feedback.js ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/webui/feedback_ui.cc
diff --git a/chrome/browser/ui/webui/feedback_ui.cc b/chrome/browser/ui/webui/feedback_ui.cc
index 0f58e2cace64817a09ac47f28d87ea5b05f1ad21..4f11ab14c07f3ebba0eb08f847388a0b1fff88f9 100644
--- a/chrome/browser/ui/webui/feedback_ui.cc
+++ b/chrome/browser/ui/webui/feedback_ui.cc
@@ -24,6 +24,7 @@
#include "chrome/browser/download/download_prefs.h"
#include "chrome/browser/feedback/feedback_data.h"
#include "chrome/browser/feedback/feedback_util.h"
+#include "chrome/browser/feedback/tracing_manager.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/signin/signin_manager.h"
@@ -86,6 +87,7 @@ const char kCustomPageUrlParameter[] = "customPageUrl=";
#if defined(OS_CHROMEOS)
const char kTimestampParameter[] = "timestamp=";
+const char kTraceIdParameter[] = "traceId=";
const size_t kMaxSavedScreenshots = 2;
size_t kMaxNumScanFiles = 1000;
@@ -236,6 +238,13 @@ void ShowFeedbackPage(Browser* browser,
#if defined(OS_CHROMEOS)
feedback_url = feedback_url + "&" + kTimestampParameter +
net::EscapeUrlEncodedData(timestamp, false);
+
+ // The manager is only available if tracing is enabled.
+ if (TracingManager* manager = TracingManager::Get()) {
+ int trace_id = manager->RequestTrace();
+ feedback_url = feedback_url + "&" + kTraceIdParameter +
+ base::IntToString(trace_id);
+ }
#endif
chrome::ShowSingletonTab(browser, GURL(feedback_url));
}
@@ -307,6 +316,8 @@ content::WebUIDataSource* CreateFeedbackUIHTMLSource(bool successful_init) {
source->AddLocalizedString("user-email", IDS_FEEDBACK_USER_EMAIL_LABEL);
#if defined(OS_CHROMEOS)
+ source->AddLocalizedString("performance-trace",
+ IDS_FEEDBACK_INCLUDE_PERFORMANCE_TRACE_CHECKBOX);
source->AddLocalizedString("sysinfo",
IDS_FEEDBACK_INCLUDE_SYSTEM_INFORMATION_CHKBOX);
source->AddLocalizedString("currentscreenshots",
@@ -608,6 +619,11 @@ void FeedbackHandler::HandleSendReport(const ListValue* list_value) {
(*i++)->GetAsString(&sys_info_checkbox);
bool send_sys_info = (sys_info_checkbox == "true");
+ std::string trace_id_str;
+ (*i++)->GetAsString(&trace_id_str);
+ int trace_id = 0;
+ base::StringToInt(trace_id_str, &trace_id);
+
std::string attached_filename;
scoped_ptr<std::string> attached_filedata;
// If we have an attached file, we'll still have more data in the list.
@@ -645,6 +661,7 @@ void FeedbackHandler::HandleSendReport(const ListValue* list_value) {
feedback_data_->set_attached_filename(attached_filename);
feedback_data_->set_send_sys_info(send_sys_info);
feedback_data_->set_timestamp(timestamp_);
+ feedback_data_->set_trace_id(trace_id);
#endif
// Signal the feedback object that the data from the feedback page has been
« no previous file with comments | « chrome/browser/resources/feedback.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698