Am Wochenende habe ich mir mal wieder etwas Zeit genommen mein kleines Tool pagespeed10x zu aktualisieren. Es gab sogar eigentlich zwei Updates.

Dashboard

Einmal (v1.1.0) habe ich das Grafana-Dashboard aktualisiert. Diese Änderung ist eigentlich die interessantere, weil sie sichtbaren Mehrwert bietet. Die Legenden unter den Graphen sind jetzt viel übersichtlicher, bei den Feld-Daten wird nicht mehr fälschlicherweise auf die Lighthouse-Version aus dem PageSpeed Insights-Test verwiesen, da die Feld-Daten ja überhaupt nicht mit Lighthouse erfasst werden. Außerdem hab ich in der Zwischenzeit noch etwas Neues über Grafana gelernt und war nun in der Lage die prozentuale Aufteilung in Good / Average / Bad bei den Feld-Daten automatisch der rechten Y-Achse zuzuordnen. Bisher musste man das für jede URL und Desktop sowie Mobile von Hand machen.

Endlich gut lesbare Legenden unter den Graphen.

Die Feld-Daten haben nun auch je eine Gauge-Anzeige für den letzten gemessenen Wert der drei Core Web Vitals (CWV) um gleich auf einen Blick sehen zu können, wie es um die CWV steht. Außerdem habe ich auch noch die Schwellenwerte angepasst im Dashboard. Lighthouse hat im Gegensatz zu den CWV allerdings unterschiedlichen Schwellenwerte für Mobile und Desktop, jedoch kann Grafana die Schwellenwerte nicht dynamisch ändern. Daher habe ich mich dazu entschlossen die mobilen Schwellenwerte von Lighthouse für die Lab-Daten zu hinterlegen.

Gauges für die drei Core Web Vitals (CWV) geben einen schnellen Überblick zum aktuellen CWV-Zustand der URL.

Docker-Upgrades (v1.2.0)

Bisher nutzte das Tool die Docker-Images von InfluxDB in der Version 2.0.4 und von Grafana in der Version 7.5.4 – da hat sich aber mittlerweile ein bisschen was getan. Bei InfluxDB ist nicht sooo viel passiert, da wird nun 2.0.7 eingesetzt. Grafana hingegen hat den Sprung zur v8 gemacht, zwischendurch auch noch mehrere 7.5.x-Versionen veröffentlich und ist inzwischen auch schon bei 8.1.0 angekommen. Einmal habe ich einen Projektstand genommen und Version für Version ein Upgrade gemacht, Container gestartet und geschaut, ob noch alles funktioniert. Beim Versionswechsel zur v8 liefen einige Migrations-Schritte, aber das war alles automatisch. Dann habe ich mir nochmal einen zweiten Projektstand genommen und von den alten Versionen (2.0.4 und 7.5.4) das Upgrade direkt zu den neuesten Versionen (2.0.7 und 8.1.0) vollzogen. Auch das machte keine Probleme, es liefen wieder die Grafana-Migrations-Schritte und alles funktionierte weiter, weshalb ich jetzt auch keine neue Major-Version bei mir vergeben habe.

Dazu kam noch ein kleiner Fix in dieser Version mit. Mir war aufgefallen, dass Grafana zu recht anmerkte, dass es keinen Zugriff auf Provisioning-Verzeichnisse für Plugins und Notifiers hatte, die hatte ich bisher schlicht vergessen anzulegen.

Das Tool ist selbstverständlich Open Source und steht via GitHub bereit.