int exa_perf_instance_static_init(void)
{
    const char *perf_config;
    exaperf_err_t err;

    eh = exaperf_alloc();
    if (eh == NULL)
    {
        exalog_error("Failed initializing exaperf");
        return -ENOMEM;
    }

    perf_config = getenv("EXANODES_PERF_CONFIG");
    if (perf_config == NULL)
    {
        exalog_debug("No perf config set");
        return 0;
    }

    /* initialize the component */
    err = exaperf_init(eh, perf_config, exa_perf_instance_print);
    switch (err)
    {
    case EXAPERF_SUCCESS:
        exalog_info("Loaded perf config '%s'", perf_config);
        return 0;

    case EXAPERF_CONF_FILE_OPEN_FAILED:
        exalog_warning("Perf config '%s' not found, ignored", perf_config);
        exaperf_free(eh);
        eh = NULL;
        return 0;

    default:
        /* FIXME Use error string instead of error code */
        exalog_error("Failed loading perf config '%s' (%d)", perf_config, err);
        return -EINVAL;
    }
}
void exa_perf_instance_static_clean(void)
{
    exaperf_free(eh);
    eh = NULL;
}
void __serverd_perf_cleanup(void)
{
    exaperf_free(eh);
    eh = NULL;
}