# class logbuf

A streambuffer, logging via syslog More...

Definition | `#include <log.h>`
Inherits | std::streambuf (unknown) [public ]
List of all Methods

Annotated List
Files
Globals
Hierarchy
Index

#### Public Methods

- logbuf (int loglevel, int fd = -1)
- void setOn (bool newstate)
- void setLevel (int newlevel)
- bool on ()
- int level ()
- int overflow (int c = EOF)

## Detailed Description

A streambuffer, logging via syslog

logbuf can be used, if you want to use syslog for logging but don't want to change all your nice C++-style output statements in your code.

Here is an example showing the usage of logbuf:

    	openlog("myDaemon", LOG_CONS|LOG_PID, LOG_DAEMON);
    	logbuf ebuf(LOG_ERR, 2);
    	ostream lerr(&ebuf);

    	... some code ...

    	lerr << "Whoops, got an error" << endl;

The second optional argument of the constructor can be used to switch the output destination between syslog and some file. If it is omitted or set to -1, logging can be switched on or off. The initial state is on.

logbuf (int loglevel, int fd = -1)

### logbuf

Constructs a new instance.

Parameters:

loglevel | The log level for this instance. see syslog(3) for symbolic names to use.
fd | An optional file descriptor to use if switched off.

void setOn (bool newstate)

### setOn

Switches loggin on or off.

Parameters:

newstate | The desired state.

void setLevel (int newlevel)

### setLevel

Modifies the loglevel of this instance.

Parameters:

newlevel | The new loglevel.

bool on ()

### on

Retrieve the current state.

Returns: The current state.

int level ()

### level

Retrieves the current loglevel.

Returns: The current loglevel.

int overflow (int c = EOF)

### overflow

Called by the associated ostream to write a character. Stores the character in a buffer and calls syslog(level, buffer) whenever a LF is seen.

Generated by: rrt on drom on Mon Nov 26 16:06:15 2007, using kdoc 2.0a54.