From 4e76d59e89cd7c3e0593a50c0292f087ec9d13d6 Mon Sep 17 00:00:00 2001 From: Joao Eduardo Luis Date: Wed, 17 Jun 2015 12:57:08 +0100 Subject: [PATCH] mon: services: mark events Signed-off-by: Joao Eduardo Luis --- src/mon/DataHealthService.cc | 2 ++ src/mon/Elector.cc | 6 ++++++ src/mon/LogMonitor.cc | 6 ++++++ src/mon/MDSMonitor.cc | 11 +++++++++++ src/mon/OSDMonitor.cc | 28 ++++++++++++++++++++++++++++ src/mon/PGMonitor.cc | 10 ++++++++++ 6 files changed, 63 insertions(+) diff --git a/src/mon/DataHealthService.cc b/src/mon/DataHealthService.cc index 47bf71dc4f6fb..3056a5edc8f3c 100644 --- a/src/mon/DataHealthService.cc +++ b/src/mon/DataHealthService.cc @@ -232,6 +232,7 @@ void DataHealthService::service_tick() void DataHealthService::handle_tell(MonOpRequestRef op) { + op->mark_event("datahealth:handle_tell"); MMonHealth *m = static_cast(op->get_req()); dout(10) << __func__ << " " << *m << dendl; assert(m->get_service_op() == MMonHealth::OP_TELL); @@ -241,6 +242,7 @@ void DataHealthService::handle_tell(MonOpRequestRef op) bool DataHealthService::service_dispatch_op(MonOpRequestRef op) { + op->mark_event("datahealth:service_dispatch_op"); MMonHealth *m = static_cast(op->get_req()); dout(10) << __func__ << " " << *m << dendl; assert(m->get_service_type() == get_type()); diff --git a/src/mon/Elector.cc b/src/mon/Elector.cc index 2b88626ffbc66..754e247928cb6 100644 --- a/src/mon/Elector.cc +++ b/src/mon/Elector.cc @@ -209,6 +209,7 @@ void Elector::victory() void Elector::handle_propose(MonOpRequestRef op) { + op->mark_event("elector:handle_propose"); MMonElection *m = static_cast(op->get_req()); dout(5) << "handle_propose from " << m->get_source() << dendl; int from = m->get_source().num(); @@ -267,6 +268,7 @@ void Elector::handle_propose(MonOpRequestRef op) void Elector::handle_ack(MonOpRequestRef op) { + op->mark_event("elector:handle_ack"); MMonElection *m = static_cast(op->get_req()); dout(5) << "handle_ack from " << m->get_source() << dendl; int from = m->get_source().num(); @@ -308,6 +310,7 @@ void Elector::handle_ack(MonOpRequestRef op) void Elector::handle_victory(MonOpRequestRef op) { + op->mark_event("elector:handle_victory"); MMonElection *m = static_cast(op->get_req()); dout(5) << "handle_victory from " << m->get_source() << " quorum_features " << m->quorum_features << dendl; int from = m->get_source().num(); @@ -350,6 +353,7 @@ void Elector::handle_victory(MonOpRequestRef op) void Elector::nak_old_peer(MonOpRequestRef op) { + op->mark_event("elector:nak_old_peer"); MMonElection *m = static_cast(op->get_req()); uint64_t supported_features = m->get_connection()->get_features(); @@ -369,6 +373,7 @@ void Elector::nak_old_peer(MonOpRequestRef op) void Elector::handle_nak(MonOpRequestRef op) { + op->mark_event("elector:handle_nak"); MMonElection *m = static_cast(op->get_req()); dout(1) << "handle_nak from " << m->get_source() << " quorum_features " << m->quorum_features << dendl; @@ -387,6 +392,7 @@ void Elector::handle_nak(MonOpRequestRef op) void Elector::dispatch(MonOpRequestRef op) { + op->mark_event("elector:dispatch"); switch (op->get_req()->get_type()) { case MSG_MON_ELECTION: diff --git a/src/mon/LogMonitor.cc b/src/mon/LogMonitor.cc index 2d2c48d91d586..53be8f6a55dde 100644 --- a/src/mon/LogMonitor.cc +++ b/src/mon/LogMonitor.cc @@ -266,6 +266,7 @@ version_t LogMonitor::get_trim_to() bool LogMonitor::preprocess_query(MonOpRequestRef op) { + op->mark_logmon_event("preprocess_query"); PaxosServiceMessage *m = static_cast(op->get_req()); dout(10) << "preprocess_query " << *m << " from " << m->get_orig_source_inst() << dendl; switch (m->get_type()) { @@ -283,6 +284,7 @@ bool LogMonitor::preprocess_query(MonOpRequestRef op) bool LogMonitor::prepare_update(MonOpRequestRef op) { + op->mark_logmon_event("prepare_update"); PaxosServiceMessage *m = static_cast(op->get_req()); dout(10) << "prepare_update " << *m << " from " << m->get_orig_source_inst() << dendl; switch (m->get_type()) { @@ -298,6 +300,7 @@ bool LogMonitor::prepare_update(MonOpRequestRef op) bool LogMonitor::preprocess_log(MonOpRequestRef op) { + op->mark_logmon_event("preprocess_log"); MLog *m = static_cast(op->get_req()); dout(10) << "preprocess_log " << *m << " from " << m->get_orig_source() << dendl; int num_new = 0; @@ -330,6 +333,7 @@ bool LogMonitor::preprocess_log(MonOpRequestRef op) bool LogMonitor::prepare_log(MonOpRequestRef op) { + op->mark_logmon_event("prepare_log"); MLog *m = static_cast(op->get_req()); dout(10) << "prepare_log " << *m << " from " << m->get_orig_source() << dendl; @@ -373,6 +377,7 @@ bool LogMonitor::should_propose(double& delay) bool LogMonitor::preprocess_command(MonOpRequestRef op) { + op->mark_logmon_event("preprocess_command"); MMonCommand *m = static_cast(op->get_req()); int r = -1; bufferlist rdata; @@ -390,6 +395,7 @@ bool LogMonitor::preprocess_command(MonOpRequestRef op) bool LogMonitor::prepare_command(MonOpRequestRef op) { + op->mark_logmon_event("prepare_command"); MMonCommand *m = static_cast(op->get_req()); stringstream ss; string rs; diff --git a/src/mon/MDSMonitor.cc b/src/mon/MDSMonitor.cc index 68bd912a47fba..87d463bbead8a 100644 --- a/src/mon/MDSMonitor.cc +++ b/src/mon/MDSMonitor.cc @@ -214,6 +214,7 @@ void MDSMonitor::update_logger() bool MDSMonitor::preprocess_query(MonOpRequestRef op) { + op->mark_mdsmon_event(__func__); PaxosServiceMessage *m = static_cast(op->get_req()); dout(10) << "preprocess_query " << *m << " from " << m->get_orig_source_inst() << dendl; @@ -246,6 +247,7 @@ void MDSMonitor::_note_beacon(MMDSBeacon *m) bool MDSMonitor::preprocess_beacon(MonOpRequestRef op) { + op->mark_mdsmon_event(__func__); MMDSBeacon *m = static_cast(op->get_req()); MDSMap::DaemonState state = m->get_state(); mds_gid_t gid = m->get_global_id(); @@ -374,6 +376,7 @@ bool MDSMonitor::preprocess_beacon(MonOpRequestRef op) bool MDSMonitor::preprocess_offload_targets(MonOpRequestRef op) { + op->mark_mdsmon_event(__func__); MMDSLoadTargets *m = static_cast(op->get_req()); dout(10) << "preprocess_offload_targets " << *m << " from " << m->get_orig_source() << dendl; mds_gid_t gid; @@ -402,6 +405,7 @@ bool MDSMonitor::preprocess_offload_targets(MonOpRequestRef op) bool MDSMonitor::prepare_update(MonOpRequestRef op) { + op->mark_mdsmon_event(__func__); PaxosServiceMessage *m = static_cast(op->get_req()); dout(7) << "prepare_update " << *m << dendl; @@ -427,6 +431,7 @@ bool MDSMonitor::prepare_update(MonOpRequestRef op) bool MDSMonitor::prepare_beacon(MonOpRequestRef op) { + op->mark_mdsmon_event(__func__); MMDSBeacon *m = static_cast(op->get_req()); // -- this is an update -- dout(12) << "prepare_beacon " << *m << " from " << m->get_orig_source_inst() << dendl; @@ -618,6 +623,7 @@ bool MDSMonitor::prepare_beacon(MonOpRequestRef op) bool MDSMonitor::prepare_offload_targets(MonOpRequestRef op) { + op->mark_mdsmon_event(__func__); MMDSLoadTargets *m = static_cast(op->get_req()); mds_gid_t gid = m->global_id; if (pending_mdsmap.mds_info.count(gid)) { @@ -637,6 +643,7 @@ bool MDSMonitor::should_propose(double& delay) void MDSMonitor::_updated(MonOpRequestRef op) { + op->mark_mdsmon_event(__func__); MMDSBeacon *m = static_cast(op->get_req()); dout(10) << "_updated " << m->get_orig_source() << " " << *m << dendl; mon->clog->info() << m->get_orig_source_inst() << " " @@ -724,6 +731,7 @@ void MDSMonitor::dump_info(Formatter *f) bool MDSMonitor::preprocess_command(MonOpRequestRef op) { + op->mark_mdsmon_event(__func__); MMonCommand *m = static_cast(op->get_req()); int r = -1; bufferlist rdata; @@ -1043,6 +1051,7 @@ int MDSMonitor::fail_mds(std::ostream &ss, const std::string &arg) bool MDSMonitor::prepare_command(MonOpRequestRef op) { + op->mark_mdsmon_event(__func__); MMonCommand *m = static_cast(op->get_req()); int r = -EINVAL; stringstream ss; @@ -1179,6 +1188,7 @@ int MDSMonitor::management_command( map &cmdmap, std::stringstream &ss) { + op->mark_mdsmon_event(__func__); if (prefix == "mds newfs") { /* Legacy `newfs` command, takes pool numbers instead of * names, assumes fs name to be MDS_FS_NAME_DEFAULT, and @@ -1420,6 +1430,7 @@ int MDSMonitor::filesystem_command( map &cmdmap, std::stringstream &ss) { + op->mark_mdsmon_event(__func__); MMonCommand *m = static_cast(op->get_req()); int r = 0; string whostr; diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index 3b43cc8eb23d4..60ea768a80c2a 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -1255,6 +1255,7 @@ void OSDMonitor::encode_trim_extra(MonitorDBStore::TransactionRef tx, bool OSDMonitor::preprocess_query(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); PaxosServiceMessage *m = static_cast(op->get_req()); dout(10) << "preprocess_query " << *m << " from " << m->get_orig_source_inst() << dendl; @@ -1291,6 +1292,7 @@ bool OSDMonitor::preprocess_query(MonOpRequestRef op) bool OSDMonitor::prepare_update(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); PaxosServiceMessage *m = static_cast(op->get_req()); dout(7) << "prepare_update " << *m << " from " << m->get_orig_source_inst() << dendl; @@ -1351,6 +1353,7 @@ bool OSDMonitor::should_propose(double& delay) bool OSDMonitor::preprocess_get_osdmap(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MMonGetOSDMap *m = static_cast(op->get_req()); dout(10) << __func__ << " " << *m << dendl; MOSDMap *reply = new MOSDMap(mon->monmap->fsid); @@ -1402,6 +1405,7 @@ bool OSDMonitor::check_source(PaxosServiceMessage *m, uuid_d fsid) { bool OSDMonitor::preprocess_failure(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MOSDFailure *m = static_cast(op->get_req()); // who is target_osd int badboy = m->get_target().name.num(); @@ -1483,6 +1487,7 @@ public: bool OSDMonitor::preprocess_mark_me_down(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MOSDMarkMeDown *m = static_cast(op->get_req()); int requesting_down = m->get_target().name.num(); int from = m->get_orig_source().num(); @@ -1521,6 +1526,7 @@ bool OSDMonitor::preprocess_mark_me_down(MonOpRequestRef op) bool OSDMonitor::prepare_mark_me_down(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MOSDMarkMeDown *m = static_cast(op->get_req()); int target_osd = m->get_target().name.num(); @@ -1683,6 +1689,7 @@ bool OSDMonitor::check_failure(utime_t now, int target_osd, failure_info_t& fi) bool OSDMonitor::prepare_failure(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MOSDFailure *m = static_cast(op->get_req()); dout(1) << "prepare_failure " << m->get_target() << " from " << m->get_orig_source_inst() << " is reporting failure:" << m->if_osd_failed() << dendl; @@ -1776,6 +1783,7 @@ void OSDMonitor::take_all_failures(list& ls) bool OSDMonitor::preprocess_boot(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MOSDBoot *m = static_cast(op->get_req()); int from = m->get_orig_source_inst().name.num(); @@ -1864,6 +1872,7 @@ bool OSDMonitor::preprocess_boot(MonOpRequestRef op) bool OSDMonitor::prepare_boot(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MOSDBoot *m = static_cast(op->get_req()); dout(7) << "prepare_boot from " << m->get_orig_source_inst() << " sb " << m->sb << " cluster_addr " << m->cluster_addr @@ -2001,6 +2010,7 @@ bool OSDMonitor::prepare_boot(MonOpRequestRef op) void OSDMonitor::_booted(MonOpRequestRef op, bool logit) { + op->mark_osdmon_event(__func__); MOSDBoot *m = static_cast(op->get_req()); dout(7) << "_booted " << m->get_orig_source_inst() << " w " << m->sb.weight << " from " << m->sb.current_epoch << dendl; @@ -2018,6 +2028,7 @@ void OSDMonitor::_booted(MonOpRequestRef op, bool logit) bool OSDMonitor::preprocess_alive(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MOSDAlive *m = static_cast(op->get_req()); int from = m->get_orig_source().num(); @@ -2054,6 +2065,7 @@ bool OSDMonitor::preprocess_alive(MonOpRequestRef op) bool OSDMonitor::prepare_alive(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MOSDAlive *m = static_cast(op->get_req()); int from = m->get_orig_source().num(); @@ -2071,6 +2083,7 @@ bool OSDMonitor::prepare_alive(MonOpRequestRef op) void OSDMonitor::_reply_map(MonOpRequestRef op, epoch_t e) { PaxosServiceMessage *m = static_cast(op->get_req()); + op->mark_osdmon_event(__func__); dout(7) << "_reply_map " << e << " from " << m->get_orig_source_inst() << dendl; @@ -2153,6 +2166,7 @@ bool OSDMonitor::preprocess_pgtemp(MonOpRequestRef op) bool OSDMonitor::prepare_pgtemp(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MOSDPGTemp *m = static_cast(op->get_req()); int from = m->get_orig_source().num(); dout(7) << "prepare_pgtemp e" << m->map_epoch << " from " << m->get_orig_source_inst() << dendl; @@ -2187,6 +2201,7 @@ bool OSDMonitor::prepare_pgtemp(MonOpRequestRef op) bool OSDMonitor::preprocess_remove_snaps(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MRemoveSnaps *m = static_cast(op->get_req()); dout(7) << "preprocess_remove_snaps " << *m << dendl; @@ -2223,6 +2238,7 @@ bool OSDMonitor::preprocess_remove_snaps(MonOpRequestRef op) bool OSDMonitor::prepare_remove_snaps(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MRemoveSnaps *m = static_cast(op->get_req()); dout(7) << "prepare_remove_snaps " << *m << dendl; @@ -2849,6 +2865,7 @@ namespace { bool OSDMonitor::preprocess_command(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MMonCommand *m = static_cast(op->get_req()); int r = 0; bufferlist rdata; @@ -3936,6 +3953,7 @@ void OSDMonitor::get_pools_health( int OSDMonitor::prepare_new_pool(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MPoolOp *m = static_cast(op->get_req()); dout(10) << "prepare_new_pool from " << m->get_connection() << dendl; MonSession *session = m->get_session(); @@ -4428,6 +4446,7 @@ int OSDMonitor::prepare_new_pool(string& name, uint64_t auid, bool OSDMonitor::prepare_set_flag(MonOpRequestRef op, int flag) { + op->mark_osdmon_event(__func__); ostringstream ss; if (pending_inc.new_flags < 0) pending_inc.new_flags = osdmap.get_flags(); @@ -4440,6 +4459,7 @@ bool OSDMonitor::prepare_set_flag(MonOpRequestRef op, int flag) bool OSDMonitor::prepare_unset_flag(MonOpRequestRef op, int flag) { + op->mark_osdmon_event(__func__); ostringstream ss; if (pending_inc.new_flags < 0) pending_inc.new_flags = osdmap.get_flags(); @@ -4833,6 +4853,7 @@ int OSDMonitor::prepare_command_pool_set(map &cmdmap, bool OSDMonitor::prepare_command(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MMonCommand *m = static_cast(op->get_req()); stringstream ss; map cmdmap; @@ -4854,6 +4875,7 @@ bool OSDMonitor::prepare_command(MonOpRequestRef op) bool OSDMonitor::prepare_command_impl(MonOpRequestRef op, map &cmdmap) { + op->mark_osdmon_event(__func__); MMonCommand *m = static_cast(op->get_req()); bool ret = false; stringstream ss; @@ -7062,6 +7084,7 @@ done: bool OSDMonitor::preprocess_pool_op(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MPoolOp *m = static_cast(op->get_req()); if (m->op == POOL_OP_CREATE) return preprocess_pool_op_create(op); @@ -7133,6 +7156,7 @@ bool OSDMonitor::preprocess_pool_op(MonOpRequestRef op) bool OSDMonitor::preprocess_pool_op_create(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MPoolOp *m = static_cast(op->get_req()); MonSession *session = m->get_session(); if (!session) { @@ -7158,6 +7182,7 @@ bool OSDMonitor::preprocess_pool_op_create(MonOpRequestRef op) bool OSDMonitor::prepare_pool_op(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MPoolOp *m = static_cast(op->get_req()); dout(10) << "prepare_pool_op " << *m << dendl; if (m->op == POOL_OP_CREATE) { @@ -7296,6 +7321,7 @@ bool OSDMonitor::prepare_pool_op(MonOpRequestRef op) bool OSDMonitor::prepare_pool_op_create(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); int err = prepare_new_pool(op); wait_for_finished_proposal(op, new OSDMonitor::C_PoolOp(this, op, err, pending_inc.epoch)); return true; @@ -7498,6 +7524,7 @@ int OSDMonitor::_prepare_rename_pool(int64_t pool, string newname) bool OSDMonitor::prepare_pool_op_delete(MonOpRequestRef op) { + op->mark_osdmon_event(__func__); MPoolOp *m = static_cast(op->get_req()); ostringstream ss; int ret = _prepare_remove_pool(m->pool, &ss); @@ -7515,6 +7542,7 @@ bool OSDMonitor::prepare_pool_op_delete(MonOpRequestRef op) void OSDMonitor::_pool_op_reply(MonOpRequestRef op, int ret, epoch_t epoch, bufferlist *blp) { + op->mark_osdmon_event(__func__); MPoolOp *m = static_cast(op->get_req()); dout(20) << "_pool_op_reply " << ret << dendl; MPoolOpReply *reply = new MPoolOpReply(m->fsid, m->get_tid(), diff --git a/src/mon/PGMonitor.cc b/src/mon/PGMonitor.cc index 528ad6d024753..f8185998bab51 100644 --- a/src/mon/PGMonitor.cc +++ b/src/mon/PGMonitor.cc @@ -577,6 +577,7 @@ version_t PGMonitor::get_trim_to() bool PGMonitor::preprocess_query(MonOpRequestRef op) { + op->mark_pgmon_event(__func__); PaxosServiceMessage *m = static_cast(op->get_req()); dout(10) << "preprocess_query " << *m << " from " << m->get_orig_source_inst() << dendl; switch (m->get_type()) { @@ -601,6 +602,7 @@ bool PGMonitor::preprocess_query(MonOpRequestRef op) bool PGMonitor::prepare_update(MonOpRequestRef op) { + op->mark_pgmon_event(__func__); PaxosServiceMessage *m = static_cast(op->get_req()); dout(10) << "prepare_update " << *m << " from " << m->get_orig_source_inst() << dendl; switch (m->get_type()) { @@ -618,6 +620,7 @@ bool PGMonitor::prepare_update(MonOpRequestRef op) void PGMonitor::handle_statfs(MonOpRequestRef op) { + op->mark_pgmon_event(__func__); MStatfs *statfs = static_cast(op->get_req()); // check caps MonSession *session = statfs->get_session(); @@ -652,6 +655,7 @@ void PGMonitor::handle_statfs(MonOpRequestRef op) bool PGMonitor::preprocess_getpoolstats(MonOpRequestRef op) { + op->mark_pgmon_event(__func__); MGetPoolStats *m = static_cast(op->get_req()); MGetPoolStatsReply *reply; @@ -691,6 +695,7 @@ bool PGMonitor::preprocess_getpoolstats(MonOpRequestRef op) bool PGMonitor::preprocess_pg_stats(MonOpRequestRef op) { + op->mark_pgmon_event(__func__); MPGStats *stats = static_cast(op->get_req()); // check caps MonSession *session = stats->get_session(); @@ -742,6 +747,7 @@ bool PGMonitor::pg_stats_have_changed(int from, const MPGStats *stats) const bool PGMonitor::prepare_pg_stats(MonOpRequestRef op) { + op->mark_pgmon_event(__func__); MPGStats *stats = static_cast(op->get_req()); dout(10) << "prepare_pg_stats " << *stats << " from " << stats->get_orig_source() << dendl; int from = stats->get_orig_source().num(); @@ -838,6 +844,8 @@ bool PGMonitor::prepare_pg_stats(MonOpRequestRef op) void PGMonitor::_updated_stats(MonOpRequestRef op, MonOpRequestRef ack_op) { + op->mark_pgmon_event(__func__); + ack_op->mark_pgmon_event(__func__); MPGStats *ack = static_cast(ack_op->get_req()); dout(7) << "_updated_stats for " << op->get_req()->get_orig_source_inst() << dendl; @@ -1456,6 +1464,7 @@ void PGMonitor::dump_info(Formatter *f) bool PGMonitor::preprocess_command(MonOpRequestRef op) { + op->mark_pgmon_event(__func__); MMonCommand *m = static_cast(op->get_req()); int r = -1; bufferlist rdata; @@ -1783,6 +1792,7 @@ bool PGMonitor::preprocess_command(MonOpRequestRef op) bool PGMonitor::prepare_command(MonOpRequestRef op) { + op->mark_pgmon_event(__func__); MMonCommand *m = static_cast(op->get_req()); stringstream ss; pg_t pgid; -- 2.39.5