25#ifndef ROUTING_TRACER_INCLUDED
26#define ROUTING_TRACER_INCLUDED
108 case Direction::kClientToRouter:
110 case Direction::kRouterToClient:
112 case Direction::kRouterToServer:
114 case Direction::kServerToRouter:
116 case Direction::kServerClose:
118 case Direction::kClientClose:
130 auto now = clock_type::now();
133 std::chrono::duration_cast<std::chrono::microseconds>(now -
start_);
135 std::chrono::duration_cast<std::chrono::microseconds>(now -
last_);
138 oss <<
"/* " << std::setw(10) << delta_now.count() <<
" us ("
139 << std::showpos << std::setw(10) << delta_last.count() << std::noshowpos
157 fputs(oss.str().c_str(), stderr);
162 explicit operator bool()
const {
return enabled_; }
std::string name_
Definition: tracer.h:69
std::string name() const
Definition: tracer.h:66
Stage(std::string name)
Definition: tracer.h:64
Direction
Definition: tracer.h:72
std::optional< Direction > direction() const
Definition: tracer.h:86
std::optional< Direction > direction_
Definition: tracer.h:100
std::optional< Stage > stage_
Definition: tracer.h:101
Wait
Definition: tracer.h:81
Event & stage(std::string_view s)
Definition: tracer.h:89
std::optional< Stage > stage() const
Definition: tracer.h:87
Event & direction(Direction dir)
Definition: tracer.h:94
traces the timestamps of events in a stderr log.
Definition: tracer.h:48
clock_type::time_point start_
Definition: tracer.h:167
static std::string direction(Event::Direction direction)
Definition: tracer.h:104
bool enabled_
Definition: tracer.h:165
clock_type::time_point last_
Definition: tracer.h:168
static std::string stage(Event::Stage st)
Definition: tracer.h:125
Tracer(bool enabled)
Definition: tracer.h:54
std::chrono::steady_clock clock_type
Definition: tracer.h:50
void trace(Event e)
Definition: tracer.h:127
std::string dir
Double write files location.
Definition: buf0dblwr.cc:76
std::basic_ostringstream< char, std::char_traits< char >, ut::allocator< char > > ostringstream
Specialization of basic_ostringstream which uses ut::allocator.
Definition: ut0new.h:2869
required bool enabled
Definition: replication_group_member_actions.proto:32