/* zentific-poll: statistics collection daemon for Zentific * Copyright (C) 2007, 2008 * Steven Maresca, Justin Demaris, * and Zentific LLC * * All rights reserved. * Use is subject to license terms. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ //---------------INCLUDES------------------- #ifndef ZENTIFIC_POLL_H #define ZENTIFIC_POLL_H //system includes etc #include "common.h" //block device investigation #include "blockdata.h" //https xmlrpc #include "ssl_send.h" //zentific types #include "defines.h" #include "types.h" #include "xmlrpc.h" //----------FUNCTION DEFINITIONS------------ void initialize(int argc, char **argv); void config_reload(int signum); void cleanup_exit(int signum); //static void version(void); void version(void); //static void usage(char*); void usage(char*); int parse_config(void); void display_config(void); host * new_host(); void free_host(); //double get_cpu_pct(xenstat_domain *domain); //int get_vbd_stats(xenstat_vbd *vbds, int numvbds, int domid, vbd *disks); //int get_vif_stats(xenstat_network *nets, int numnets, int domid, vif *vifs, unsigned long long *rxbw, unsigned long long *txbw, char *vmtype); int register_node(void); void update_stats(void); int update_node(void); //display debugging void display_node(void); void display_guest(guest *aguest); //node stats functions unsigned long long get_intr (); unsigned long long get_ctxt (); float get_iowait (); #endif