diff options
author | mmenke@chromium.org <mmenke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-17 18:53:02 +0000 |
---|---|---|
committer | mmenke@chromium.org <mmenke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-17 18:53:02 +0000 |
commit | 9eb8cdff6c4e93d2609ee9a12cbd6b3dfa8b7d7f (patch) | |
tree | a3024687f2041d1f464aeb073d289c1bb7daae74 /chrome/browser/net | |
parent | d767b2c624529faef3bf78230f8873e91b244868 (diff) | |
download | chromium_src-9eb8cdff6c4e93d2609ee9a12cbd6b3dfa8b7d7f.zip chromium_src-9eb8cdff6c4e93d2609ee9a12cbd6b3dfa8b7d7f.tar.gz chromium_src-9eb8cdff6c4e93d2609ee9a12cbd6b3dfa8b7d7f.tar.bz2 |
Adds memory cache logging, and updates disk cache logging.
Memory and disk cache use the same set of events, with the same parameters (Though the disk cache has a couple events the memory cache does not). Most disk cache events were renamed so as to no longer imply a connection to the disk cache, and all disk cache-related NetLog parameter class definitions were moved to a new file, since they're shared by both entry type.
BUG=59382
TEST=none
Review URL: http://codereview.chromium.org/6613027
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78572 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/net')
-rw-r--r-- | chrome/browser/net/passive_log_collector.cc | 28 | ||||
-rw-r--r-- | chrome/browser/net/passive_log_collector.h | 17 |
2 files changed, 44 insertions, 1 deletions
diff --git a/chrome/browser/net/passive_log_collector.cc b/chrome/browser/net/passive_log_collector.cc index a4f8b5b..3cc1353 100644 --- a/chrome/browser/net/passive_log_collector.cc +++ b/chrome/browser/net/passive_log_collector.cc @@ -71,6 +71,7 @@ PassiveLogCollector::PassiveLogCollector() &dns_request_tracker_; trackers_[net::NetLog::SOURCE_HOST_RESOLVER_IMPL_JOB] = &dns_job_tracker_; trackers_[net::NetLog::SOURCE_DISK_CACHE_ENTRY] = &disk_cache_entry_tracker_; + trackers_[net::NetLog::SOURCE_MEMORY_CACHE_ENTRY] = &mem_cache_entry_tracker_; trackers_[net::NetLog::SOURCE_HTTP_STREAM_JOB] = &http_stream_job_tracker_; // Make sure our mapping is up-to-date. for (size_t i = 0; i < arraysize(trackers_); ++i) @@ -578,7 +579,32 @@ PassiveLogCollector::DiskCacheEntryTracker::DoAddEntry( AddEntryToSourceInfo(entry, out_info); // If the request has ended, move it to the graveyard. - if (entry.type == net::NetLog::TYPE_DISK_CACHE_ENTRY && + if (entry.type == net::NetLog::TYPE_DISK_CACHE_ENTRY_IMPL && + entry.phase == net::NetLog::PHASE_END) { + return ACTION_MOVE_TO_GRAVEYARD; + } + + return ACTION_NONE; +} + +//---------------------------------------------------------------------------- +// MemCacheEntryTracker +//---------------------------------------------------------------------------- + +const size_t PassiveLogCollector::MemCacheEntryTracker::kMaxNumSources = 100; +const size_t PassiveLogCollector::MemCacheEntryTracker::kMaxGraveyardSize = 25; + +PassiveLogCollector::MemCacheEntryTracker::MemCacheEntryTracker() + : SourceTracker(kMaxNumSources, kMaxGraveyardSize, NULL) { +} + +PassiveLogCollector::SourceTracker::Action +PassiveLogCollector::MemCacheEntryTracker::DoAddEntry( + const ChromeNetLog::Entry& entry, SourceInfo* out_info) { + AddEntryToSourceInfo(entry, out_info); + + // If the request has ended, move it to the graveyard. + if (entry.type == net::NetLog::TYPE_DISK_CACHE_MEM_ENTRY_IMPL && entry.phase == net::NetLog::PHASE_END) { return ACTION_MOVE_TO_GRAVEYARD; } diff --git a/chrome/browser/net/passive_log_collector.h b/chrome/browser/net/passive_log_collector.h index 6c39ae9..d407b86 100644 --- a/chrome/browser/net/passive_log_collector.h +++ b/chrome/browser/net/passive_log_collector.h @@ -312,6 +312,22 @@ class PassiveLogCollector : public ChromeNetLog::ThreadSafeObserver { DISALLOW_COPY_AND_ASSIGN(DiskCacheEntryTracker); }; + // Tracks the log entries for the last seen SOURCE_DISK_CACHE_ENTRY. + class MemCacheEntryTracker : public SourceTracker { + public: + static const size_t kMaxNumSources; + static const size_t kMaxGraveyardSize; + + MemCacheEntryTracker(); + + protected: + virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, + SourceInfo* out_info); + + private: + DISALLOW_COPY_AND_ASSIGN(MemCacheEntryTracker); + }; + class HttpStreamJobTracker : public SourceTracker { public: static const size_t kMaxNumSources; @@ -363,6 +379,7 @@ class PassiveLogCollector : public ChromeNetLog::ThreadSafeObserver { DNSRequestTracker dns_request_tracker_; DNSJobTracker dns_job_tracker_; DiskCacheEntryTracker disk_cache_entry_tracker_; + MemCacheEntryTracker mem_cache_entry_tracker_; HttpStreamJobTracker http_stream_job_tracker_; // This array maps each NetLog::SourceType to one of the tracker instances |