57int main(
int argc,
char** argv) {
62 google::InitGoogleLogging(argv[0]);
64 char* config_file = argv[1];
65 char* private_key_file = argv[2];
66 char* cert_file = argv[3];
69 std::string grafana_port = argv[4];
70 std::string grafana_address =
"0.0.0.0:" + grafana_port;
73 monitor_port->SetPrometheus(grafana_address);
74 LOG(ERROR) <<
"monitoring prot:" << grafana_address;
77 std::unique_ptr<ResDBConfig> config =
79 ResConfigData config_data = config->GetConfigData();
81 std::string db_path = std::to_string(config->GetSelfInfo().port()) +
"_db/";
82 LOG(INFO) <<
"db path:" << db_path;
85 config_file, private_key_file, cert_file,
86 std::make_unique<KVExecutor>(
NewStorage(db_path, config_data)),
nullptr);
std::unique_ptr< ServiceNetwork > GenerateResDBServer(char *config_file, char *private_key_file, char *cert_file, std::unique_ptr< TransactionManager > executor, char *logging_dir, std::function< void(ResDBConfig *config)> config_handler)
std::unique_ptr< ResDBConfig > GenerateResDBConfig(const std::string &config_file, const std::string &private_key_file, const std::string &cert_file, std::optional< ReplicaInfo > self_info, std::optional< ConfigGenFunc > gen_func)