sql_monitor change time expression from cpu_cycle to time_us
This commit is contained in:
@ -154,6 +154,7 @@ ObServer::ObServer()
|
||||
bandwidth_throttle_(),
|
||||
sys_bkgd_net_percentage_(0),
|
||||
ethernet_speed_(0),
|
||||
cpu_frequency_(DEFAULT_CPU_FREQUENCY),
|
||||
session_mgr_(),
|
||||
root_service_monitor_(root_service_, rs_mgr_),
|
||||
ob_service_(gctx_),
|
||||
@ -171,6 +172,7 @@ ObServer::ObServer()
|
||||
ctas_clean_up_task_(),
|
||||
refresh_active_time_task_(),
|
||||
refresh_network_speed_task_(),
|
||||
refresh_cpu_frequency_task_(),
|
||||
schema_status_proxy_(sql_proxy_),
|
||||
is_log_dir_empty_(false),
|
||||
conn_res_mgr_(),
|
||||
@ -373,6 +375,8 @@ int ObServer::init(const ObServerOptions &opts, const ObPLogWriterCfg &log_cfg)
|
||||
LOG_ERROR("init refresh active time task failed", KR(ret));
|
||||
} else if (OB_FAIL(init_refresh_network_speed_task())) {
|
||||
LOG_ERROR("init refresh network speed task failed", KR(ret));
|
||||
} else if (OB_FAIL(init_refresh_cpu_frequency())) {
|
||||
LOG_ERROR("init refresh cpu frequency failed", KR(ret));
|
||||
} else if (OB_FAIL(init_collect_info_gc_task())) {
|
||||
LOG_ERROR("init collect info gc task failed", KR(ret));
|
||||
} else if (OB_FAIL(ObOptStatManager::get_instance().init(
|
||||
@ -2787,6 +2791,63 @@ void ObServer::ObRefreshNetworkSpeedTask::runTimerTask()
|
||||
}
|
||||
}
|
||||
|
||||
ObServer::ObRefreshCpuFreqTimeTask::ObRefreshCpuFreqTimeTask()
|
||||
: obs_(nullptr), is_inited_(false)
|
||||
{}
|
||||
|
||||
int ObServer::ObRefreshCpuFreqTimeTask::init(ObServer *obs, int tg_id)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
if (OB_UNLIKELY(is_inited_)) {
|
||||
ret = OB_INIT_TWICE;
|
||||
LOG_ERROR("ObRefreshCpuFreqTimeTask has already been inited", KR(ret));
|
||||
} else if (OB_ISNULL(obs)) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_ERROR("ObRefreshCpuFreqTimeTask init with null ptr", KR(ret), K(obs));
|
||||
} else {
|
||||
obs_ = obs;
|
||||
is_inited_ = true;
|
||||
if (OB_FAIL(TG_SCHEDULE(tg_id, *this, REFRESH_INTERVAL, true /*schedule repeatly*/))) {
|
||||
LOG_ERROR("fail to schedule task ObRefreshCpuFreqTimeTask", KR(ret));
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
void ObServer::ObRefreshCpuFreqTimeTask::destroy()
|
||||
{
|
||||
is_inited_ = false;
|
||||
obs_ = nullptr;
|
||||
}
|
||||
|
||||
void ObServer::ObRefreshCpuFreqTimeTask::runTimerTask()
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
if (OB_UNLIKELY(!is_inited_)) {
|
||||
ret = OB_NOT_INIT;
|
||||
LOG_ERROR("ObRefreshCpuFreqTimeTask has not been inited", KR(ret));
|
||||
} else if (OB_ISNULL(obs_)) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_ERROR("ObRefreshCpuFreqTimeTask task got null ptr", KR(ret));
|
||||
} else if (OB_FAIL(obs_->refresh_cpu_frequency())) {
|
||||
LOG_ERROR("ObRefreshCpuFreqTimeTask task failed", KR(ret));
|
||||
}
|
||||
}
|
||||
|
||||
int ObServer::refresh_cpu_frequency()
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
uint64_t cpu_frequency = get_cpufreq_khz();
|
||||
|
||||
cpu_frequency = cpu_frequency < 1 ? 1 : cpu_frequency;
|
||||
if (cpu_frequency != cpu_frequency_) {
|
||||
LOG_INFO("Cpu frequency changed", "from", cpu_frequency_, "to", cpu_frequency);
|
||||
cpu_frequency_ = cpu_frequency;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
void ObServer::ObCollectInfoGCTask::runTimerTask()
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
@ -2867,6 +2928,15 @@ int ObServer::init_refresh_network_speed_task()
|
||||
return ret;
|
||||
}
|
||||
|
||||
int ObServer::init_refresh_cpu_frequency()
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
if (OB_FAIL(refresh_cpu_frequency_task_.init(this, lib::TGDefIDs::ServerGTimer))) {
|
||||
LOG_ERROR("fail to init refresh cpu frequency task", KR(ret));
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
int ObServer::init_collect_info_gc_task()
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
|
||||
Reference in New Issue
Block a user