|
| void | stats_lock (void) |
| |
| void | stats_unlock (void) |
| |
| gboolean | stats_check_level (gint level) |
| |
| StatsCluster * | stats_register_counter (gint level, const StatsClusterKey *sc_key, gint type, StatsCounterItem **counter) |
| |
| StatsCluster * | stats_register_external_counter (gint level, const StatsClusterKey *sc_key, gint type, atomic_gssize *external_counter) |
| |
| StatsCluster * | stats_register_alias_counter (gint level, const StatsClusterKey *sc_key, gint type, StatsCounterItem *aliased_counter) |
| |
| StatsCluster * | stats_register_counter_and_index (gint level, const StatsClusterKey *sc_key, gint type, StatsCounterItem **counter) |
| |
| StatsCluster * | stats_register_dynamic_counter (gint stats_level, const StatsClusterKey *sc_key, gint type, StatsCounterItem **counter) |
| |
| void | stats_register_and_increment_dynamic_counter (gint stats_level, const StatsClusterKey *sc_key, time_t timestamp) |
| |
| void | stats_register_associated_counter (StatsCluster *handle, gint type, StatsCounterItem **counter) |
| |
| void | stats_unregister_counter (const StatsClusterKey *sc_key, gint type, StatsCounterItem **counter) |
| |
| void | stats_unregister_external_counter (const StatsClusterKey *sc_key, gint type, atomic_gssize *external_counter) |
| |
| void | stats_unregister_alias_counter (const StatsClusterKey *sc_key, gint type, StatsCounterItem *aliased_counter) |
| |
| void | stats_unregister_dynamic_counter (StatsCluster *handle, gint type, StatsCounterItem **counter) |
| |
| gboolean | stats_contains_counter (const StatsClusterKey *sc_key, gint type) |
| |
| StatsCounterItem * | stats_get_counter (const StatsClusterKey *sc_key, gint type) |
| |
| StatsCluster * | stats_get_cluster (const StatsClusterKey *sc_key) |
| |
| gboolean | stats_remove_cluster (const StatsClusterKey *sc_key) |
| |
| void | stats_foreach_counter (StatsForeachCounterFunc func, gpointer user_data, gboolean *cancelled) |
| |
| void | stats_foreach_legacy_counter (StatsForeachCounterFunc func, gpointer user_data, gboolean *cancelled) |
| |
| void | stats_foreach_cluster (StatsForeachClusterFunc func, gpointer user_data, gboolean *cancelled) |
| |
| void | stats_foreach_cluster_remove (StatsForeachClusterRemoveFunc func, gpointer user_data) |
| |
| void | stats_registry_init (void) |
| |
| void | stats_registry_deinit (void) |
| |
| gboolean | stats_check_dynamic_clusters_limit (guint number_of_clusters) |
| |
| gint | stats_number_of_dynamic_clusters_limit (void) |
| |
| CfgYesNoAuto | stats_syslog_stats (void) |
| |
stats_register_counter: @stats_level: the required statistics level to make this counter available @component: a reference to the syslog-ng component that this counter belongs to (SCS_*) @id: the unique identifier of the configuration item that this counter belongs to @instance: if a given configuration item manages multiple similar counters this makes those unique (like destination filename in case macros are used) @type: the counter type (processed, dropped, etc) @counter: returned pointer to the counter
This function registers a general purpose counter. Whenever multiple objects touch the same counter all of these should register the counter with the same name. Internally the stats subsystem counts the number of users of the same counter in this case, thus the counter will only be freed when all of these uses are unregistered.