Before the monitoring pipeline is started, it is not possible to emit events
from the metrics input; not only is the `agent` nil (resulting in a cryptic
`NoMethodError` when we attempt to get its `ephemeral_id`), but the `queue`
will also be `nil` until the `run` method is invoked.
Instead, start the poller once we are sent `run` and are guaranteed to have a
`queue` on which to put the events; when the snapshot poller is running, skip
any invocations before `agent` is available.
Resolves: elastic/logstash#9462
Fixes#9627