]>
git.proxmox.com Git - ceph.git/blob - ceph/src/common/zipkin_trace.h
1 // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab
3 #ifndef COMMON_ZIPKIN_TRACE_H
4 #define COMMON_ZIPKIN_TRACE_H
7 #include "include/encoding.h"
11 #include <ztracer.hpp>
15 // add stubs for noop Trace and Endpoint
17 // match the "real" struct
18 struct blkin_trace_info
{
21 int64_t parent_span_id
;
26 static inline int ztrace_init() { return 0; }
30 Endpoint(const char *name
) {}
31 Endpoint(const char *ip
, int port
, const char *name
) {}
33 void copy_ip(const std::string
&newip
) {}
34 void copy_name(const std::string
&newname
) {}
35 void copy_address_from(const Endpoint
*endpoint
) {}
36 void share_address_from(const Endpoint
*endpoint
) {}
37 void set_port(int p
) {}
43 Trace(const char *name
, const Endpoint
*ep
, const Trace
*parent
= NULL
) {}
44 Trace(const char *name
, const Endpoint
*ep
,
45 const blkin_trace_info
*i
, bool child
=false) {}
47 bool valid() const { return false; }
48 operator bool() const { return false; }
50 int init(const char *name
, const Endpoint
*ep
, const Trace
*parent
= NULL
) {
53 int init(const char *name
, const Endpoint
*ep
,
54 const blkin_trace_info
*i
, bool child
=false) {
58 void copy_name(const std::string
&newname
) {}
60 const blkin_trace_info
* get_info() const { return NULL
; }
61 void set_info(const blkin_trace_info
*i
) {}
63 void keyval(const char *key
, const char *val
) const {}
64 void keyval(const char *key
, int64_t val
) const {}
65 void keyval(const char *key
, const char *val
, const Endpoint
*ep
) const {}
66 void keyval(const char *key
, int64_t val
, const Endpoint
*ep
) const {}
68 void event(const char *event
) const {}
69 void event(const char *event
, const Endpoint
*ep
) const {}
75 static inline void encode(const blkin_trace_info
& b
, ceph::buffer::list
& bl
)
78 encode(b
.trace_id
, bl
);
79 encode(b
.span_id
, bl
);
80 encode(b
.parent_span_id
, bl
);
83 static inline void decode(blkin_trace_info
& b
, ceph::buffer::list::const_iterator
& p
)
86 decode(b
.trace_id
, p
);
88 decode(b
.parent_span_id
, p
);
93 #endif // COMMON_ZIPKIN_TRACE_H