summaryrefslogtreecommitdiffstats
path: root/base/logging_win.h
diff options
context:
space:
mode:
authorsiggi@chromium.org <siggi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-04 15:50:49 +0000
committersiggi@chromium.org <siggi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-04 15:50:49 +0000
commit162ac0f02a2a7a6f1909a85a222ab5da3d280d12 (patch)
treeccc49648b2197f598acaeafa4d4f58c0c0048bdd /base/logging_win.h
parentce833284bfd1b0a5db62e0f3c25f48af70ae8784 (diff)
downloadchromium_src-162ac0f02a2a7a6f1909a85a222ab5da3d280d12.zip
chromium_src-162ac0f02a2a7a6f1909a85a222ab5da3d280d12.tar.gz
chromium_src-162ac0f02a2a7a6f1909a85a222ab5da3d280d12.tar.bz2
Integrate ETW with VLOG logging.
This change extends the log severities into the negative for VLOG verbosities. It also keeps track of file/line information and passes it to any registered log handler. The log level is naturally controlled by translating ETW log levels to the severities. BUG=none TEST=none Review URL: http://codereview.chromium.org/4164011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65062 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/logging_win.h')
-rw-r--r--base/logging_win.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/base/logging_win.h b/base/logging_win.h
index f2e6e5a..74f0da0 100644
--- a/base/logging_win.h
+++ b/base/logging_win.h
@@ -21,6 +21,10 @@ enum LogEnableMask {
// If this bit is set in our provider enable mask, we will include
// a stack trace with every log message.
ENABLE_STACK_TRACE_CAPTURE = 0x0001,
+ // If this bit is set in our provider enable mask, the provider will log
+ // a LOG message with only the textual content of the message, and no
+ // stack trace.
+ ENABLE_LOG_MESSAGE_ONLY = 0x0002,
};
// The message types our log event provider generates.
@@ -31,6 +35,12 @@ enum LogMessageTypes {
// A message with a stack trace, followed by the zero-terminated
// message text.
LOG_MESSAGE_WITH_STACKTRACE = 11,
+ // A message with:
+ // a stack trace,
+ // the line number as a four byte integer,
+ // the file as a zero terminated UTF8 string,
+ // the zero-terminated UTF8 message text.
+ LOG_MESSAGE_FULL = 12,
};
// Trace provider class to drive log control and transport
@@ -39,7 +49,9 @@ class LogEventProvider : public EtwTraceProvider {
public:
LogEventProvider();
- static bool LogMessage(int severity, const std::string& message);
+ static bool LogMessage(logging::LogSeverity severity, const char* file,
+ int line, size_t message_start, const std::string& str);
+
static void Initialize(const GUID& provider_name);
static void Uninitialize();