How does proxy entity and checks work? I am not getting events generated

I’m currently working on the Sensu backend server and don’t have agents installed, as they require additional hardware. I need to learn about the observability pipeline chain, including checks, events, handlers, etc. I was thinking if I could create dummy entities and run checks on them to generate events and trigger handler. I learned about proxy entities and checks. I created manifests files like this:

---
type: Entity
api_version: core/v2
metadata:
  name: dummy-entity
  labels:
    entity_class: proxy
spec:
  entity_class: proxy
  subscriptions:
    - dummy-entity
  system:
    hostname: "dummy-host"
    os: "Linux"
    platform: "Ubuntu"
    platform_family: "Debian"
    platform_version: "20.04"
---
type: CheckConfig
api_version: core/v2
metadata:
  name: dummy-check
spec:
  command: "/bin/true"
  interval: 6
  publish: true
  subscriptions:
    - dummy-entity
  proxy_entity_name: "dummy-entity"
  proxy_requests:
    entity_attributes:
      - "labels.entity_class==proxy"
  handlers:
    - dummy-handler
---
type: Handler
api_version: core/v2
metadata:
  name: dummy-handler
spec:
  type: pipe
  command: "/bin/echo"
  timeout: 10

But I do not get any events generated at all and the backend log says :

Apr 09 12:21:30 exaadmin4003.example.customer.local sensu-backend[1619]: {"check":"dummy-check","component":"schedulerd","level":"warning","msg":"no matching entities, check will not be published","namespace":"default","time":"2025-04-09T12:21:30+05:30"}
Apr 09 12:21:36 exaadmin4003.example.customer.local sensu-backend[1619]: {"component":"schedulerd","level":"debug","msg":"check is not subdued","name":"dummy-check","namespace":"default","scheduler_type":"interval","time":"2025-04-09T12:21:36+05:30"}
Apr 09 12:21:36 exaadmin4003.example.customer.local sensu-backend[1619]: {"check":"dummy-check","component":"schedulerd","level":"warning","msg":"no matching entities, check will not be published","namespace":"default","time":"2025-04-09T12:21:36+05:30"}
Apr 09 12:21:42 exaadmin4003.example.customer.local sensu-backend[1619]: {"component":"schedulerd","level":"debug","msg":"check is not subdued","name":"dummy-check","namespace":"default","scheduler_type":"interval","time":"2025-04-09T12:21:42+05:30"}
Apr 09 12:21:42 exaadmin4003.example.customer.local sensu-backend[1619]: {"check":"dummy-check","component":"schedulerd","level":"warning","msg":"no matching entities, check will not be published","namespace":"default","time":"2025-04-09T12:21:42+05:30"}
Apr 09 12:21:48 exaadmin4003.example.customer.local sensu-backend[1619]: {"component":"schedulerd","level":"debug","msg":"check is not subdued","name":"dummy-check","namespace":"default","scheduler_type":"interval","time":"2025-04-09T12:21:48+05:30"}
Apr 09 12:21:48 exaadmin4003.example.customer.local sensu-backend[1619]: {"check":"dummy-check","component":"schedulerd","level":"warning","msg":"no matching entities, check will not be published","namespace":"default","time":"2025-04-09T12:21:48+05:30"}

Any solution to this? Or any other suggestion?

Hey @Uday_Singh

Hi, I’m Dishi from Sensu — thanks for sharing your configuration and backend logs!

The warning you’re encountering —

"no matching entities, check will not be published" — occurs when no Sensu agent entity is subscribed to the check’s subscription. This means that although the check is configured, there’s no agent available to actually execute it.

A quick clarification on proxy entities:

Proxy entities are useful for monitoring resources where you can’t install a Sensu agent (like external websites or http certificate). However, they don’t run checks themselves. Instead, you still need at least one Sensu agent subscribed to the check’s subscription to execute the check on behalf of the proxy entity.

For more clarity, I recommend reviewing these sections in the documentation:

To simplify your setup, you might consider running an agent on the same server where your backend is deployed. In many cases, this won’t require additional infrastructure.

Also, if you’re looking to deepen your understanding of Sensu’s observability pipeline, here is a helpful resources to explore