Werk #14417: Service outputs: Render byte-related units using consistent SI/IEC prefixes

Component Checks & agents
Title Service outputs: Render byte-related units using consistent SI/IEC prefixes
Date Jun 16, 2022
Checkmk Editon Checkmk Raw (CRE)
Checkmk Version 2.2.0i1
Level Trivial Change
Class Bug Fix
Compatibility Compatible - no manual interaction needed

There are two options for rendering a raw value in bytes as a human-readable number:

  • SI unit prefixes, where the base factor is 1,000 and the unit prefixes are k, M, G, etc. For example, 1,500 B would be rendered as 1.5 kB.
  • IEC unit prefixes, where the base factor is 1,024 and the unit prefixes are Ki, Mi, Gi, etc. For example, 1,500 B would be rendered as 1.46 KiB.

Before this werk, Checkmk mixed up these two systems when rendering service outputs by using a base factor of 1,024 in combination with SI unit prefixes. After this werk, Checkmk renders byte-related units in service outputs consistenly:

  • When displaying e.g. "1.23 MB" in a service output, the underlying value in bytes is 1.23 * 1000^2 B.
  • When displaying e.g. "14.7 KiB" in a service output, the underlying value in bytes is 14.7 * 1024 B.
  • To the list of all Werks