summaryrefslogtreecommitdiffstats
path: root/chromeos
diff options
context:
space:
mode:
authorpneubeck@chromium.org <pneubeck@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-14 08:30:46 +0000
committerpneubeck@chromium.org <pneubeck@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-14 08:30:46 +0000
commit7624d309fc069246db7fdacc88ae5b3829d71c85 (patch)
treed2365f4cbc4bf1ac714ed63348bba73427bc3f92 /chromeos
parent11dce153f7bb6e7c656c182446ef50ed9907c72f (diff)
downloadchromium_src-7624d309fc069246db7fdacc88ae5b3829d71c85.zip
chromium_src-7624d309fc069246db7fdacc88ae5b3829d71c85.tar.gz
chromium_src-7624d309fc069246db7fdacc88ae5b3829d71c85.tar.bz2
Enable network_event_log independent of the new network handlers.
Also, if network_event_log is not initialized, forward to VLOG(2). BUG=162802 Review URL: https://chromiumcodereview.appspot.com/11863008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176645 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chromeos')
-rw-r--r--chromeos/network/network_event_log.cc28
-rw-r--r--chromeos/network/network_state_handler.cc3
2 files changed, 18 insertions, 13 deletions
diff --git a/chromeos/network/network_event_log.cc b/chromeos/network/network_event_log.cc
index 3ed5144..84d6079 100644
--- a/chromeos/network/network_event_log.cc
+++ b/chromeos/network/network_event_log.cc
@@ -23,6 +23,8 @@ struct LogEntry {
std::string ToString() const;
+ bool ContentEquals(const LogEntry& other) const;
+
std::string module;
std::string event;
std::string description;
@@ -52,6 +54,12 @@ std::string LogEntry::ToString() const {
return line;
}
+bool LogEntry::ContentEquals(const LogEntry& other) const {
+ return module == other.module &&
+ event == other.event &&
+ description == other.description;
+}
+
typedef std::deque<LogEntry> LogEntryList;
class NetworkEventLog {
@@ -59,9 +67,7 @@ class NetworkEventLog {
NetworkEventLog() {}
~NetworkEventLog() {}
- void AddEntry(const std::string& module,
- const std::string& event,
- const std::string& description);
+ void AddEntry(const LogEntry& entry);
std::string GetAsString(StringOrder order,
size_t max_events);
@@ -72,14 +78,10 @@ class NetworkEventLog {
DISALLOW_COPY_AND_ASSIGN(NetworkEventLog);
};
-void NetworkEventLog::AddEntry(const std::string& module,
- const std::string& event,
- const std::string& description) {
+void NetworkEventLog::AddEntry(const LogEntry& entry) {
if (!entries_.empty()) {
LogEntry& last = entries_.back();
- if (last.module == module &&
- last.event == event &&
- last.description == description) {
+ if (last.ContentEquals(entry)) {
// Update count and time for identical events to avoid log spam.
++last.count;
last.time = base::Time::Now();
@@ -88,7 +90,6 @@ void NetworkEventLog::AddEntry(const std::string& module,
}
if (entries_.size() >= kMaxNetworkEventLogEntries)
entries_.pop_front();
- LogEntry entry(module, event, description);
entries_.push_back(entry);
VLOG(2) << entry.ToString();
}
@@ -143,9 +144,12 @@ bool IsInitialized() {
void AddEntry(const std::string& module,
const std::string& event,
const std::string& description) {
- if (!g_network_event_log)
+ LogEntry entry(module, event, description);
+ if (!g_network_event_log) {
+ VLOG(2) << entry.ToString();
return;
- g_network_event_log->AddEntry(module, event, description);
+ }
+ g_network_event_log->AddEntry(entry);
}
std::string GetAsString(StringOrder order, size_t max_events) {
diff --git a/chromeos/network/network_state_handler.cc b/chromeos/network/network_state_handler.cc
index 0fc7ec1..0698c3b 100644
--- a/chromeos/network/network_state_handler.cc
+++ b/chromeos/network/network_state_handler.cc
@@ -478,7 +478,8 @@ bool NetworkStateHandler::CheckDefaultNetworkChanged() {
void NetworkStateHandler::OnDefaultNetworkChanged() {
const NetworkState* default_network = DefaultNetwork();
network_event_log::AddEntry(
- kLogModule, "DefaultNetworkChanged", default_network->path());
+ kLogModule, "DefaultNetworkChanged",
+ default_network ? default_network->path() : "Null");
FOR_EACH_OBSERVER(NetworkStateHandlerObserver, observers_,
DefaultNetworkChanged(default_network));
}