xvr2::Syslog Class Reference

#include <Syslog.h>

Inheritance diagram for xvr2::Syslog:

Inheritance graph
[legend]

List of all members.


Detailed Description

This class handles the Syslog daemon.

At the moment this class is very system dependent for the log types accepted, right now we are using the current C library implementation in your platform, under glibc it is an ORed combination of facility and level, the facility can be any one of:

LOG_AUTH security/authorization messages (DEPRECATED Use LOG_AUTHPRIV instead)
LOG_AUTHPRIV security/authorization messages (private)
LOG_CRON clock daemon (cron and at)
LOG_DAEMON system daemons without separate facility value
LOG_FTP ftp daemon
LOG_KERN kernel messages
LOG_LOCAL0 through LOG_LOCAL7 reserved for local use
LOG_LPR line printer subsystem
LOG_MAIL mail subsystem
LOG_NEWS USENET news subsystem
LOG_SYSLOG messages generated internally by syslogd
LOG_USER (default) generic user-level messages
LOG_UUCP UUCP Subsystem

These are the values for the level:
LOG_EMERG system is unusable
LOG_ALERT action must be taken immediately
LOG_CRIT critical conditions
LOG_ERR error conditions
LOG_WARNING warning conditions
LOG_NOTICE normal, but significant, condition
LOG_INFO informational message
LOG_DEBUG debug-level message

IN GLIBC THE ABOVE VALUES ARE DEFINED IN syslog.h

Todo:
Verify syslog portability

Definition at line 77 of file Syslog.h.


Public Member Functions

 Syslog ()
 Default constructor.
 ~Syslog ()
void getKernelInfo ()
 This method will update the name and information about the current running kernel.
const char * getUnixName ()
 Use this method to retreives the name of the UNIX version you are currently using.
const char * getNodeName ()
 This method will give you the nodename of your current host machine.
const char * getKernelRelease ()
 This will return your current kernel release string.
const char * getKernelReleaseVersion ()
 This will return your current kernel release version string.
const char * getHostMachine ()
 This will return your current architecture description.
virtual const char * getClassName ()
 Returns the name of the current class.
virtual std::string toString ()

Static Public Member Functions

static void Log (const char *logmsg, int logtype=-666)
 This will append a new log message to the syslog daemon queue if you use the default logtype value it will use the facility LOG_USER and the priority LOG_INFO.
static void Log (const String &logmsg, int logtype=-666)
 This will append a new log message to the syslog daemon queue if you use the default logtype value it will use the facility LOG_USER and the priority LOG_INFO.
static int getuid ()
 Obtains the current (running) user id.
static int getuid (const String &username)
 Obtain uid from username.
static int getgid ()
 Obtain username from uid TODO: You must create the memory allocation classes if you want to implement the new version of getuid(); DONT FORGET IT!!!!
static int getgid (const String &groupname)
 Obtain uid from username.
static int chown (const String &fname, int userid, int groupid=-1)
 Obtain username from uid TODO: You must create the memory allocation classes if you want to implement the new version of getgid(); DONT FORGET IT!!!!
static int chown (const String &fname, const String &owner)
 Changes the owner of the file by its username.
static int chgrp (const String &fname, int userid)
 Changes the group owner of the file by its numeric userid.
static int chgrp (const String &fname, const String &groupname)
 Changes the group owner of the file by its groupname.
static void usleep (UInt32 usec)
 This will return how many CPUs are installed in the system.
static void debugmsg (Object *obj, const char *msg, int linenumber=__LINE__, const char *srcfile=__FILE__)
 Will print a debug message to the screen.
static void debugmsgln (Object *obj, const char *msg, int linenumber=__LINE__, const char *srcfile=__FILE__)

Protected Member Functions

void destroyAll ()
 Internal destructor function DONT USE IT.

Protected Attributes

char * sysname
 Pointer to system name.
char * nodename
char * release
char * k_version
char * machine
Mutex OSMutex
std::string __cls_name

Friends

std::ostream & operator<< (std::ostream &stream, const Object &s)

Constructor & Destructor Documentation

xvr2::Syslog::Syslog (  ) 

Default constructor.

xvr2::Syslog::~Syslog (  ) 


Member Function Documentation

