{% macro sparkline(data, w=120, h=28, color='#0d6efd') %} {% set n = (data|length) or 1 %} {% set mx = (data|max) if (data and (data|max) > 0) else 1 %} {% set bw = w / n %} {% for v in data %} {% set bh = (v / mx) * (h - 2) %} {% endfor %} {% endmacro %} {% macro barchart(complete, error, w=600, h=56) %} {% set n = (complete|length) or 1 %} {% set bw = w / n %} {% set pad = 4 %} {% set base = h - pad %} {% set ph = base - pad %} {% set ns = namespace(mx=1) %} {% for i in range(n) %} {% set tot = complete[i] + (error[i] if error else 0) %} {% if tot > ns.mx %}{% set ns.mx = tot %}{% endif %} {% endfor %} {% for gx in [n // 4, n // 2, 3 * n // 4] %} {% endfor %} {% for i in range(n) %} {% set c = complete[i] %} {% set e = error[i] if error else 0 %} {% set x = i * bw + bw * 0.15 %} {% set bwid = bw * 0.7 %} {% set hc = (c / ns.mx) * ph %} {% set he = (e / ns.mx) * ph %} {% if c %}{% endif %} {% if e %}{% endif %} {% endfor %} {% endmacro %} {% macro sigbadge(signal) %} {%- set m = {'complete': 'success', 'error': 'danger', 'retrying': 'warning', 'executing': 'primary', 'enqueued': 'secondary', 'scheduled': 'info', 'revoked': 'dark', 'canceled': 'dark', 'locked': 'secondary', 'rate-limited': 'secondary', 'timeout': 'warning', 'expired': 'warning', 'interrupted': 'warning'} -%} {{ signal }} {%- endmacro %} {% macro dur(seconds) %}{% if seconds is none %}{% elif seconds < 1 %}{{ '%d'|format(seconds * 1000) }} ms{% else %}{{ '%.2f'|format(seconds) }} s{% endif %}{% endmacro %} {% macro elapsed(seconds) %}{% if seconds < 60 %}{{ '%.1f'|format(seconds) }}s{% elif seconds < 3600 %}{{ '%d'|format(seconds // 60) }}m {{ '%d'|format(seconds % 60) }}s{% else %}{{ '%d'|format(seconds // 3600) }}h {{ '%d'|format((seconds % 3600) // 60) }}m{% endif %}{% endmacro %}