@@ -74,30 +74,56 @@ describe('LogDomain.queryToLink', () => {
7474 {
7575 // LogQL query
7676 query : `log:infrastructure:{kubernetes_namespace_name="default",kubernetes_pod_name="foo"}` ,
77- constraint : Constraint . fromAPI ( {
78- start : '2025-03-25T10:00:00.000Z' ,
79- end : '2025-03-25T22:00:00.000Z' ,
80- } ) ,
81- url : new URIRef ( `monitoring/logs` , {
82- q : '{kubernetes_namespace_name="default",kubernetes_pod_name="foo"}' ,
83- tenant : 'infrastructure' ,
84- start : 1742896800000 ,
85- end : 1742940000000 ,
86- } ) ,
77+ q : '{kubernetes_namespace_name="default",kubernetes_pod_name="foo"}' ,
78+ tenant : 'infrastructure' ,
8779 } ,
8880 {
8981 // k8s Pod query
9082 query : 'log:infrastructure:{"namespace":"default","name":"foo"}' ,
91- constraint : Constraint . fromAPI ( {
83+ q : '{kubernetes_namespace_name="default",kubernetes_pod_name="foo"}' ,
84+ tenant : 'infrastructure' ,
85+ } ,
86+ {
87+ // k8s Pod query with labels
88+ query : 'log:infrastructure:{"namespace":"default","name":"foo","labels":{"a":"b","c":"d"}}' ,
89+ q : '{kubernetes_namespace_name="default",kubernetes_pod_name="foo"}|json|kubernetes_labels_a="b"|kubernetes_labels_c="d"' ,
90+ tenant : 'infrastructure' ,
91+ } ,
92+ {
93+ // k8s partial query
94+ query : 'log:infrastructure:{"namespace":"default","labels":{}}' ,
95+ q : '{kubernetes_namespace_name="default"}' ,
96+ tenant : 'infrastructure' ,
97+ } ,
98+ {
99+ // k8s partial query
100+ query :
101+ 'log:infrastructure:{"namespace":"openshift-monitoring","labels":{"app":"cluster-monitoring-operator"}}' ,
102+ q : '{kubernetes_namespace_name="openshift-monitoring"}|json|kubernetes_labels_app="cluster-monitoring-operator"' ,
103+ tenant : 'infrastructure' ,
104+ } ,
105+
106+ {
107+ query : 'log:application:{}' ,
108+ q : '{}' ,
109+ tenant : 'application' ,
110+ } ,
111+ ] ) ( '$query' , ( { query, q, tenant } ) => {
112+ const got = new LogDomain ( ) . queryToLink (
113+ Query . parse ( query ) ,
114+ Constraint . fromAPI ( {
92115 start : '2025-03-25T10:00:00.000Z' ,
93116 end : '2025-03-25T22:00:00.000Z' ,
94117 } ) ,
95-
96- url : new URIRef ( 'k8s/ns/default/core~v1~Pod/foo/aggregated-logs' ) ,
97- } ,
98- ] ) ( '$query' , ( { url, query, constraint } ) =>
99- expect ( new LogDomain ( ) . queryToLink ( Query . parse ( query ) , constraint ) ) . toEqual ( url ) ,
100- ) ;
118+ ) ;
119+ const want = new URIRef ( 'monitoring/logs' , {
120+ q,
121+ tenant,
122+ start : 1742896800000 ,
123+ end : 1742940000000 ,
124+ } ) ;
125+ expect ( got . toString ( ) ) . toEqual ( want . toString ( ) ) ;
126+ } ) ;
101127} ) ;
102128
103129describe ( 'expected errors' , ( ) => {
0 commit comments