libvmtools/vmtoolsLog.c File Reference

#include "vmtoolsInt.h"
#include <stdio.h>
#include <stdlib.h>
#include <glib/gstdio.h>
#include <unistd.h>
#include <sys/resource.h>
#include <sys/time.h>
#include "system.h"
Include dependency graph for vmtoolsLog.c:

Defines

#define MAX_DOMAIN_LEN   64
#define DEFAULT_HANDLER   (&gHandlers[ARRAYSIZE(gHandlers) - 1])
#define IS_FATAL(level)   ((level) & G_LOG_FLAG_FATAL)
#define SHOULD_LOG(level, data)
#define CLEAR_LOG_HANDLER(handler)

Typedefs

typedef LogHandlerData *(* LogHandlerConfigFn )(const gchar *defaultDomain, const gchar *domain, const gchar *name, GKeyFile *cfg)

Functions

void VMTools_ConfigLogging (const gchar *defaultDomain, GKeyFile *cfg, gboolean force, gboolean reset)
void Debug (const char *fmt,...)
void Log (const char *fmt,...)
void Panic (const char *fmt,...)
void Warning (const char *fmt,...)

Detailed Description

Defines a logging infrastructure for the vmtools library based on glib's logging facilities. Wrap the commonly used logging functions (Log/Warning/Debug), and provides configurability for where logs should go to.

To choose the logging domain for your source file, define G_LOG_DOMAIN before including glib.h.


Define Documentation

#define CLEAR_LOG_HANDLER ( handler   ) 
Value:
do { \
   if ((handler) != NULL) {             \
      g_free((handler)->domain);        \
      (handler)->dtor(handler);         \
   }                                    \
} while (0)

Clean up the contents of a log handler.

#define DEFAULT_HANDLER   (&gHandlers[ARRAYSIZE(gHandlers) - 1])

Alias to retrieve the default handler from the handler array.

#define IS_FATAL ( level   )     ((level) & G_LOG_FLAG_FATAL)

Tells whether the given log level is a fatal error.

#define SHOULD_LOG ( level,
data   ) 
Value:
(IS_FATAL(level) || \
                                 (gLogEnabled && ((data)->mask & (level))))

Tells whether a message should be logged. All fatal messages are logged, regardless of what the configuration says. Otherwise, the log domain's configuration is respected.


Function Documentation

void Debug ( const char *  fmt,
  ... 
)

Logs a message using the G_LOG_LEVEL_DEBUG level.

Parameters:
[in] fmt Log message format.
void Log ( const char *  fmt,
  ... 
)

Logs a message using the G_LOG_LEVEL_MESSAGE level.

Parameters:
[in] fmt Log message format.
void Panic ( const char *  fmt,
  ... 
)

Logs a message using the G_LOG_LEVEL_ERROR level. In the default configuration, this will cause the application to terminate and, if enabled, to dump core.

Parameters:
[in] fmt Log message format.
void Warning ( const char *  fmt,
  ... 
)

Logs a message using the G_LOG_LEVEL_WARNING level.

Parameters:
[in] fmt Log message format.

Generated on 9 Apr 2010 for open-vm-tools 2010.03.20 by  doxygen 1.6.1