Details
-
Bug
-
Status: Accepted
-
Low
-
Resolution: Unresolved
-
PUP 4.10.1
-
None
-
None
-
Phoenix
-
Inspection
-
38432
-
1
-
Needs Assessment
Description
Puppet has support for timing and profiling execution through the Puppet::Util::Profiler::WallClock class, used for profiling Puppet Server operations, and the Puppet::Util.thinmark method, used for measuring things like resource application. Historically these methods have measured time by calling Time.now. However, this method returns a value from the OS REALTIME clock, which can be affected by events like NTP updates. Since the puppet agent often initiates a NTP update, these jumps can create confusing profile results.
In 2.1.0, Ruby added methods to access a monotonic clock which isn't affected by things like NTP updates. We should prefer this clock for profiling timers when it is available:
Attachments
Issue Links
- relates to
-
PUP-6344 metrics.time.total does not correlate to time reported in log
-
- Closed
-