The Micrometer library creates, by default, a parent observation span for Spring Web applications.

But for non-web applications such as simple Boot CommandLineRunner or Vaadin's AppShellConfigurator, it is applications responsibility to create a parent-root span to ensure that errors that happened during observation are logged with a valid trace-id.