DOKK / manpages / debian 10 / liblog4c-doc / log4c_rollingpolicy_type_get.3.en
rollingpolicy.h(3) log4c rollingpolicy.h(3)

rollingpolicy.h -

Log4c rolling policy interface. Defines the interface for managing and providing rolling policies.

#include <stdio.h>
#include <log4c/defs.h>
#include <log4c/layout.h>


struct log4c_rollingpolicy_type
log4c rollingpolicy type. Defines the interface a specific policy must provide to the rollingfile appender.


#define ROLLINGPOLICY_ROLLOVER_ERR_CAN_LOG 0x05


typedef struct __log4c_rollingpolicy log4c_rollingpolicy_t
typedef struct log4c_rollingpolicy_type log4c_rollingpolicy_type_t
log4c rollingpolicy type. Defines the interface a specific policy must provide to the rollingfile appender.


LOG4C_API log4c_rollingpolicy_t * log4c_rollingpolicy_get (const char *policy_name)
LOG4C_API const log4c_rollingpolicy_type_t * log4c_rollingpolicy_type_set (const log4c_rollingpolicy_type_t *a_type)
LOG4C_API void log4c_rollingpolicy_set_udata (log4c_rollingpolicy_t *policyp, void *udatap)
LOG4C_API int log4c_rollingpolicy_init (log4c_rollingpolicy_t *policyp, rollingfile_udata_t *rfup)
LOG4C_API int log4c_rollingpolicy_fini (log4c_rollingpolicy_t *a_this)
LOG4C_API int log4c_rollingpolicy_is_triggering_event (log4c_rollingpolicy_t *policyp, const log4c_logging_event_t *evtp, long current_file_size)
LOG4C_API const log4c_rollingpolicy_type_t * log4c_rollingpolicy_set_type (log4c_rollingpolicy_t *a_rollingpolicy, const log4c_rollingpolicy_type_t *a_type)
LOG4C_API const log4c_rollingpolicy_type_t * log4c_rollingpolicy_type_get (const char *a_name)
LOG4C_API void * log4c_rollingpolicy_get_udata (const log4c_rollingpolicy_t *policyp)
LOG4C_API rollingfile_udata_t * log4c_rollingpolicy_get_rfudata (const log4c_rollingpolicy_t *policyp)

Log4c rolling policy interface. Defines the interface for managing and providing rolling policies.

A rolling policy is used to confogure a rollingfile appender to tell it when to trigger a rolover event.

Parameters:

policyp pointer to the rolling policy
fp filestream to rollover.

Returns:

zero if successful, non-zero otherwise. The policy can return an indication that something went wrong but that the rollingfile appender can stull go ahead and log by returning an error code <= ROLLINGPOLICY_ROLLOVER_ERR_CAN_LOG. Anything greater than means that the rolling file appender will not try to log it's message.

log4c rollingpolicy type. Defines the interface a specific policy must provide to the rollingfile appender. Attributes description:

  • name rollingpolicy type name
  • init() init the rollingpolicy
  • is_triggering_event()
  • rollover()

Parameters:

policyp pointer to the rolling policy

Returns:

zero if successful, non-zero otherwise.

Parameters:

policy_name a name for the policy

Returns:

a new rolling policy, otherwise NULL.

Parameters:

policyp pointer to the rolling policy

Returns:

pointer to the rolling file appender associated with this policy

Parameters:

policyp pointer to the rolling policy

Returns:

pointer to the rolling policy configuration.

Parameters:

policyp pointer to the rolling policy
app the rolling appender this policy is used with

Returns:

zero if successful, non-zero otherwise.

Parameters:

policyp pointer to the rolling policy
evtp the logging event pointer.
current_file_size the size of the current file being logged to.

Returns:

non-zero if rollover required, zero otherwise.

LOG4C_API const log4c_rollingpolicy_type_t* log4c_rollingpolicy_set_type (log4c_rollingpolicy_t *a_rollingpolicy, const log4c_rollingpolicy_type_t *a_type) sets the rolling policy type

Parameters:

a_rollingpolicy the log4c_rollingpolicy_t object
a_type the new rollingpolicy type

Returns:

the previous appender type

Parameters:

policyp pointer to the rolling policy
udatap a specific policy type, for example sizewin.

Returns:

zero if successful, non-zero otherwise.

LOG4C_API const log4c_rollingpolicy_type_t* log4c_rollingpolicy_type_get (const char *a_name) Get a pointer to an existing rollingpolicy type.

Parameters:

a_name the name of the rollingpolicy type to return.

Returns:

a pointer to an existing rollingpolicy type, or NULL if no rollingpolicy type with the specified name exists.

LOG4C_API const log4c_rollingpolicy_type_t* log4c_rollingpolicy_type_set (const log4c_rollingpolicy_type_t *a_type) Use this function to register a rollingpolicy type with log4c. Once this is done you may refer to this type by name both programmatically and in the log4c configuration file.

Parameters:

a_type a pointer to the new rollingpolicy type to register.

Returns:

a pointer to the previous rollingpolicy type of same name.

Example code fragment:


const log4c_rollingpolicy_type_t log4c_rollingpolicy_type_sizewin = {
'sizewin',
sizewin_init,
sizewin_is_triggering_event,
sizewin_rollover
};
log4c_rollingpolicy_type_set(&log4c_rollingpolicy_type_sizewin);

Generated automatically by Doxygen for log4c from the source code.

Mon May 2 2011 Version 1.2.1