for comprehension calls map.
`for (t <- optTracer) return t.doSomething` `===` `optTracer.map(t => t.doSomething)`

Both will return `None` if optTracer is `None`. Same output code gets generated. Use whatever is more readable to you.