During the broker startup, an instance of each of the exporters is created, configure is called. If any of them throw at this point, then the broker startup is halted.
Then, if they don’t throw, another instance in created. This instance can throw without crashing the broker.
You can create class instance fields and assign them in configure - because configure gets called when the second, persistent instance is created.
Thanks for catching that - it is ambiguous the way I’ve written it. I’ll update it!