Index: content/renderer/renderer_webstoragearea_impl.cc |
diff --git a/content/renderer/renderer_webstoragearea_impl.cc b/content/renderer/renderer_webstoragearea_impl.cc |
index d3063ecf9af3a4df50e982dfc942aa55e6819219..bd4d03b7b84c8410c9805afc6b31c80b19582ee1 100644 |
--- a/content/renderer/renderer_webstoragearea_impl.cc |
+++ b/content/renderer/renderer_webstoragearea_impl.cc |
@@ -4,6 +4,8 @@ |
#include "content/renderer/renderer_webstoragearea_impl.h" |
+#include "base/metrics/histogram.h" |
+#include "base/time.h" |
#include "content/common/dom_storage_messages.h" |
#include "content/renderer/render_thread_impl.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebStorageNamespace.h" |
@@ -25,22 +27,28 @@ RendererWebStorageAreaImpl::~RendererWebStorageAreaImpl() { |
unsigned RendererWebStorageAreaImpl::length() { |
unsigned length; |
+ base::Time start = base::Time::Now(); |
RenderThreadImpl::current()->Send( |
new DOMStorageHostMsg_Length(storage_area_id_, &length)); |
+ UMA_HISTOGRAM_TIMES("DOMStorage.length", base::Time::Now() - start); |
darin (slow to review)
2011/11/01 05:31:49
it seems like we should have a convenience macro f
cbentzel
2011/11/01 11:37:52
Yes. I'll see how common this is. Most of the timi
|
return length; |
} |
WebString RendererWebStorageAreaImpl::key(unsigned index) { |
NullableString16 key; |
+ base::Time start = base::Time::Now(); |
RenderThreadImpl::current()->Send( |
new DOMStorageHostMsg_Key(storage_area_id_, index, &key)); |
+ UMA_HISTOGRAM_TIMES("DOMStorage.key", base::Time::Now() - start); |
return key; |
} |
WebString RendererWebStorageAreaImpl::getItem(const WebString& key) { |
NullableString16 value; |
+ base::Time start = base::Time::Now(); |
RenderThreadImpl::current()->Send( |
new DOMStorageHostMsg_GetItem(storage_area_id_, key, &value)); |
+ UMA_HISTOGRAM_TIMES("DOMStorage.getItem", base::Time::Now() - start); |
return value; |
} |
@@ -53,21 +61,27 @@ void RendererWebStorageAreaImpl::setItem( |
return; |
} |
NullableString16 old_value; |
+ base::Time start = base::Time::Now(); |
RenderThreadImpl::current()->Send(new DOMStorageHostMsg_SetItem( |
storage_area_id_, key, value, url, &result, &old_value)); |
+ UMA_HISTOGRAM_TIMES("DOMStorage.setItem", base::Time::Now() - start); |
old_value_webkit = old_value; |
} |
void RendererWebStorageAreaImpl::removeItem( |
const WebString& key, const WebURL& url, WebString& old_value_webkit) { |
NullableString16 old_value; |
+ base::Time start = base::Time::Now(); |
RenderThreadImpl::current()->Send( |
new DOMStorageHostMsg_RemoveItem(storage_area_id_, key, url, &old_value)); |
+ UMA_HISTOGRAM_TIMES("DOMStorage.removeItem", base::Time::Now() - start); |
old_value_webkit = old_value; |
} |
void RendererWebStorageAreaImpl::clear( |
const WebURL& url, bool& cleared_something) { |
+ base::Time start = base::Time::Now(); |
RenderThreadImpl::current()->Send( |
new DOMStorageHostMsg_Clear(storage_area_id_, url, &cleared_something)); |
+ UMA_HISTOGRAM_TIMES("DOMStorage.clear", base::Time::Now() - start); |
} |