Log4g Reference Manual | ||||
---|---|---|---|---|
Top | Description |
Log4gAsyncAppender; Log4gAsyncAppenderClass; void log4g_async_appender_add_appender (Log4gAppender *base
,Log4gAppender *appender
); const GArray * log4g_async_appender_get_all_appenders (Log4gAppender *base
); Log4gAppender * log4g_async_appender_get_appender (Log4gAppender *base
,const gchar *name
); gboolean log4g_async_appender_is_attached (Log4gAppender *base
,Log4gAppender *appender
); void log4g_async_appender_remove_all_appenders (Log4gAppender *base
); void log4g_async_appender_remove_appender (Log4gAppender *base
,Log4gAppender *appender
); void log4g_async_appender_remove_appender_name (Log4gAppender *base
,const gchar *name
);
The async appender will collect events sent to it and then dispatch them to all appenders that are attached to it. Multiple appenders may be attached to an async appender.
The async appender uses a separate thread to serve the events in its
buffer. You must call g_thread_init()
before attempting to configure an
async appender.
Async appenders accept the following properties:
blocking
buffer-size
The blocking property determines the behavior of the async appender when
its log event buffer is full. If blocking is TRUE
then the client will
block until there is room in the buffer. Otherwise the client will not
block and the log event will be dropped. In non-blocking mode the async
appender will keep a summary of all dropped logging events. The default
value is TRUE
.
The buffer-size property determines how many messages are allowed in the buffer before the client will block. The default value is 128.
If blocking is FALSE
then the value of buffer-size has no effect.
typedef struct { } Log4gAsyncAppender;
The Log4gAsyncAppender structure does not have any public members.
typedef struct { } Log4gAsyncAppenderClass;
The Log4gAsyncAppenderClass structure does not have any public members.
void log4g_async_appender_add_appender (Log4gAppender *base
,Log4gAppender *appender
);
Add an appender to an async appender.
If appender
is already attached to base
then this function does not do
anything.
See
: Log4gAppenderAttachableInterface
|
An async appender object. |
|
The appender to add. |
Since 0.1
const GArray * log4g_async_appender_get_all_appenders
(Log4gAppender *base
);
Retrieve an array of appenders attached to an async appender.
See
: Log4gAppenderAttachableInterface
|
An async appender object. |
Returns : |
An array of appenders attached to base , or NULL if there are
none. The caller is responsible for calling g_array_free() for the
returned value.
|
Since 0.1
Log4gAppender * log4g_async_appender_get_appender (Log4gAppender *base
,const gchar *name
);
Retrieve an attached named appender.
See
: Log4gAppenderAttachableInterface
|
An async appender object. |
|
The name of the appender to look up. |
Returns : |
The appender named name or NULL if name is not found.
|
Since 0.1
gboolean log4g_async_appender_is_attached (Log4gAppender *base
,Log4gAppender *appender
);
Determine if an appender is attached.
See
: Log4gAppenderAttachableInterface
|
An async appender object. |
|
An appender. |
Returns : |
TRUE is appender is attached to base , FALSE otherwise.
|
Since 0.1
void log4g_async_appender_remove_all_appenders
(Log4gAppender *base
);
Remove all attached appenders.
See
: Log4gAppenderAttachableInterface
|
An async appender object. |
Since 0.1
void log4g_async_appender_remove_appender (Log4gAppender *base
,Log4gAppender *appender
);
Remove an attached appender.
See
: Log4gAppenderAttachableInterface
|
An async appender object. |
|
The appender to remove. |
Since 0.1
void log4g_async_appender_remove_appender_name (Log4gAppender *base
,const gchar *name
);
Remove a named appender.
See
: Log4gAppenderAttachableInterface
|
An async appender object. |
|
The name of the appender to remove. |
Since 0.1