Querying Enterprise
This feature is in alpha and certain aspects will change
We're very excited for people to use this feature. However, please note that changes in the API, behaviour and security will evolve. The feature is suitable to use in controlled testing environments.
Explorer recommended way to discover resources is via its search dialog. This guide provides the background to understand it and set how to use it.
Schema
Every resource is normalised to the following common schema:
| Key | Description | 
|---|---|
| Cluster | Name of cluster where the resource exists. As gitops cluster <GitopsClusterNamespace,GitopsClusterName> | 
| Namespace | Namespace name where the resource exists. | 
| Kind | Resource kubernetes type or kind | 
| Name | Resource name as specified in its manifest. | 
| Status | Resource health status. Indicates the status of its reconciliation. | 
| Message | Resource health status message. It extends status field with information about the status. | 
For a podinfo helm release from a cluster default/progress-delivery-demo2-32 like this:
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
  name: podinfo
  namespace: flux-system
spec:
  chart:
    spec:
      chart: podinfo
      interval: 1m
      reconcileStrategy: ChartVersion
      sourceRef:
        kind: HelmRepository
        name: podinfo
      version: 6.0.0
  interval: 1m
status:
  conditions:
  - message: Release reconciliation succeeded
    reason: ReconciliationSucceeded
    status: "True"
    type: Ready
The schema looks like
| Cluster | Namespace | Kind | Name | Status | Message | 
|---|---|---|---|---|---|
| default/progress-delivery-demo2-32 | flux-system | HelmRelease | podinfo | Success | Release reconciliation succeeded | 
And represented in the UI like

Querying
Based on the previous schema you have two main modes to discover or filter the data
- Filter by key and value: when you know the pair <key,value> that you want to filter from.
- Filter by value: when you want to filter across keys or does not know the key
For key:value filter the results would be those results where key=value exactly.
Filter by key and value
You search with the format key:value indicating that you want to filter the resources matching the key and value.
A couple of examples could be:
- kind:HelmReleaseto filter all helm releases.
- status:Failedto find all failing resources.
Filter by value
You search with a single term value indicating that you want to filter across the supported keys by values.
The value would be search cross keys: name, namespace and cluster as synthatic sugar for name:value OR namespace:value OR cluster:value.
An example cold be using podinfo that would translate into name:podinfo OR namespace:podinfo OR cluster:podinfo.
Operators
AND
You could refine filtered results by using AND semantics adding different filters.
For example if you want to have all the resources within flux-system namespace from management cluster you could
create a query like the following:

with two sequential filters namespace:flux-system and cluster:management to achieve it.
FAQ
Here a set of questions around querying to allow you get started by practice.
How can I discover resources from a cluster?
You could use the single term with clusterName or cluster:clusterName
For example for management cluster could be management or cluster:management

How can I discover resources from a namespace?
You could use the single term with namespaceName or namespace:namespaceName.
How can I discover applications?
You should filter by kind where kind could be either HelmRelease or Kustomization like kind:Kustomization or kind:HelmRelease.
You could also use the pre-built filters.

Remember that key:value is key=value
- kind:HelmReleasereturns all Helm Releases apps
- kind:helmreleasewont return anything
How can I discover failed applications?
You should filter by status:Failed to find the failing apps or use the pre-built filters.
How can I discover resources by name?
You could use the single term with resourceName or name:resourceName.