pub async fn run( config: Config, event_tx: Option<Sender<Value>>, cancel: CancellationToken, ) -> Result<(), Error>