(t *testing.T, traceIDText string)
| 560 | } |
| 561 | |
| 562 | func searchesThatMatch(t *testing.T, traceIDText string) []struct { |
| 563 | name string |
| 564 | req traceql.FetchSpansRequest |
| 565 | } { |
| 566 | blobSpan5 := test.DedicatedBlobTestString() |
| 567 | blobSpan5Eq := fmt.Sprintf(`{span.dedicated.span.5 = "%s"}`, blobSpan5) |
| 568 | blobSpan5Re := fmt.Sprintf(`{span.dedicated.span.5 =~ "^B{%d}$"}`, test.DedicatedBlobTestSize) |
| 569 | return []struct { |
| 570 | name string |
| 571 | req traceql.FetchSpansRequest |
| 572 | }{ |
| 573 | {"empty request", traceql.FetchSpansRequest{}}, |
| 574 | { |
| 575 | "Time range inside trace", |
| 576 | traceql.FetchSpansRequest{ |
| 577 | StartTimeUnixNanos: uint64(1100 * time.Second), |
| 578 | EndTimeUnixNanos: uint64(1200 * time.Second), |
| 579 | }, |
| 580 | }, |
| 581 | { |
| 582 | "Time range overlap start", |
| 583 | traceql.FetchSpansRequest{ |
| 584 | StartTimeUnixNanos: uint64(900 * time.Second), |
| 585 | EndTimeUnixNanos: uint64(1100 * time.Second), |
| 586 | }, |
| 587 | }, |
| 588 | { |
| 589 | "Time range overlap end", |
| 590 | traceql.FetchSpansRequest{ |
| 591 | StartTimeUnixNanos: uint64(1900 * time.Second), |
| 592 | EndTimeUnixNanos: uint64(2100 * time.Second), |
| 593 | }, |
| 594 | }, |
| 595 | // Intrinsics |
| 596 | {"Intrinsic: name", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + LabelName + ` = "hello"}`)}, |
| 597 | {"Intrinsic: duration = 100s", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + LabelDuration + ` = 100s}`)}, |
| 598 | {"Intrinsic: duration > 99s", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + LabelDuration + ` > 99s}`)}, |
| 599 | {"Intrinsic: duration >= 100s", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + LabelDuration + ` >= 100s}`)}, |
| 600 | {"Intrinsic: duration < 101s", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + LabelDuration + ` < 101s}`)}, |
| 601 | {"Intrinsic: duration <= 100s", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + LabelDuration + ` <= 100s}`)}, |
| 602 | {"Intrinsic: status = error", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + LabelStatus + ` = error}`)}, |
| 603 | {"Intrinsic: status = 2", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + LabelStatus + ` = 2}`)}, |
| 604 | {"Intrinsic: statusMessage = STATUS_CODE_ERROR", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + "statusMessage" + ` = "STATUS_CODE_ERROR"}`)}, |
| 605 | {"Intrinsic: kind = client", traceql.MustExtractFetchSpansRequestWithMetadata(`{` + LabelKind + ` = client }`)}, |
| 606 | {"Intrinsic: trace:id", traceql.MustExtractFetchSpansRequestWithMetadata(`{ trace:id = "` + traceIDText + `" }`)}, |
| 607 | // Resource well-known attributes |
| 608 | {".service.name", traceql.MustExtractFetchSpansRequestWithMetadata(`{.` + LabelServiceName + ` = "spanservicename"}`)}, // Overridden at span}, |
| 609 | {".cluster", traceql.MustExtractFetchSpansRequestWithMetadata(`{.` + LabelCluster + ` = "cluster"}`)}, |
| 610 | {".namespace", traceql.MustExtractFetchSpansRequestWithMetadata(`{.` + LabelNamespace + ` = "namespace"}`)}, |
| 611 | {".pod", traceql.MustExtractFetchSpansRequestWithMetadata(`{.` + LabelPod + ` = "pod"}`)}, |
| 612 | {".container", traceql.MustExtractFetchSpansRequestWithMetadata(`{.` + LabelContainer + ` = "container"}`)}, |
| 613 | {".k8s.namespace.name", traceql.MustExtractFetchSpansRequestWithMetadata(`{.` + LabelK8sNamespaceName + ` = "k8snamespace"}`)}, |
| 614 | {".k8s.cluster.name", traceql.MustExtractFetchSpansRequestWithMetadata(`{.` + LabelK8sClusterName + ` = "k8scluster"}`)}, |
| 615 | {".k8s.pod.name", traceql.MustExtractFetchSpansRequestWithMetadata(`{.` + LabelK8sPodName + ` = "k8spod"}`)}, |
| 616 | {".k8s.container.name", traceql.MustExtractFetchSpansRequestWithMetadata(`{.` + LabelK8sContainerName + ` = "k8scontainer"}`)}, |
| 617 | {"resource.service.name", traceql.MustExtractFetchSpansRequestWithMetadata(`{resource.` + LabelServiceName + ` = "myservice"}`)}, |
| 618 | {"resource.cluster", traceql.MustExtractFetchSpansRequestWithMetadata(`{resource.` + LabelCluster + ` = "cluster"}`)}, |
| 619 | {"resource.namespace", traceql.MustExtractFetchSpansRequestWithMetadata(`{resource.` + LabelNamespace + ` = "namespace"}`)}, |
no test coverage detected