1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "chrome/browser/chromeos/system_logs/network_event_log_source.h"
6
7#include "base/message_loop/message_loop.h"
8#include "chromeos/network/network_event_log.h"
9#include "content/public/browser/browser_thread.h"
10
11namespace system_logs {
12
13const char kNetworkEventLogEntry[] = "network_event_log";
14
15void NetworkEventLogSource::Fetch(const SysLogsSourceCallback& callback) {
16  DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
17  DCHECK(!callback.is_null());
18
19  scoped_ptr<SystemLogsResponse> response(new SystemLogsResponse);
20  const int kMaxNetworkEventsForAboutSystem = 400;
21  (*response)[kNetworkEventLogEntry] =
22      chromeos::network_event_log::GetAsString(
23          chromeos::network_event_log::OLDEST_FIRST,
24          "time,file,level,desc",
25          chromeos::network_event_log::kDefaultLogLevel,
26          kMaxNetworkEventsForAboutSystem);
27  callback.Run(response.get());
28}
29
30}  // namespace system_logs
31