From 326eef3501ce834f7067dfcc44963e3ef4c571df Mon Sep 17 00:00:00 2001 From: Yuval Lifshitz Date: Thu, 12 Jun 2025 12:21:07 +0000 Subject: [PATCH] rgw/logging: fix/remove/add bucket logging op names Fixes: https://tracker.ceph.com/issues/71638 Signed-off-by: Yuval Lifshitz --- src/rgw/rgw_op.h | 22 +++++++++++----------- src/rgw/rgw_rest_bucket_logging.cc | 3 +++ 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/src/rgw/rgw_op.h b/src/rgw/rgw_op.h index dce7a5f14a045..95766a27065ca 100644 --- a/src/rgw/rgw_op.h +++ b/src/rgw/rgw_op.h @@ -481,7 +481,12 @@ public: virtual int send_response_data(bufferlist& bl, off_t ofs, off_t len) = 0; const char* name() const override { return "get_obj"; } - std::string canonical_name() const override { return fmt::format("REST.{}.OBJECT", s->info.method); } + std::string canonical_name() const override { + if (get_torrent) { + return fmt::format("REST.{}.TORRENT", s->info.method); + } + return fmt::format("REST.{}.OBJECT", s->info.method); + } RGWOpType get_type() override { return RGW_OP_GET_OBJ; } uint32_t op_mask() override { return RGW_OP_TYPE_READ; } virtual bool need_object_expiration() { return false; } @@ -942,7 +947,6 @@ public: virtual bool should_get_stats() { return false; } const char* name() const override { return "get_self_usage"; } - std::string canonical_name() const override { return fmt::format("REST.{}.USER_USAGE", s->info.method); } uint32_t op_mask() override { return RGW_OP_TYPE_READ; } }; @@ -959,7 +963,6 @@ public: void send_response() override = 0; const char* name() const override { return "stat_account"; } - std::string canonical_name() const override { return fmt::format("REST.{}.ACCOUNT_STATUS", s->info.method); } RGWOpType get_type() override { return RGW_OP_STAT_ACCOUNT; } uint32_t op_mask() override { return RGW_OP_TYPE_READ; } }; @@ -1013,6 +1016,7 @@ public: void send_response() override = 0; const char* name() const override { return "get_bucket_location"; } + std::string canonical_name() const override { return fmt::format("REST.{}.LOCATION", s->info.method); } RGWOpType get_type() override { return RGW_OP_GET_BUCKET_LOCATION; } uint32_t op_mask() override { return RGW_OP_TYPE_READ; } }; @@ -1128,7 +1132,6 @@ public: virtual int get_params(optional_yield y) = 0; void send_response() override = 0; const char* name() const override { return "stat_bucket"; } - std::string canonical_name() const override { return fmt::format("REST.{}.BUCKET_STATUS", s->info.method); } RGWOpType get_type() override { return RGW_OP_STAT_BUCKET; } uint32_t op_mask() override { return RGW_OP_TYPE_READ; } }; @@ -1439,7 +1442,6 @@ public: const std::set& rmattr_names, std::map& temp_url_keys); const char* name() const override { return "put_account_metadata"; } - std::string canonical_name() const override { return fmt::format("REST.{}.ACCOUNT_METADATA", s->info.method); } RGWOpType get_type() override { return RGW_OP_PUT_METADATA_ACCOUNT; } uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } }; @@ -1471,7 +1473,6 @@ public: virtual int get_params(optional_yield y) = 0; void send_response() override = 0; const char* name() const override { return "put_bucket_metadata"; } - std::string canonical_name() const override { return fmt::format("REST.{}.BUCKET_METADATA", s->info.method); } RGWOpType get_type() override { return RGW_OP_PUT_METADATA_BUCKET; } uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } }; @@ -1494,7 +1495,6 @@ public: virtual int get_params(optional_yield y) = 0; void send_response() override = 0; const char* name() const override { return "put_obj_metadata"; } - std::string canonical_name() const override { return fmt::format("REST.{}.OBJECT_METADATA", s->info.method); } RGWOpType get_type() override { return RGW_OP_PUT_METADATA_OBJECT; } uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } virtual bool need_object_expiration() { return false; } @@ -1515,7 +1515,7 @@ public: void send_response() override = 0; const char* name() const override { return "restore_obj"; } - std::string canonical_name() const override { return fmt::format("REST.{}.OBJECT", s->info.method); } + std::string canonical_name() const override { return fmt::format("REST.{}.RESTORE", s->info.method); } RGWOpType get_type() override { return RGW_OP_RESTORE_OBJ; } uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } }; @@ -1734,6 +1734,7 @@ public: void execute(optional_yield y) override; void send_response() override = 0; const char* name() const override { return "get_obj_attrs"; } + std::string canonical_name() const override { return fmt::format("REST.{}.OBJECT_ATTRIBUTES", s->info.method); } RGWOpType get_type() override { return RGW_OP_GET_OBJ_ATTRS; } uint32_t op_mask() override { return RGW_OP_TYPE_READ; } }; /* RGWGetObjAttrs */ @@ -2564,6 +2565,7 @@ public: virtual void send_response() override = 0; virtual int get_params(optional_yield y) = 0; const char* name() const override { return "put_bucket_object_lock"; } + std::string canonical_name() const override { return fmt::format("REST.{}.OBJECT_LOCK", s->info.method); } RGWOpType get_type() override { return RGW_OP_PUT_BUCKET_OBJ_LOCK; } uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } }; @@ -2575,6 +2577,7 @@ public: void execute(optional_yield y) override; virtual void send_response() override = 0; const char* name() const override {return "get_bucket_object_lock"; } + std::string canonical_name() const override { return fmt::format("REST.{}.OBJECT_LOCK", s->info.method); } RGWOpType get_type() override { return RGW_OP_GET_BUCKET_OBJ_LOCK; } uint32_t op_mask() override { return RGW_OP_TYPE_READ; } }; @@ -2655,7 +2658,6 @@ public: virtual int get_params(optional_yield y) = 0; const char* name() const override { return "config_bucket_meta_search"; } - std::string canonical_name() const override { return fmt::format("REST.{}.BUCKET_MDSEARCH", s->info.method); } virtual RGWOpType get_type() override { return RGW_OP_CONFIG_BUCKET_META_SEARCH; } virtual uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } }; @@ -2669,7 +2671,6 @@ public: void execute(optional_yield) override {} const char* name() const override { return "get_bucket_meta_search"; } - std::string canonical_name() const override { return fmt::format("REST.{}.BUCKET_MDSEARCH", s->info.method); } virtual RGWOpType get_type() override { return RGW_OP_GET_BUCKET_META_SEARCH; } virtual uint32_t op_mask() override { return RGW_OP_TYPE_READ; } }; @@ -2683,7 +2684,6 @@ public: void execute(optional_yield y) override; const char* name() const override { return "delete_bucket_meta_search"; } - std::string canonical_name() const override { return fmt::format("REST.{}.BUCKET_MDSEARCH", s->info.method); } virtual RGWOpType delete_type() { return RGW_OP_DEL_BUCKET_META_SEARCH; } virtual uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } }; diff --git a/src/rgw/rgw_rest_bucket_logging.cc b/src/rgw/rgw_rest_bucket_logging.cc index 98a5f184a069d..89f785582802a 100644 --- a/src/rgw/rgw_rest_bucket_logging.cc +++ b/src/rgw/rgw_rest_bucket_logging.cc @@ -124,6 +124,7 @@ public: rgw_flush_formatter_and_reset(s, s->formatter); } const char* name() const override { return "get_bucket_logging"; } + std::string canonical_name() const override { return fmt::format("REST.{}.LOGGING", s->info.method); } RGWOpType get_type() override { return RGW_OP_GET_BUCKET_LOGGING; } uint32_t op_mask() override { return RGW_OP_TYPE_READ; } }; @@ -215,6 +216,7 @@ class RGWPutBucketLoggingOp : public RGWDefaultResponseOp { } const char* name() const override { return "put_bucket_logging"; } + std::string canonical_name() const override { return fmt::format("REST.{}.LOGGING", s->info.method); } RGWOpType get_type() override { return RGW_OP_PUT_BUCKET_LOGGING; } uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } @@ -373,6 +375,7 @@ class RGWPostBucketLoggingOp : public RGWDefaultResponseOp { } const char* name() const override { return "post_bucket_logging"; } + std::string canonical_name() const override { return fmt::format("REST.{}.LOGGING", s->info.method); } RGWOpType get_type() override { return RGW_OP_POST_BUCKET_LOGGING; } uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; } -- 2.39.5