1 // Copyright 2013 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 #ifndef CHROME_BROWSER_SYNC_FILE_SYSTEM_LOGGER_H_
6 #define CHROME_BROWSER_SYNC_FILE_SYSTEM_LOGGER_H_
7 
8 #include <string>
9 #include <vector>
10 
11 #include "base/location.h"
12 #include "base/logging.h"
13 #include "components/drive/event_logger.h"
14 
15 namespace sync_file_system {
16 // Originally wanted to use 'logging' here, but it conflicts with
17 // base/logging.h, and breaks DCHECK() and friends.
18 namespace util {
19 
20 // Resets the log.
21 void ClearLog();
22 
23 // Logs a message using printf format.
24 // This function can be called from any thread.
25 void Log(logging::LogSeverity level,
26          const base::Location& location,
27          const char* format,
28          ...) PRINTF_FORMAT(3, 4);
29 
30 // Returns the log history.
31 // This function can be called from any thread.
32 std::vector<drive::EventLogger::Event> GetLogHistory();
33 
34 }  // namespace util
35 }  // namespace sync_file_system
36 
37 #endif  // CHROME_BROWSER_SYNC_FILE_SYSTEM_LOGGER_H_
38