#pragma once #include #include #include #include #include namespace DB { struct TraceLogElement { using TraceDataType = DataTypeEnum8; static const TraceDataType::Values trace_values; time_t event_time{}; UInt64 timestamp_ns{}; TraceType trace_type{}; UInt64 thread_id{}; String query_id{}; Array trace{}; UInt64 size{}; /// Allocation size in bytes for TraceType::Memory static std::string name() { return "TraceLog"; } static Block createBlock(); void appendToBlock(Block & block) const; }; class TraceLog : public SystemLog { using SystemLog::SystemLog; }; }