Class FsData

Class Documentation

class gkfs::daemon::FsData

Public Functions

FsData(FsData const&) = delete
void operator=(FsData const&) = delete
const std::shared_ptr<spdlog::logger> &spdlogger() const
void spdlogger(const std::shared_ptr<spdlog::logger> &spdlogger_)
const std::string &rootdir() const
void rootdir(const std::string &rootdir_)
const std::string &rootdir_suffix() const
void rootdir_suffix(const std::string &rootdir_suffix_)
const std::string &mountdir() const
void mountdir(const std::string &mountdir_)
const std::string &metadir() const
void metadir(const std::string &metadir_)
std::string_view dbbackend() const
void dbbackend(const std::string &dbbackend_)
const std::shared_ptr<gkfs::metadata::MetadataDB> &mdb() const
void mdb(const std::shared_ptr<gkfs::metadata::MetadataDB> &mdb)
void close_mdb()
const std::shared_ptr<gkfs::data::ChunkStorage> &storage() const
void storage(const std::shared_ptr<gkfs::data::ChunkStorage> &storage)
const std::string &rpc_protocol() const
void rpc_protocol(const std::string &rpc_protocol)
const std::string &bind_addr() const
void bind_addr(const std::string &addr)
const std::string &hosts_file() const
bool use_auto_sm() const
void use_auto_sm(bool use_auto_sm)
void hosts_file(const std::string &lookup_file)
bool atime_state() const
void atime_state(bool atime_state)
bool mtime_state() const
void mtime_state(bool mtime_state)
bool ctime_state() const
void ctime_state(bool ctime_state)
bool blocks_state() const
void blocks_state(bool blocks_state)
unsigned long long parallax_size_md() const
void parallax_size_md(unsigned int size_md)
const std::shared_ptr<gkfs::utils::Stats> &stats() const
void stats(const std::shared_ptr<gkfs::utils::Stats> &stats)
void close_stats()
bool enable_stats() const
void enable_stats(bool enable_stats)
bool enable_chunkstats() const
void enable_chunkstats(bool enable_chunkstats)
bool enable_prometheus() const
void enable_prometheus(bool enable_prometheus)
const std::string &stats_file() const
void stats_file(const std::string &stats_file)
const std::string &prometheus_gateway() const
void prometheus_gateway(const std::string &prometheus_gateway_)

Public Static Functions

static inline FsData *getInstance()

Private Functions

FsData() = default

Private Members

std::shared_ptr<spdlog::logger> spdlogger_
std::string rootdir_ = {}
std::string rootdir_suffix_ = {}
std::string mountdir_ = {}
std::string metadir_ = {}
std::string rpc_protocol_ = {}
std::string bind_addr_ = {}
std::string hosts_file_ = {}
bool use_auto_sm_
std::shared_ptr<gkfs::metadata::MetadataDB> mdb_
std::string dbbackend_
unsigned long long parallax_size_md_ = 8589934592ull
std::shared_ptr<gkfs::data::ChunkStorage> storage_
bool atime_state_
bool mtime_state_
bool ctime_state_
bool blocks_state_
std::shared_ptr<gkfs::utils::Stats> stats_
bool enable_stats_ = false
bool enable_chunkstats_ = false
bool enable_prometheus_ = false
std::string stats_file_
std::string prometheus_gateway_ = gkfs::config::stats::prometheus_gateway