For a background worker, I would keep two fields in the log: started_at_utc for correlating events across services, and elapsed_ms measured with a monotonic source inside the worker. A restart should start a new interval rather than reuse a saved raw monotonic reading. That keeps calendar scheduling and duration measurement explicit instead of mixing them in one timestamp.