|
|
|
|
@@ -943,7 +943,7 @@ func TestStmtBuilderBodyField(t *testing.T) {
|
|
|
|
|
expected: qbtypes.Statement{
|
|
|
|
|
Query: "WITH __resource_filter AS (SELECT fingerprint FROM signoz_logs.distributed_logs_v2_resource WHERE true AND seen_at_ts_bucket_start >= ? AND seen_at_ts_bucket_start <= ?) SELECT timestamp, id, trace_id, span_id, trace_flags, severity_text, severity_number, scope_name, scope_version, body_v2 as body, attributes_string, attributes_number, attributes_bool, resources_string, scope_string FROM signoz_logs.distributed_logs_v2 WHERE resource_fingerprint GLOBAL IN (SELECT fingerprint FROM __resource_filter) AND body_v2.message <> ? AND timestamp >= ? AND ts_bucket_start >= ? AND timestamp < ? AND ts_bucket_start <= ? LIMIT ?",
|
|
|
|
|
Args: []any{uint64(1747945619), uint64(1747983448), "", "1747947419000000000", uint64(1747945619), "1747983448000000000", uint64(1747983448), 10},
|
|
|
|
|
Warnings: []string{bodySearchDefaultWarning},
|
|
|
|
|
Warnings: []string{querybuilder.BodySearchDefaultWarning},
|
|
|
|
|
},
|
|
|
|
|
expectedErr: nil,
|
|
|
|
|
},
|
|
|
|
|
@@ -974,7 +974,7 @@ func TestStmtBuilderBodyField(t *testing.T) {
|
|
|
|
|
expected: qbtypes.Statement{
|
|
|
|
|
Query: "WITH __resource_filter AS (SELECT fingerprint FROM signoz_logs.distributed_logs_v2_resource WHERE true AND seen_at_ts_bucket_start >= ? AND seen_at_ts_bucket_start <= ?) SELECT timestamp, id, trace_id, span_id, trace_flags, severity_text, severity_number, scope_name, scope_version, body_v2 as body, attributes_string, attributes_number, attributes_bool, resources_string, scope_string FROM signoz_logs.distributed_logs_v2 WHERE resource_fingerprint GLOBAL IN (SELECT fingerprint FROM __resource_filter) AND body_v2.message = ? AND timestamp >= ? AND ts_bucket_start >= ? AND timestamp < ? AND ts_bucket_start <= ? LIMIT ?",
|
|
|
|
|
Args: []any{uint64(1747945619), uint64(1747983448), "", "1747947419000000000", uint64(1747945619), "1747983448000000000", uint64(1747983448), 10},
|
|
|
|
|
Warnings: []string{bodySearchDefaultWarning},
|
|
|
|
|
Warnings: []string{querybuilder.BodySearchDefaultWarning},
|
|
|
|
|
},
|
|
|
|
|
expectedErr: nil,
|
|
|
|
|
},
|
|
|
|
|
@@ -1005,7 +1005,7 @@ func TestStmtBuilderBodyField(t *testing.T) {
|
|
|
|
|
expected: qbtypes.Statement{
|
|
|
|
|
Query: "WITH __resource_filter AS (SELECT fingerprint FROM signoz_logs.distributed_logs_v2_resource WHERE true AND seen_at_ts_bucket_start >= ? AND seen_at_ts_bucket_start <= ?) SELECT timestamp, id, trace_id, span_id, trace_flags, severity_text, severity_number, scope_name, scope_version, body_v2 as body, attributes_string, attributes_number, attributes_bool, resources_string, scope_string FROM signoz_logs.distributed_logs_v2 WHERE resource_fingerprint GLOBAL IN (SELECT fingerprint FROM __resource_filter) AND LOWER(body_v2.message) LIKE LOWER(?) AND timestamp >= ? AND ts_bucket_start >= ? AND timestamp < ? AND ts_bucket_start <= ? LIMIT ?",
|
|
|
|
|
Args: []any{uint64(1747945619), uint64(1747983448), "%error%", "1747947419000000000", uint64(1747945619), "1747983448000000000", uint64(1747983448), 10},
|
|
|
|
|
Warnings: []string{bodySearchDefaultWarning},
|
|
|
|
|
Warnings: []string{querybuilder.BodySearchDefaultWarning},
|
|
|
|
|
},
|
|
|
|
|
expectedErr: nil,
|
|
|
|
|
},
|
|
|
|
|
@@ -1085,7 +1085,7 @@ func TestStmtBuilderBodyFullTextSearch(t *testing.T) {
|
|
|
|
|
expectedErr error
|
|
|
|
|
}{
|
|
|
|
|
{
|
|
|
|
|
name: "body_contains",
|
|
|
|
|
name: "fts",
|
|
|
|
|
requestType: qbtypes.RequestTypeRaw,
|
|
|
|
|
query: qbtypes.QueryBuilderQuery[qbtypes.LogAggregation]{
|
|
|
|
|
Signal: telemetrytypes.SignalLogs,
|
|
|
|
|
@@ -1094,13 +1094,30 @@ func TestStmtBuilderBodyFullTextSearch(t *testing.T) {
|
|
|
|
|
},
|
|
|
|
|
enableBodyJSONQuery: true,
|
|
|
|
|
expected: qbtypes.Statement{
|
|
|
|
|
Query: "WITH __resource_filter AS (SELECT fingerprint FROM signoz_logs.distributed_logs_v2_resource WHERE true AND seen_at_ts_bucket_start >= ? AND seen_at_ts_bucket_start <= ?) SELECT timestamp, id, trace_id, span_id, trace_flags, severity_text, severity_number, scope_name, scope_version, body_v2 as body, attributes_string, attributes_number, attributes_bool, resources_string, scope_string FROM signoz_logs.distributed_logs_v2 WHERE resource_fingerprint GLOBAL IN (SELECT fingerprint FROM __resource_filter) AND match(LOWER(body_v2.message), LOWER(?)) AND timestamp >= ? AND ts_bucket_start >= ? AND timestamp < ? AND ts_bucket_start <= ? LIMIT ?",
|
|
|
|
|
Args: []any{uint64(1747945619), uint64(1747983448), "error", "1747947419000000000", uint64(1747945619), "1747983448000000000", uint64(1747983448), 10},
|
|
|
|
|
Query: "WITH __resource_filter AS (SELECT fingerprint FROM signoz_logs.distributed_logs_v2_resource WHERE true AND seen_at_ts_bucket_start >= ? AND seen_at_ts_bucket_start <= ?) SELECT timestamp, id, trace_id, span_id, trace_flags, severity_text, severity_number, scope_name, scope_version, body_v2 as body, attributes_string, attributes_number, attributes_bool, resources_string, scope_string FROM signoz_logs.distributed_logs_v2 WHERE resource_fingerprint GLOBAL IN (SELECT fingerprint FROM __resource_filter) AND match(LOWER(body_v2.message), LOWER(?)) AND timestamp >= ? AND ts_bucket_start >= ? AND timestamp < ? AND ts_bucket_start <= ? LIMIT ?",
|
|
|
|
|
Args: []any{uint64(1747945619), uint64(1747983448), "error", "1747947419000000000", uint64(1747945619), "1747983448000000000", uint64(1747983448), 10},
|
|
|
|
|
Warnings: []string{querybuilder.BodySearchDefaultWarning},
|
|
|
|
|
},
|
|
|
|
|
expectedErr: nil,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: "body_contains_disabled",
|
|
|
|
|
name: "fts_2",
|
|
|
|
|
requestType: qbtypes.RequestTypeRaw,
|
|
|
|
|
query: qbtypes.QueryBuilderQuery[qbtypes.LogAggregation]{
|
|
|
|
|
Signal: telemetrytypes.SignalLogs,
|
|
|
|
|
Filter: &qbtypes.Filter{Expression: "error"},
|
|
|
|
|
Limit: 10,
|
|
|
|
|
},
|
|
|
|
|
enableBodyJSONQuery: true,
|
|
|
|
|
expected: qbtypes.Statement{
|
|
|
|
|
Query: "WITH __resource_filter AS (SELECT fingerprint FROM signoz_logs.distributed_logs_v2_resource WHERE true AND seen_at_ts_bucket_start >= ? AND seen_at_ts_bucket_start <= ?) SELECT timestamp, id, trace_id, span_id, trace_flags, severity_text, severity_number, scope_name, scope_version, body_v2 as body, attributes_string, attributes_number, attributes_bool, resources_string, scope_string FROM signoz_logs.distributed_logs_v2 WHERE resource_fingerprint GLOBAL IN (SELECT fingerprint FROM __resource_filter) AND match(LOWER(body_v2.message), LOWER(?)) AND timestamp >= ? AND ts_bucket_start >= ? AND timestamp < ? AND ts_bucket_start <= ? LIMIT ?",
|
|
|
|
|
Args: []any{uint64(1747945619), uint64(1747983448), "error", "1747947419000000000", uint64(1747945619), "1747983448000000000", uint64(1747983448), 10},
|
|
|
|
|
Warnings: []string{querybuilder.BodySearchDefaultWarning},
|
|
|
|
|
},
|
|
|
|
|
expectedErr: nil,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: "fts_disabled",
|
|
|
|
|
requestType: qbtypes.RequestTypeRaw,
|
|
|
|
|
query: qbtypes.QueryBuilderQuery[qbtypes.LogAggregation]{
|
|
|
|
|
Signal: telemetrytypes.SignalLogs,
|
|
|
|
|
|