Inner join yields only one row per match

  • What Grafana version and what operating system are you using?
  • Grafana 9.4.12
  • OS: Azure Managed Grafana
  • What are you trying to achieve?
    Build a joined table from an Azure Resource Graph Query and a Prometheus.
    The azure resource graph allows querying for security assessments on scanned container registry images. The assessments only refer to the sha256 docker image digests - not the tagged image “name”.
    To limit alerts we want to limit them to currently running images, using a prometheus query.

  • How are you trying to achieve it?
    I’ve built mixed datasource queries as below:

Both queries themselves seem fine.
To join the two results we use Join by Field on image_id with mode inner.
Without the transformation we get multiple alerts for each image. With the transformation switched on the join partly seems to work, but not matter what image and how many “input rows” there are - only one row per image_id is produced by the join.

  • What happened?
    see above

  • What did you expect to happen?
    A “proper” inner join, that yields all rows from both sides with a matching image_id

  • Can you copy/paste the configuration(s) that you are having problems with?

  • Did you receive any errors in the Grafana UI or in related logs? If so, please tell us exactly what they were.

  • Did you follow any online instructions? If so, what is the URL?