initial code repo
[stor4nfv.git] / src / ceph / src / rgw / rgw_request.cc
diff --git a/src/ceph/src/rgw/rgw_request.cc b/src/ceph/src/rgw/rgw_request.cc
new file mode 100644 (file)
index 0000000..dcad199
--- /dev/null
@@ -0,0 +1,38 @@
+// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
+// vim: ts=8 sw=2 smarttab
+
+#include "rgw_op.h"
+#include "rgw_request.h"
+
+#define dout_context g_ceph_context
+#define dout_subsys ceph_subsys_rgw
+
+/* XXX */
+void RGWRequest::log_format(struct req_state *s, const char *fmt, ...)
+{
+#define LARGE_SIZE 1024
+  char buf[LARGE_SIZE];
+  va_list ap;
+
+  va_start(ap, fmt);
+  vsnprintf(buf, sizeof(buf), fmt, ap);
+  va_end(ap);
+
+  log(s, buf);
+} /* RGWRequest::log_format */
+
+void RGWRequest::log_init() {
+  ts = ceph_clock_now();
+}
+
+void RGWRequest::log(struct req_state *s, const char *msg) {
+  if (s->info.method && req_str.size() == 0) {
+    req_str = s->info.method;
+    req_str.append(" ");
+    req_str.append(s->info.request_uri);
+  }
+  utime_t t = ceph_clock_now() - ts;
+  dout(2) << "req " << id << ":" << t << ":" << s->dialect << ":"
+         << req_str << ":" << (op ? op->name() : "") << ":" << msg
+         << dendl;
+}