track total and per session load
| 1155 | |
| 1156 | // track total and per session load |
| 1157 | void SessionMap::hit_session(Session *session) { |
| 1158 | uint64_t sessions = get_session_count_in_state(Session::STATE_OPENING) + |
| 1159 | get_session_count_in_state(Session::STATE_OPEN) + |
| 1160 | get_session_count_in_state(Session::STATE_STALE) + |
| 1161 | get_session_count_in_state(Session::STATE_CLOSING) + |
| 1162 | get_session_count_in_state(Session::STATE_KILLING); |
| 1163 | ceph_assert(sessions != 0); |
| 1164 | |
| 1165 | double total_load = total_load_avg.hit(); |
| 1166 | double avg_load = total_load / sessions; |
| 1167 | |
| 1168 | logger->set(l_mdssm_total_load, (uint64_t)total_load); |
| 1169 | logger->set(l_mdssm_avg_load, (uint64_t)avg_load); |
| 1170 | |
| 1171 | session->hit_session(); |
| 1172 | } |
| 1173 | |
| 1174 | void SessionMap::handle_conf_change(const std::set<std::string>& changed) |
| 1175 | { |
no test coverage detected