static void xvr2::Syslog::Log ( const char *  logmsg,
int  logtype = -666 
) [static]

This will append a new log message to the syslog daemon queue if you use the default logtype value it will use the facility LOG_USER and the priority LOG_INFO.

static void xvr2::Syslog::Log ( const String logmsg,
int  logtype = -666 
) [static]

This will append a new log message to the syslog daemon queue if you use the default logtype value it will use the facility LOG_USER and the priority LOG_INFO.

void xvr2::Unix::destroyAll (  )  [protected, inherited]

Internal destructor function DONT USE IT.

static int xvr2::Unix::getuid (  )  [static, inherited]

Obtains the current (running) user id.

static int xvr2::Unix::getuid ( const String username  )  [static, inherited]

Obtain uid from username.

static int xvr2::Unix::getgid (  )  [static, inherited]

Obtain username from uid TODO: You must create the memory allocation classes if you want to implement the new version of getuid(); DONT FORGET IT!!!!

Obtains the current (running) user id

static int xvr2::Unix::getgid ( const String groupname  )  [static, inherited]

Obtain uid from username.

static int xvr2::Unix::chown ( const String fname,
int  userid,
int  groupid = -1 
) [static, inherited]

Obtain username from uid TODO: You must create the memory allocation classes if you want to implement the new version of getgid(); DONT FORGET IT!!!!

Changes the owner of the file by its numeric userid

static int xvr2::Unix::chown ( const String fname,
const String owner 
) [static, inherited]

Changes the owner of the file by its username.

static int xvr2::Unix::chgrp ( const String fname,
int  userid 
) [static, inherited]

Changes the group owner of the file by its numeric userid.

static int xvr2::Unix::chgrp ( const String fname,
const String groupname 
) [static, inherited]

Changes the group owner of the file by its groupname.

void xvr2::Unix::getKernelInfo (  )  [inherited]

This method will update the name and information about the current running kernel.

const char* xvr2::Unix::getUnixName (  )  [inherited]

Use this method to retreives the name of the UNIX version you are currently using.

const char* xvr2::Unix::getNodeName (  )  [inherited]

This method will give you the nodename of your current host machine.

const char* xvr2::Unix::getKernelRelease (  )  [inherited]

This will return your current kernel release string.

const char* xvr2::Unix::getKernelReleaseVersion (  )  [inherited]

This will return your current kernel release version string.

const char* xvr2::Unix::getHostMachine (  )  [inherited]

This will return your current architecture description.

static void xvr2::System::usleep ( UInt32  usec  )  [static, inherited]

This will return how many CPUs are installed in the system.

This will return the CPU speed in megahertz Will return the total amount of system memory Will return the total amount of free system memory Will freeze the software for usec microseconds

virtual const char* xvr2::Object::getClassName (  )  [virtual, inherited]

Returns the name of the current class.

static void xvr2::Object::debugmsg ( Object obj,
const char *  msg,
int  linenumber = __LINE__,
const char *  srcfile = __FILE__ 
) [static, inherited]

Will print a debug message to the screen.

static void xvr2::Object::debugmsgln ( Object obj,
const char *  msg,
int  linenumber = __LINE__,
const char *  srcfile = __FILE__ 
) [static, inherited]

virtual std::string xvr2::Object::toString (  )  [virtual, inherited]


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  stream,
const Object s 
) [friend, inherited]


Member Data Documentation

char* xvr2::Unix::sysname [protected, inherited]

Pointer to system name.

Definition at line 28 of file Unix.h.

char* xvr2::Unix::nodename [protected, inherited]

Definition at line 29 of file Unix.h.

char* xvr2::Unix::release [protected, inherited]

Definition at line 30 of file Unix.h.

char* xvr2::Unix::k_version [protected, inherited]

Definition at line 31 of file Unix.h.

char* xvr2::Unix::machine [protected, inherited]

Definition at line 32 of file Unix.h.

Mutex xvr2::Unix::OSMutex [protected, inherited]

Definition at line 34 of file Unix.h.

std::string xvr2::Object::__cls_name [protected, inherited]

Definition at line 30 of file Object.h.


The documentation for this class was generated from the following file:

Generated on Fri Jun 20 22:55:57 2008 for X-VR2 SDK by  doxygen 1.5.5