Logo
~Sockets~
~Examples~
~Contact~


StdoutLog Class Reference
[Log help classes]

StdLog implementation, logs to stdout. More...

#include <StdoutLog.h>

Inheritance diagram for StdoutLog:

Inheritance graph
[legend]
Collaboration diagram for StdoutLog:

Collaboration graph
[legend]
List of all members.

Public Member Functions

void error (ISocketHandler *, Socket *, const std::string &call, int err, const std::string &sys_err, loglevel_t)

Detailed Description

StdLog implementation, logs to stdout.

Definition at line 43 of file StdoutLog.h.


Member Function Documentation

void StdoutLog::error ( ISocketHandler ,
Socket ,
const std::string &  call,
int  err,
const std::string &  sys_err,
loglevel_t   
) [virtual]

Implements StdLog.

Definition at line 44 of file StdoutLog.cpp.

References LOG_LEVEL_ERROR, LOG_LEVEL_FATAL, LOG_LEVEL_INFO, and LOG_LEVEL_WARNING.

00045 {
00046         time_t t = time(NULL);
00047         struct tm tp;
00048 #ifdef _WIN32
00049         memcpy(&tp, localtime(&t), sizeof(tp));
00050 #else
00051         localtime_r(&t, &tp);
00052 #endif
00053         std::string level;
00054         
00055         switch (lvl)
00056         {
00057         case LOG_LEVEL_WARNING:
00058                 level = "Warning";
00059                 break;
00060         case LOG_LEVEL_ERROR:
00061                 level = "Error";
00062                 break;
00063         case LOG_LEVEL_FATAL:
00064                 level = "Fatal";
00065                 break;
00066         case LOG_LEVEL_INFO:
00067                 level = "Info";
00068                 break;
00069         }
00070         if (sock)
00071         {
00072                 printf("%d-%02d-%02d %02d:%02d:%02d :: fd %d :: %s: %d %s (%s)\n",
00073                         tp.tm_year + 1900,
00074                         tp.tm_mon + 1,
00075                         tp.tm_mday,
00076                         tp.tm_hour,tp.tm_min,tp.tm_sec,
00077                         sock -> GetSocket(),
00078                         call.c_str(),err,sys_err.c_str(),level.c_str());
00079         }
00080         else
00081         {
00082                 printf("%d-%02d-%02d %02d:%02d:%02d :: %s: %d %s (%s)\n",
00083                         tp.tm_year + 1900,
00084                         tp.tm_mon + 1,
00085                         tp.tm_mday,
00086                         tp.tm_hour,tp.tm_min,tp.tm_sec,
00087                         call.c_str(),err,sys_err.c_str(),level.c_str());
00088         }
00089 }


The documentation for this class was generated from the following files:
Page, code, and content Copyright (C) 2007 by Anders Hedström
Generated for C++ Sockets by  doxygen 1.4.4