X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fbackend%2Fcollectd%2Funixsock.c;h=00e1258eb222761d052a556824deac68fb690997;hb=56b97a180a53aecbfe9f7162b8ece3faae973cf9;hp=6fc2ef901176bf82c34b9b275623a7b84a0c8977;hpb=0fba5d264e239b970601ec8cf087b3027db9f48a;p=sysdb.git diff --git a/src/backend/collectd/unixsock.c b/src/backend/collectd/unixsock.c index 6fc2ef9..00e1258 100644 --- a/src/backend/collectd/unixsock.c +++ b/src/backend/collectd/unixsock.c @@ -192,6 +192,11 @@ sdb_collectd_init(sdb_object_t *user_data) static int sdb_collectd_shutdown(__attribute__((unused)) sdb_object_t *user_data) { + if (! user_data) + return -1; + + sdb_unixsock_client_destroy(SDB_OBJ_WRAPPER(user_data)->data); + SDB_OBJ_WRAPPER(user_data)->data = NULL; return 0; } /* sdb_collectd_shutdown */ @@ -281,8 +286,6 @@ sdb_collectd_config_instance(oconfig_item_t *ci) char *name = NULL; char *socket_path = NULL; - char cb_name[1024]; - sdb_object_t *user_data; sdb_unixsock_client_t *client; @@ -311,9 +314,6 @@ sdb_collectd_config_instance(oconfig_item_t *ci) return -1; } - snprintf(cb_name, sizeof(cb_name), "collectd::unixsock::%s", name); - cb_name[sizeof(cb_name) - 1] = '\0'; - client = sdb_unixsock_client_create(socket_path); if (! client) { char errbuf[1024]; @@ -332,10 +332,10 @@ sdb_collectd_config_instance(oconfig_item_t *ci) return -1; } - sdb_plugin_register_init(cb_name, sdb_collectd_init, user_data); - sdb_plugin_register_shutdown(cb_name, sdb_collectd_shutdown, user_data); + sdb_plugin_register_init(name, sdb_collectd_init, user_data); + sdb_plugin_register_shutdown(name, sdb_collectd_shutdown, user_data); - sdb_plugin_register_collector(cb_name, sdb_collectd_collect, + sdb_plugin_register_collector(name, sdb_collectd_collect, /* interval */ NULL, user_data); /* pass control to the list */ @@ -366,7 +366,6 @@ sdb_collectd_config(oconfig_item_t *ci) int sdb_module_init(sdb_plugin_info_t *info) { - sdb_plugin_set_info(info, SDB_PLUGIN_INFO_NAME, "collectd::unixsock"); sdb_plugin_set_info(info, SDB_PLUGIN_INFO_DESC, "backend accessing the system statistics collection daemon " "throught the UNIXSOCK interface"); @@ -376,7 +375,7 @@ sdb_module_init(sdb_plugin_info_t *info) sdb_plugin_set_info(info, SDB_PLUGIN_INFO_VERSION, SDB_VERSION); sdb_plugin_set_info(info, SDB_PLUGIN_INFO_PLUGIN_VERSION, SDB_VERSION); - sdb_plugin_register_config("collectd::unixsock", sdb_collectd_config); + sdb_plugin_register_config(sdb_collectd_config); return 0; } /* sdb_version_extra */