Uploaded image for project: 'Network Observability'
  1. Network Observability
  2. NETOBSERV-1885

Src/Dest Resource filter still present in Prom DataSource mode

    • False
    • None
    • False
    • Fixed a bug on autocomplete filters not working when using prometheus storage only.
    • NetObserv - Sprint 261, NetObserv - Sprint 262

      Description of problem:

      SrC/Dest Resource filter in filter dropdown is still present even when switched to Prom mode

      Steps to Reproduce:

      1. Deploy latest downstream bundle and flowcollector
      2. Go to console -> Network Traffic page -> Topology view
      3. Switch to Prom DataSource in Query Options dropdown

      Actual results:

      Sr/Dest Resource filter should is present

      Expected results:

      Sr/Dest Resource filter should not be present

      PTAL attached screenshots. First is with loki datasource; second with prom dataSource

      Cluster details:

      • OCP: 4.16.0-0.nightly-2024-09-19-060735
      • NetObserv operator: v1.6.2
      • Loki: v6.0.0
      • eBPF-agent: v1.6.0-76
      • FLP: v1.6.0-76
      • ConsolePlugin: e61421c

        1. image-2024-10-21-12-29-03-103.png
          140 kB
          Julien Pinsonneau
        2. image-2024-10-21-12-33-21-502.png
          20 kB
          Julien Pinsonneau
        3. Screenshot 2024-09-19 at 11.55.42 AM.png
          794 kB
          Amogh Rameshappa Devapura
        4. Screenshot 2024-09-19 at 11.55.53 AM.png
          684 kB
          Amogh Rameshappa Devapura

            [NETOBSERV-1885] Src/Dest Resource filter still present in Prom DataSource mode

            Sara Thomas added a comment -

            jpinsonn@redhat.com does this need a release note? In the filter view, I see its "Customer facing" and "Missing RN" label.

            Sara Thomas added a comment - jpinsonn@redhat.com does this need a release note? In the filter view, I see its "Customer facing" and "Missing RN" label.

            Verified now see the better filter hint. Works as expected!

            Cluster details:

            • OCP: 4.17.0-0.nightly-2024-11-07-044248
            • NetObserv operator: v0.0.0-163d552
            • Loki: Disabled
            • eBPF-agent: main
            • FLP: main
            • ConsolePlugin: 4f56035

            Amogh Rameshappa Devapura added a comment - Verified now see the better filter hint. Works as expected! Cluster details: OCP: 4.17.0-0.nightly-2024-11-07-044248 NetObserv operator: v0.0.0-163d552 Loki: Disabled eBPF-agent: main FLP: main ConsolePlugin: 4f56035

            Also it seems the autocomplete is not working properly with prom to get names:

            time="2024-10-21T10:38:15Z" level=debug msg="GetLabelValues: SrcK8S_OwnerName" module=prometheus
            time="2024-10-21T10:38:15Z" level=info msg="GetLabelValues warnings: [fetch label values from store Addr: 10.128.0.28:10901 LabelSets: {prometheus=\"openshift-user-workload-monitoring/user-workload\", prometheus_replica=\"prometheus-user-workload-0\"} MinTime: -62167219200000 MaxTime: 9223372036854775807: fetch label values from store Addr: 10.128.0.28:10901 LabelSets: {prometheus=\"openshift-user-workload-monitoring/user-workload\", prometheus_replica=\"prometheus-user-workload-0\"} MinTime: -62167219200000 MaxTime: 9223372036854775807: rpc error: code = InvalidArgument desc = expected 2xx response, got 400. Body: {\"status\":\"error\",\"errorType\":\"bad_data\",\"error\":\"match[] must contain at least one non-empty matcher\"} fetch label values from store Addr: 10.129.0.34:10901 LabelSets: {prometheus=\"openshift-monitoring/k8s\", prometheus_replica=\"prometheus-k8s-1\", source=\"DP\"} MinTime: -62167219200000 MaxTime: 9223372036854775807: fetch label values from store Addr: 10.129.0.34:10901 LabelSets:...
            time="2024-10-21T10:38:15Z" level=trace msg="Result:\n[]" module=prometheus
            time="2024-10-21T10:38:15Z" level=debug msg="GetLabelValues: DstK8S_OwnerName" module=prometheus
            time="2024-10-21T10:38:15Z" level=info msg="GetLabelValues warnings: [fetch label values from store Addr: 10.129.0.33:10901 LabelSets: {prometheus=\"openshift-user-workload-monitoring/user-workload\", prometheus_replica=\"prometheus-user-workload-1\"} MinTime: -62167219200000 MaxTime: 9223372036854775807: fetch label values from store Addr: 10.129.0.33:10901 LabelSets: {prometheus=\"openshift-user-workload-monitoring/user-workload\", prometheus_replica=\"prometheus-user-workload-1\"} MinTime: -62167219200000 MaxTime: 9223372036854775807: rpc error: code = InvalidArgument desc = expected 2xx response, got 400. Body: {\"status\":\"error\",\"errorType\":\"bad_data\",\"error\":\"match[] must contain at least one non-empty matcher\"} fetch label values from store Addr: 10.129.0.34:10901 LabelSets: {prometheus=\"openshift-monitoring/k8s\", prometheus_replica=\"prometheus-k8s-1\", source=\"DP\"} MinTime: -62167219200000 MaxTime: 9223372036854775807: fetch label values from store Addr: 10.129.0.34:10901 LabelSets:...
            time="2024-10-21T10:38:15Z" level=trace msg="Result:\n[]" module=prometheus 

            Julien Pinsonneau added a comment - Also it seems the autocomplete is not working properly with prom to get names: time= "2024-10-21T10:38:15Z" level=debug msg= "GetLabelValues: SrcK8S_OwnerName" module=prometheus time= "2024-10-21T10:38:15Z" level=info msg= "GetLabelValues warnings: [fetch label values from store Addr: 10.128.0.28:10901 LabelSets: {prometheus=\" openshift-user-workload-monitoring/user-workload\ ", prometheus_replica=\" prometheus-user-workload-0\ "} MinTime: -62167219200000 MaxTime: 9223372036854775807: fetch label values from store Addr: 10.128.0.28:10901 LabelSets: {prometheus=\" openshift-user-workload-monitoring/user-workload\ ", prometheus_replica=\" prometheus-user-workload-0\ "} MinTime: -62167219200000 MaxTime: 9223372036854775807: rpc error: code = InvalidArgument desc = expected 2xx response, got 400. Body: {\" status\ ":\" error\ ",\" errorType\ ":\" bad_data\ ",\" error\ ":\" match[] must contain at least one non-empty matcher\ "} fetch label values from store Addr: 10.129.0.34:10901 LabelSets: {prometheus=\" openshift-monitoring/k8s\ ", prometheus_replica=\" prometheus-k8s-1\ ", source=\" DP\"} MinTime: -62167219200000 MaxTime: 9223372036854775807: fetch label values from store Addr: 10.129.0.34:10901 LabelSets:... time= "2024-10-21T10:38:15Z" level=trace msg= "Result:\n[]" module=prometheus time= "2024-10-21T10:38:15Z" level=debug msg= "GetLabelValues: DstK8S_OwnerName" module=prometheus time= "2024-10-21T10:38:15Z" level=info msg= "GetLabelValues warnings: [fetch label values from store Addr: 10.129.0.33:10901 LabelSets: {prometheus=\" openshift-user-workload-monitoring/user-workload\ ", prometheus_replica=\" prometheus-user-workload-1\ "} MinTime: -62167219200000 MaxTime: 9223372036854775807: fetch label values from store Addr: 10.129.0.33:10901 LabelSets: {prometheus=\" openshift-user-workload-monitoring/user-workload\ ", prometheus_replica=\" prometheus-user-workload-1\ "} MinTime: -62167219200000 MaxTime: 9223372036854775807: rpc error: code = InvalidArgument desc = expected 2xx response, got 400. Body: {\" status\ ":\" error\ ",\" errorType\ ":\" bad_data\ ",\" error\ ":\" match[] must contain at least one non-empty matcher\ "} fetch label values from store Addr: 10.129.0.34:10901 LabelSets: {prometheus=\" openshift-monitoring/k8s\ ", prometheus_replica=\" prometheus-k8s-1\ ", source=\" DP\"} MinTime: -62167219200000 MaxTime: 9223372036854775807: fetch label values from store Addr: 10.129.0.34:10901 LabelSets:... time= "2024-10-21T10:38:15Z" level=trace msg= "Result:\n[]" module=prometheus

            rhn-support-aramesha after some investigation this is not an issue as Resource filters rely on Owner fields

             

             

             

            I admit it was not clear to me either from the filter name / descriptions:

                - id: src_resource
                  name: Resource
                  component: autocomplete
                  category: source
                  placeholder: 'E.g: Pod.default.my-pod'
                  hint: Specify an existing resource from its kind, namespace and name.
                  examples: |-
                    Specify a kind, namespace and name from existing:
                            - Select kind first from suggestions
                            - Then Select namespace from suggestions
                            - Finally select name from suggestions
                            You can also directly specify a kind, namespace and name like pod.openshift.apiserver
                - id: dst_resource
                  name: Resource
                  component: autocomplete
                  category: destination
                  placeholder: 'E.g: Pod.default.my-pod'
                  hint: Specify an existing resource from its kind, namespace and name.
                  examples: |-
                    Specify a kind, namespace and name from existing:
                            - Select kind first from suggestions
                            - Then Select namespace from suggestions
                            - Finally select name from suggestions
                            You can also directly specify a kind, namespace and name like pod.openshift.apiserver

             

            I can improve the hint to show the Deployment case too ?

            Anything else in mind ?

            Julien Pinsonneau added a comment - rhn-support-aramesha after some investigation this is not an issue as Resource filters rely on Owner fields       I admit it was not clear to me either from the filter name / descriptions:     - id: src_resource       name: Resource       component: autocomplete       category: source       placeholder: 'E.g: Pod. default .my-pod'       hint: Specify an existing resource from its kind, namespace and name.       examples: |-         Specify a kind, namespace and name from existing:                 - Select kind first from suggestions                 - Then Select namespace from suggestions                 - Finally select name from suggestions                 You can also directly specify a kind, namespace and name like pod.openshift.apiserver     - id: dst_resource       name: Resource       component: autocomplete       category: destination       placeholder: 'E.g: Pod. default .my-pod'       hint: Specify an existing resource from its kind, namespace and name.       examples: |-         Specify a kind, namespace and name from existing:                 - Select kind first from suggestions                 - Then Select namespace from suggestions                 - Finally select name from suggestions                 You can also directly specify a kind, namespace and name like pod.openshift.apiserver   I can improve the hint to show the Deployment case too ? Anything else in mind ?

              jpinsonn@redhat.com Julien Pinsonneau
              rhn-support-aramesha Amogh Rameshappa Devapura
              Amogh Rameshappa Devapura Amogh Rameshappa Devapura
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: