| Index: common/event_logger.h
|
| diff --git a/common/event_logger.h b/common/event_logger.h
|
| deleted file mode 100644
|
| index 8a2c89f56412762ee03f3d03994da5b784b8473a..0000000000000000000000000000000000000000
|
| --- a/common/event_logger.h
|
| +++ /dev/null
|
| @@ -1,151 +0,0 @@
|
| -// Copyright 2007-2009 Google Inc.
|
| -//
|
| -// Licensed under the Apache License, Version 2.0 (the "License");
|
| -// you may not use this file except in compliance with the License.
|
| -// You may obtain a copy of the License at
|
| -//
|
| -// http://www.apache.org/licenses/LICENSE-2.0
|
| -//
|
| -// Unless required by applicable law or agreed to in writing, software
|
| -// distributed under the License is distributed on an "AS IS" BASIS,
|
| -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| -// See the License for the specific language governing permissions and
|
| -// limitations under the License.
|
| -// ========================================================================
|
| -//
|
| -// Event Logger provides a simple mechanism to log events to Windows
|
| -// Event Log. A few overloads are defined to simplify logging by reducing
|
| -// the number of parameters that must be provided. The overloads are
|
| -// implemented in terms of the EventLogger class.
|
| -//
|
| -// The event logging works in both debug and optimized builds. This is not
|
| -// a substitute for the debug log. Instead it is a way to provide some level
|
| -// of transparency into what Google Update is doing at runtime and to help
|
| -// diagnosing end user issues.
|
| -//
|
| -// Familiarity with Windows Event Log is helpful in understanding how
|
| -// these wrappers are to be used. Windows Event Log uses localized strings
|
| -// in a message file and it substitutes string insterts that correspond to
|
| -// formatting characters in the message string. In addtion, the log is able
|
| -// to record raw data, herein provided by a context string, which may be
|
| -// useful to provide some context around the formatted message.
|
| -
|
| -// TODO(omaha): Provide some control for the verbosity level in the log.
|
| -// TODO(omaha): Perhaps there is a better way to define the overloaded
|
| -// wrappers below. I chose a compromise between the easy of use while not
|
| -// mixing up different string parameters that have different meanings.
|
| -
|
| -#ifndef OMAHA_COMMON_EVENT_LOGGER_H_
|
| -#define OMAHA_COMMON_EVENT_LOGGER_H_
|
| -
|
| -#include <atlstr.h>
|
| -#include "base/basictypes.h"
|
| -
|
| -namespace omaha {
|
| -
|
| -void LogEventHelper(WORD type, DWORD id, size_t count, const TCHAR** strings,
|
| - const TCHAR* ctx);
|
| -
|
| -// Logs an event to the Application log
|
| -inline void LogEvent(WORD type, DWORD id) {
|
| - LogEventHelper(type, id, 0, NULL, NULL);
|
| -}
|
| -
|
| -inline void LogEvent(WORD type, DWORD id, const TCHAR* s) {
|
| - const TCHAR* strings[] = {s};
|
| - LogEventHelper(type, id, arraysize(strings), strings, NULL);
|
| -}
|
| -
|
| -inline void LogEvent(WORD type, DWORD id, const TCHAR* s1, const TCHAR* s2) {
|
| - const TCHAR* strings[] = {s1, s2};
|
| - LogEventHelper(type, id, arraysize(strings), strings, NULL);
|
| -}
|
| -
|
| -inline void LogEvent(WORD type, DWORD id, const TCHAR* s1, const TCHAR* s2,
|
| - const TCHAR* s3) {
|
| - const TCHAR* strings[] = {s1, s2, s3};
|
| - LogEventHelper(type, id, arraysize(strings), strings, NULL);
|
| -}
|
| -
|
| -// Logs an event to the Application log with a context string.
|
| -inline void LogEventContext(WORD type, DWORD id, const TCHAR* ctx) {
|
| - LogEventHelper(type, id, 0, NULL, ctx);
|
| -}
|
| -
|
| -inline void LogEventContext(WORD type, DWORD id, const TCHAR* s,
|
| - const TCHAR* ctx) {
|
| - const TCHAR* strings[] = {s};
|
| - LogEventHelper(type, id, arraysize(strings), strings, ctx);
|
| -}
|
| -
|
| -inline void LogEventContext(WORD type, DWORD id, const TCHAR* s1,
|
| - const TCHAR* s2, const TCHAR* ctx) {
|
| - const TCHAR* strings[] = {s1, s2};
|
| - LogEventHelper(type, id, arraysize(strings), strings, ctx);
|
| -}
|
| -
|
| -inline void LogEventContext(WORD type, DWORD id, const TCHAR* s1,
|
| - const TCHAR* s2, const TCHAR* s3,
|
| - const TCHAR* ctx) {
|
| - const TCHAR* strings[] = {s1, s2, s3};
|
| - LogEventHelper(type, id, arraysize(strings), strings, ctx);
|
| -}
|
| -
|
| -class EventLogger {
|
| - public:
|
| - // Creates an event source for the "Application" log so that EventViewer can
|
| - // map event identifier codes to message strings.
|
| - static HRESULT AddEventSource(
|
| - const TCHAR* src_name, // Event source name.
|
| - const TCHAR* msg_dll_path); // Path for message DLL.
|
| -
|
| - static HRESULT RemoveEventSource(
|
| - const TCHAR* src_name); // Event source name.
|
| -
|
| - // Writes an entry at the end of event log that contains the source name.
|
| - static HRESULT ReportEvent(
|
| - const TCHAR* src_name, // Event source name.
|
| - WORD type, // Type of the event to be logged.
|
| - WORD category, // Event category.
|
| - DWORD id, // Event identifier.
|
| - WORD count, // Count of insert strings.
|
| - const TCHAR** strings, // Insert strings.
|
| - size_t buf_size, // Size of binary data to append.
|
| - void* buffer); // Buffer containing the binary data.
|
| -
|
| - // Reads the topmost event log record.
|
| - static HRESULT ReadLastEvent(const TCHAR* src_name, EVENTLOGRECORD* rec);
|
| -
|
| - // Default name for the event source.
|
| - static const TCHAR* const kSourceName;
|
| -
|
| - // Default event category.
|
| - static const WORD kDefaultCategory = 0;
|
| -};
|
| -
|
| -class GoogleUpdateLogEvent {
|
| - public:
|
| - GoogleUpdateLogEvent(int type, int id, bool is_machine)
|
| - : type_(type),
|
| - id_(id),
|
| - is_machine_(is_machine) {}
|
| - GoogleUpdateLogEvent() : type_(0), id_(0), is_machine_(false) {}
|
| - ~GoogleUpdateLogEvent() {}
|
| - void WriteEvent();
|
| - void set_event_desc(const CString& desc) { event_desc_ = desc; }
|
| - void set_event_text(const CString& text) { event_text_ = text; }
|
| -
|
| - private:
|
| - CString event_desc_;
|
| - CString event_text_;
|
| - int type_;
|
| - int id_;
|
| - bool is_machine_;
|
| -
|
| - DISALLOW_EVIL_CONSTRUCTORS(GoogleUpdateLogEvent);
|
| -};
|
| -
|
| -} // namespace omaha
|
| -
|
| -#endif // OMAHA_COMMON_EVENT_LOGGER_H_
|
| -
|
|
|