@@ -59,6 +59,8 @@ LogicalType HTTPLogType::GetLogType() {
5959 child_list_t <LogicalType> request_child_list = {
6060 {" type" , LogicalType::VARCHAR},
6161 {" url" , LogicalType::VARCHAR},
62+ {" start_time" , LogicalType::TIMESTAMP_TZ},
63+ {" duration_ms" , LogicalType::BIGINT},
6264 {" headers" , LogicalType::MAP (LogicalType::VARCHAR, LogicalType::VARCHAR)},
6365 };
6466 auto request_type = LogicalType::STRUCT (request_child_list);
@@ -91,7 +93,10 @@ string HTTPLogType::ConstructLogMessage(BaseRequest &request, optional_ptr<HTTPR
9193 {" type" , Value (EnumUtil::ToString (request.type ))},
9294 {" url" , Value (request.url )},
9395 {" headers" , CreateHTTPHeadersValue (request.headers )},
94- };
96+ {" start_time" , request.have_request_timing ? Value::TIMESTAMP (request.request_start ) : Value ()},
97+ {" duration_ms" , request.have_request_timing ? Value::BIGINT (Timestamp::GetEpochMs (request.request_end ) -
98+ Timestamp::GetEpochMs (request.request_start ))
99+ : Value ()}};
95100 auto request_value = Value::STRUCT (request_child_list);
96101 Value response_value;
97102 if (response) {
0 commit comments