Filters

Filters — Filtering which metric values should be really sent

Synopsis


#include <monitor/producer/filter.h>


            prod_filter;
prod_filter* prod_filter_new                (prod_filter_check check,
                                             prod_filter_shutdown shutdown_func,
                                             void *data);
void        prod_filter_free                (prod_filter *f);
int         (*prod_filter_check)            (prod_filter *f,
                                             prod_metric_value *mv);
void        (*prod_filter_shutdown)         (prod_filter *f);

Description

Details

prod_filter

typedef struct {
	prod_filter_check	check;
	prod_filter_shutdown	shutdown;
	void			*data;
} prod_filter;

Describes a filter for metric values.

prod_filter_check check;function to check if a metric value has to be sent.
prod_filter_shutdown shutdown;filter destructor method.
void *data;filter-specific data.

prod_filter_new ()

prod_filter* prod_filter_new                (prod_filter_check check,
                                             prod_filter_shutdown shutdown_func,
                                             void *data);

Allocates a new prod_filter.

check :the function to use for checking metric values.
shutdown_func :the filter destructor method.
data :filter-specific data.
Returns :a prod_filter or NULL if out of memory.

prod_filter_free ()

void        prod_filter_free                (prod_filter *f);

Deallocates a prod_filter.

f :a prod_filter.

prod_filter_check ()

int         (*prod_filter_check)            (prod_filter *f,
                                             prod_metric_value *mv);

Checks a metric value against a filter.

f :a prod_filter.
mv :a prod_metric_value.
Returns :TRUE if the metric value should be sent, FALSE if it should be dropped.

prod_filter_shutdown ()

void        (*prod_filter_shutdown)         (prod_filter *f);

Destroys a prod_filter.

f :a prod_filter.