Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields  

clawsoft::Syslog Class Reference

#include <Syslog.h>

Inheritance diagram for clawsoft::Syslog:

Inheritance graph
[legend]
Collaboration diagram for clawsoft::Syslog:

Collaboration graph
[legend]

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

STATUS: READY TO TEST

TODO:
Add portability for BSD based unices
verify that the glibc function syslog is reentrant


Public Methods

 Syslog ()
 Default constructor.

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.

const char * getClassName ()
 Returns the name of the current class.


Static Public Methods

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.

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.

int getuid ()
 Obtains the current (running) user id.

int getuid (const String &username)
 Obtain uid from username.

int getgid ()
 Obtains the current (running) user id.

int getgid (const String &groupname)
 Obtain uid from username.

int chown (const String &fname, int userid, int groupid=-1)
 Changes the owner of the file by its numeric userid.

int chown (const String &fname, const String &owner)
 Changes the owner of the file by its username.

int chgrp (const String &fname, int userid)
 Changes the group owner of the file by its numeric userid.

int chgrp (const String &fname, const String &groupname)
 Changes the group owner of the file by its groupname.

int installedCPUs ()
 This will return how many CPUs are installed in the system.

double cpuSpeed ()
 This will return the CPU speed in megahertz.

int totalMemory ()
 Will return the total amount of system memory.

int freeMemory ()
 Will return the total amount of free system memory.

void usleep (Uint32 usec)
 Will freeze the software for usec microseconds.


Protected Methods

void setClassName (const char *n)
 Call this method when you need to set the name of the class you're creating, typically in it's constructor, remember that you must set the classname for every class you create, that way you can have more information while debugging.


Protected Attributes

char * sysname
 Pointer to system name.


Constructor & Destructor Documentation

clawsoft::Syslog::Syslog  
 

Default constructor.


Member Function Documentation

int clawsoft::Unix::chgrp const String   fname,
const String   groupname
[static, inherited]
 

Changes the group owner of the file by its groupname.

int clawsoft::Unix::chgrp const String   fname,
int    userid
[static, inherited]
 

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

int clawsoft::Unix::chown const String   fname,
const String   owner
[static, inherited]
 

Changes the owner of the file by its username.

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

Changes the owner of the file by its numeric userid.

double clawsoft::System::cpuSpeed   [static, inherited]
 

This will return the CPU speed in megahertz.

int clawsoft::System::freeMemory   [static, inherited]
 

Will return the total amount of free system memory.

const char * clawsoft::Object::getClassName   [inherited]
 

Returns the name of the current class.

int clawsoft::Unix::getgid const String   groupname [static, inherited]
 

Obtain uid from username.

int clawsoft::Unix::getgid   [static, inherited]
 

Obtains the current (running) user id.

const char * clawsoft::Unix::getHostMachine   [inherited]
 

This will return your current architecture description.

void clawsoft::Unix::getKernelInfo   [inherited]
 

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

const char * clawsoft::Unix::getKernelRelease   [inherited]
 

This will return your current kernel release string.

const char * clawsoft::Unix::getKernelReleaseVersion   [inherited]
 

This will return your current kernel release version string.

const char * clawsoft::Unix::getNodeName   [inherited]
 

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

int clawsoft::Unix::getuid const String   username [static, inherited]
 

Obtain uid from username.

int clawsoft::Unix::getuid   [static, inherited]
 

Obtains the current (running) user id.

const char * clawsoft::Unix::getUnixName   [inherited]
 

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

int clawsoft::System::installedCPUs   [static, inherited]
 

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

void clawsoft::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 clawsoft::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.

void clawsoft::Object::setClassName const char *    n [protected, inherited]
 

Call this method when you need to set the name of the class you're creating, typically in it's constructor, remember that you must set the classname for every class you create, that way you can have more information while debugging.

int clawsoft::System::totalMemory   [static, inherited]
 

Will return the total amount of system memory.

void clawsoft::System::usleep Uint32    usec [static, inherited]
 

Will freeze the software for usec microseconds.


Field Documentation

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

Pointer to system name.


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

Authors:

Juan V. Guerrero
Jannette C. Mejia
Juan C. Guevara

Powered by:

SourceForgeLogo