Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: system_logging.h

Issue 6297004: crash-reporter: Add diagnostics to help diagnose failures in the wild (Closed) Base URL: http://git.chromium.org/git/crash-reporter.git@master
Patch Set: clarify Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CRASH_REPORTER_SYSTEM_LOGGING_H_ 5 #ifndef CRASH_REPORTER_SYSTEM_LOGGING_H_
6 #define CRASH_REPORTER_SYSTEM_LOGGING_H_ 6 #define CRASH_REPORTER_SYSTEM_LOGGING_H_
7 7
8 #include <stdarg.h>
8 #include <string> 9 #include <string>
9 10
10 class SystemLogging { 11 class SystemLogging {
11 public: 12 public:
12 virtual void Initialize(const char *ident) = 0; 13 virtual void Initialize(const char *ident) = 0;
13 virtual void LogInfo(const char *format, ...) = 0; 14 virtual void LogInfo(const char *format, ...) = 0;
14 virtual void LogWarning(const char *format, ...) = 0; 15 virtual void LogWarning(const char *format, ...) = 0;
15 virtual void LogError(const char *format, ...) = 0; 16 virtual void LogError(const char *format, ...) = 0;
17 virtual void set_accumulator(std::string *accumulator) = 0;
16 }; 18 };
17 19
20 // SystemLoggingImpl implements SystemLogging but adds the
21 // capability of accumulating the log to a STL string.
18 class SystemLoggingImpl : public SystemLogging { 22 class SystemLoggingImpl : public SystemLogging {
19 public: 23 public:
20 SystemLoggingImpl(); 24 SystemLoggingImpl();
21 virtual ~SystemLoggingImpl(); 25 virtual ~SystemLoggingImpl();
22 virtual void Initialize(const char *ident); 26 virtual void Initialize(const char *ident);
23 virtual void LogInfo(const char *format, ...); 27 virtual void LogInfo(const char *format, ...);
24 virtual void LogWarning(const char *format, ...); 28 virtual void LogWarning(const char *format, ...);
25 virtual void LogError(const char *format, ...); 29 virtual void LogError(const char *format, ...);
30 virtual void set_accumulator(std::string *accumulator) {
31 accumulator_ = accumulator;
32 }
26 private: 33 private:
27 static std::string identity_; 34 static std::string identity_;
35 static std::string *accumulator_;
36 void LogWithLevel(int level, const char *format,
37 va_list arg_list);
28 }; 38 };
29 39
30 #endif // CRASH_REPORTER_SYSTEM_LOGGING_H_ 40 #endif // CRASH_REPORTER_SYSTEM_LOGGING_H_
OLDNEW
« no previous file with comments | « crash_reporter.cc ('k') | system_logging.cc » ('j') | system_logging.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698